Name: sdljava Version: 0.9.1 Release: %mkrel 18 Summary: Java binding to the SDL API Group: Development/Java License: LGPLv2+ Url: http://sdljava.sourceforge.net/ # this is http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz # with the included Microsoft Copyrighted Arial fonts removed Source0: %{name}-%{version}.tar.gz Source1: %{name}-runtest.sh Patch0: sdljava-0.9.1-regen.patch Patch1: sdljava-0.9.1-ftgl213.patch Patch2: sdljava-0.9.1-ruby19.patch BuildRequires: ftgl-devel glew-devel SDL-devel SDL_gfx-devel SDL_image-devel BuildRequires: SDL_mixer-devel SDL_ttf-devel java-devel jpackage-utils BuildRequires: java-javadoc ant xml-commons-apis swig bsh jdom ruby fonts-ttf-dejavu Requires: bsh jdom Requires: fonts-ttf-dejavu %description sdljava is a Java binding to the SDL API being developed by Ivan Ganza. sdljava provides the ability to write games and other applications from the java programming language. sdljava is designed to be fast, efficient and easy to use. %package javadoc Summary: Javadoc for %{name} Group: Development/Java BuildArch: noarch Requires: %{name} = %{version}-%{release} %description javadoc Javadoc for %{name}. %package demo Summary: Some examples for %{name} Group: Development/Java BuildArch: noarch Requires: %{name} = %{version}-%{release} Requires: fonts-ttf-dejavu Requires: java jpackage-utils %description demo Demonstrations and samples for %{name}. %prep %setup -q %patch0 -p1 -z .regen %patch1 -p1 %patch2 -p1 # Newer ftgl no longer exports the FTFace class rm src/org/gljava/opengl/ftgl/FTFace.java iconv -f ISO_8859-2 -t UTF8 docs/CHANGES_0_9_1 > docs/CHANGES_0_9_1.tmp touch -r docs/CHANGES_0_9_1 docs/CHANGES_0_9_1.tmp mv docs/CHANGES_0_9_1.tmp docs/CHANGES_0_9_1 # patch in gcc include path so that swig can find it GCC_PATH=`gcc -print-search-dirs | grep install | cut -f 2 -d " "` sed -i "s#@GCC_INCLUDE_PATH@#$GCC_PATH/include#g" \ etc/build/linux/Makefile \ etc/build/gljava/linux/Makefile \ etc/build/gljava/linux/ftgl/Makefile # adjust testdata path in demos find ./testsrc -name '*.java' | xargs sed -i \ -e 's|testdata|%{_datadir}/%{name}/testdata|g' # use system versions of bsh & jdom pushd lib rm *.jar ln -s /usr/share/java/jdom.jar . ln -s /usr/share/java/bsh.jar . popd # copy the Linux Makefiles into place cp etc/build/linux/Makefile src/sdljava/native cp etc/build/gljava/linux/Makefile src/org/gljava/opengl/native cp etc/build/gljava/linux/ftgl/Makefile src/org/gljava/opengl/native/ftgl # and remove the swig generated code so that it gets regenerated rm src/sdljava/native/SDL*_wrap.c src/sdljava/native/SDL_types.h rm src/org/gljava/opengl/native/glew_wrap.c %build # We must add -D__%{_arch}__ to swigs arguments as swig doesn't do that itself. # Special case ppc as the define is powerpc not ppc and both ppc and ppc64 # must be set for ppc64, also add -D__LONG_DOUBLE_128__ which works around # swig barfing on bits/stdlib-ldbl.h %ifarch ppc export ARCH_DEFINE="-D__powerpc__ -D__LONG_DOUBLE_128__" %endif %ifarch ppc64 export ARCH_DEFINE="-D__powerpc__ -D__powerpc64__ -D__LONG_DOUBLE_128__" %endif # special case ix86 as all of ix86 should define __i386__ %ifarch %{ix86} export ARCH_DEFINE="-D__i386__" %endif # All other archs if [ -z "$ARCH_DEFINE" ]; then export ARCH_DEFINE="-D__%{_arch}__" fi export JAVA_HOME=/usr/lib/jvm/java pushd src/sdljava/native make CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing -fPIC" make libsdljava_gfx.so CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing -fPIC" popd pushd src/org/gljava/opengl/native make CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing -fPIC" popd pushd src/org/gljava/opengl/native/ftgl make CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing -fPIC" popd ant jar javadoc %install # dirs mkdir -p $RPM_BUILD_ROOT%{_bindir} mkdir -p $RPM_BUILD_ROOT%{_libdir}/%{name} mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name} mkdir -p $RPM_BUILD_ROOT%{_javadir} # should be just %{_javadocdir}/%{name} but that is a ghosted symlink in older # versions and rpm does not grok replacing that with a dir mkdir -p $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} # jars install -m 644 lib/%{name}.jar \ $RPM_BUILD_ROOT%{_javadir}/%{name}.jar # native libraries install -m 755 lib/*.so $RPM_BUILD_ROOT%{_libdir}/%{name} # javadoc cp -pr docs/api/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} # demo scripts install -m 755 %{SOURCE1} $RPM_BUILD_ROOT%{_bindir} pushd bin rm runtest.sh for i in `ls -1 *.sh`; do sed -i -e 's|./runtest.sh|%{_bindir}/%{name}-runtest.sh|g' $i FN=`echo $i | awk 'BEGIN { FS="." }{ print $1 }'` install -m 755 $i $RPM_BUILD_ROOT%{_bindir}/%{name}-$FN.sh done popd #test data cp -a testdata $RPM_BUILD_ROOT%{_datadir}/%{name} rm -f $RPM_BUILD_ROOT%{_datadir}/%{name}/testdata/{arial,arialbd,ariali,arialbi}.ttf ln -s %_datadir/fonts/TTF/dejavu/DejaVuSans.ttf \ $RPM_BUILD_ROOT%{_datadir}/%{name}/testdata/arial.ttf ln -s %_datadir/fonts/dejavu/DejaVuSans-Bold.ttf \ $RPM_BUILD_ROOT%{_datadir}/%{name}/testdata/arialbd.ttf ln -s %_datadir/fonts/dejavu/DejaVuSans-Oblique.ttf \ $RPM_BUILD_ROOT%{_datadir}/%{name}/testdata/ariali.ttf ln -s %_datadir/fonts/dejavu/DejaVuSans-BoldOblique.ttf \ $RPM_BUILD_ROOT%{_datadir}/%{name}/testdata/arialbi.ttf %files %doc README TODO docs/CHANGES_0_9_1 %{_javadir}/%{name}.jar %{_libdir}/%{name} %files javadoc %doc %{_javadocdir}/%{name}-%{version} %files demo %{_bindir}/%{name}-*.sh %{_datadir}/%{name} %changelog * Mon Jan 14 2013 umeabot <umeabot> 0.9.1-18.mga3 + Revision: 381924 - Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild * Mon Jan 07 2013 dmorgan <dmorgan> 0.9.1-17.mga3 + Revision: 340594 - Fix build with ruby1.9 ( Fedora ) * Sun Nov 06 2011 dmorgan <dmorgan> 0.9.1-16.mga2 + Revision: 164251 - Fix link of fonts - Sync with fedora + gil <gil> - imported package sdljava