# Copyright (c) 2007 oc2pus # Copyright (c) 2007 Hans de Goede # This file and all modifications and additions to the pristine # package are under the same license as the package itself. # # Please submit bugfixes or comments to us at the above email addresses Name: sdljava Version: 0.9.1 Release: 7%{?dist} Summary: Java binding to the SDL API Group: System Environment/Libraries 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 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: ftgl-devel glew-devel SDL-devel SDL_gfx-devel SDL_image-devel BuildRequires: SDL_mixer-devel SDL_ttf-devel java-devel java-gcj-compat-devel BuildRequires: ant xml-commons-apis swig bsh jdom # Build fails on fedora 8 test 2 when not using icedtea :( Note it runs fine # with gcj (bug 297961). BuildRequires: java-1.7.0-icedtea-devel # icedtea is i386 and x86_64 ExclusiveArch: %{ix86} x86_64 Requires: bsh jdom Requires(post): /sbin/ldconfig Requires(postun): /sbin/ldconfig %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/Libraries Requires: %{name} = %{version}-%{release} %description javadoc Javadoc for %{name}. %package demo Summary: Some examples for %{name} Group: Development/Libraries Requires: %{name} = %{version}-%{release} Requires: /usr/share/fonts/dejavu/DejaVuSans.ttf Requires: /usr/share/fonts/dejavu/DejaVuSans-Bold.ttf Requires: /usr/share/fonts/dejavu/DejaVuSans-Oblique.ttf Requires: /usr/share/fonts/dejavu/DejaVuSans-BoldOblique.ttf Requires: jpackage-utils %description demo Demonstrations and samples for %{name}. %prep %setup -q %patch0 -p1 -z .regen iconv -f ISO_8859-2 -t UTF8 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 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 rm -rf $RPM_BUILD_ROOT # 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} mkdir -p $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} # jars install -m 644 lib/%{name}.jar \ $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar ln -s %{name}-%{version}.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} ln -s %{name}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{name} # 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} ln -s ../../fonts/dejavu/DejaVuSans.ttf \ $RPM_BUILD_ROOT%{_datadir}/%{name}/testdata/arial.ttf ln -s ../../fonts/dejavu/DejaVuSans-Bold.ttf \ $RPM_BUILD_ROOT%{_datadir}/%{name}/testdata/arialbd.ttf ln -s ../../fonts/dejavu/DejaVuSans-Oblique.ttf \ $RPM_BUILD_ROOT%{_datadir}/%{name}/testdata/ariali.ttf ln -s ../../fonts/dejavu/DejaVuSans-BoldOblique.ttf \ $RPM_BUILD_ROOT%{_datadir}/%{name}/testdata/arialbi.ttf %{_bindir}/aot-compile-rpm %clean rm -rf $RPM_BUILD_ROOT %post /sbin/ldconfig if [ -x %{_bindir}/rebuild-gcj-db ]; then %{_bindir}/rebuild-gcj-db fi %postun /sbin/ldconfig if [ -x %{_bindir}/rebuild-gcj-db ]; then %{_bindir}/rebuild-gcj-db fi %post javadoc rm -f %{_javadocdir}/%{name} ln -s %{name}-%{version} %{_javadocdir}/%{name} %files %defattr(-,root,root,-) %doc README TODO docs/CHANGES_0_9_1 %{_javadir}/%{name}*.jar %{_libdir}/%{name} %{_libdir}/gcj/%{name} %files javadoc %defattr(-,root,root,-) %doc %{_javadocdir}/%{name}-%{version} %ghost %doc %{_javadocdir}/%{name} %files demo %defattr(-,root,root,-) %{_bindir}/%{name}-*.sh %{_datadir}/%{name}/testdata %changelog * Sun Dec 9 2007 Hans de Goede 0.9.1-7 - And the dejavu-fonts fontfile names changed back again (what fun) * Tue Nov 20 2007 Hans de Goede 0.9.1-6 - Adjust font symlinks in sdljava-demo package for fontfile name changes in dejavu-fonts (bz 388861) * Thu Sep 20 2007 Hans de Goede 0.9.1-5 - BuildRequire icedtea as building with gcj fails (bug 297961) * Wed Sep 19 2007 Hans de Goede 0.9.1-4 - Make all doc files UTF-8 * Mon Sep 17 2007 Hans de Goede 0.9.1-3 - Fix determination of gcc include path * Tue Sep 11 2007 Hans de Goede 0.9.1-2 - Dynamically determine gcc include path instead of hardcoding it, so that sdljava will build on other setups then devel-x86_64 too (oops). * Sat Sep 8 2007 Hans de Goede 0.9.1-1 - Adapted Packman spec file for Fedora * Mon Jun 18 2007 Toni Graffy - 0.9.1-0.pm.2 - rebuild with glew-1.3.6 * Sat Jun 16 2007 Toni Graffy - 0.9.1-0.pm.1 - initial build 0.9.1 - repacked as tar.bz2