%global namedreltag -RC-26 %global namedversion %{version}%{?namedreltag} Name: mp4parser Version: 1.0 Release: 0.1.RC.26%{?dist} Summary: MP4 Parser Project License: ASL 2.0 URL: https://code.google.com/p/mp4parser/ # sh mp4parser-create-tarball.sh < VERSION > Source0: %{name}-%{namedversion}-clean.tar.xz Source1: %{name}-create-tarball.sh BuildRequires: java-devel BuildRequires: mvn(org.aspectj:aspectjweaver) %if 0 BuildRequires: mvn(args4j:args4j) BuildRequires: mvn(com.google.android:android:1.6_r2) BuildRequires: mvn(com.googlecode.maven-gcu-plugin:maven-gcu-plugin:1.1) BuildRequires: mvn(com.zenjava:javafx-maven-plugin:1.5) BuildRequires: mvn(commons-lang:commons-lang) BuildRequires: mvn(org.aspectj:aspectjrt:1.7.3) BuildRequires: mvn(org.aspectj:aspectjtools:1.7.3) BuildRequires: mvn(org.codehaus.mojo:aspectj-maven-plugin:1.4) BuildRequires: mvn(org.eclipse.jetty:jetty-server:8.1.7.v20120910) BuildRequires: mvn(org.jdesktop.bsaf:bsaf:1.9.2) BuildRequires: mvn(xom:xom:1.2.5) %endif # Test deps BuildRequires: mvn(commons-codec:commons-codec) BuildRequires: mvn(commons-io:commons-io) BuildRequires: mvn(junit:junit) BuildRequires: maven-local BuildArch: noarch %description Provides a Java API for parsing MP4 files. %package isoparser Summary: A generic parser and writer for all ISO 14496 based files %description isoparser The isoparser API can read and write the MP4 file structure. It is a low level tool dealing with the so called boxes but it is as well as dealing with structure like tracks and movies. %package javadoc Summary: Javadoc for %{name} %description javadoc This package contains javadoc for %{name}. %prep %setup -q -n %{name}-%{namedversion} # cleanup find -name "*.jar" -print -delete find -name "*.class" -print -delete # Require xom:xom:1.2.5 %pom_disable_module examples # Require org.jdesktop.bsaf:bsaf:1.9.2 for isoviewer # Require xom:xom:1.2.5 for smooth-streaming-downloader # Require package com.sun.javafx com.zenjava:javafx-maven-plugin:1.5 for mp4-inspector %pom_disable_module tools # Remove com.google.code.maven-svn-wagon:maven-svn-wagon:1.4 %pom_xpath_remove "pom:project/pom:build/pom:extensions" isoparser %pom_remove_plugin :aspectj-maven-plugin isoparser # Disable android support %pom_remove_dep :android isoparser rm -r isoparser/src/main/java/com/googlecode/mp4parser/util/AndroidLogger.java sed -i 's|return new AndroidLogger(clz.getSimpleName());|throw new UnsupportedOperationException("AndroidLogger is not supported.");|' \ isoparser/src/main/java/com/googlecode/mp4parser/util/Logger.java %pom_xpath_set "pom:project/pom:dependencies/pom:dependency[pom:groupId = 'org.aspectj' ]/pom:artifactId" aspectjweaver isoparser %pom_remove_plugin :maven-source-plugin isoparser sed -i 's/\r//' isoparser/src/main/resources/*.txt cp -p isoparser/src/main/resources/LICENSE.txt . cp -p isoparser/src/main/resources/NOTICE.txt . %build # test skipped for unavailable test resources # remove for an more light weight source archive (~ 80MB Vs ~ 56KB) %mvn_file :isoparser isoparser %mvn_build -s -f %install %mvn_install %files -f .mfiles-%{name}-project %doc LICENSE.txt NOTICE.txt %files isoparser -f .mfiles-isoparser %doc LICENSE.txt NOTICE.txt %files javadoc -f .mfiles-javadoc %doc LICENSE.txt NOTICE.txt %changelog * Tue Sep 03 2013 gil cattaneo 1.0-0.1.RC.26 - update to 1.0-RC-26 * Fri Aug 30 2013 gil cattaneo 1.0-0.1.RC.25 - initial rpm