%define _libdir64 %{_prefix}/lib64 Name: libspectrum Version: 1.0.0 Release: 1 Summary: A library for reading spectrum emulator file formats Group: System Environment/Libraries License: GPLv2+ URL: http://fuse-emulator.sourceforge.net/libspectrum.php Source0: http://downloads.sourceforge.net/fuse-emulator/%{name}-%{version}.tar.gz Patch0: %{name}-%{version}-aix.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root BuildRequires: audiofile-devel >= 0.2.7-1 BuildRequires: bzip2 >= 1.0.2-4 BuildRequires: glib2-devel >= 2.8.1-3 BuildRequires: libgcrypt-devel >= 1.4.6-1 BuildRequires: zlib-devel >= 1.2.3-3 Requires: audiofile >= 0.2.7-1 Requires: bzip2 >= 1.0.2-4 Requires: glib2 >= 2.8.1-3 Requires: libgcrypt >= 1.4.6-1 Requires: zlib >= 1.2.3-3 %description A library for reading various spectrum emulator file formats. %package devel Summary: Development files for libspectrum Group: Development/Libraries Requires: %{name} = %{version}-%{release} Requires: audiofile-devel >= 0.2.7-1 Requires: bzip2 >= 1.0.2-4 Requires: glib2-devel >= 2.8.1-3 Requires: libgcrypt-devel >= 1.4.6-1 Requires: zlib-devel >= 1.2.3-3 %description devel Development files for libspectrum. %prep %setup -q %patch0 mkdir ../32bit mv * ../32bit mv ../32bit . mkdir 64bit cd 32bit && tar cf - . | (cd ../64bit ; tar xpf -) %build export CC="xlc_r" cd 64bit # first build the 64-bit version export OBJECT_MODE=64 export LDFLAGS="-L/opt/freeware/lib64 -L/opt/freeware/lib -Wl,-blibpath:/opt/freeware/lib64:/opt/freeware/lib:/usr/lib:/lib -Wl,-bmaxdata:0x80000000" ./configure \ --prefix=%{_prefix} \ --libdir=%{_libdir64} \ --mandir=%{_mandir} \ --enable-shared --disable-static make %{?_smp_mflags} cd ../32bit # now build the 32-bit version export OBJECT_MODE=32 export LDFLAGS="-L/opt/freeware/lib -Wl,-blibpath:/opt/freeware/lib:/usr/lib:/lib -Wl,-bmaxdata:0x80000000" ./configure \ --prefix=%{_prefix} \ --mandir=%{_mandir} \ --enable-shared --disable-static make %{?_smp_mflags} %install [ "${RPM_BUILD_ROOT}" != "/" ] && rm -rf ${RPM_BUILD_ROOT} cd 64bit export OBJECT_MODE=64 make DESTDIR=${RPM_BUILD_ROOT} install cd ../32bit export OBJECT_MODE=32 make DESTDIR=${RPM_BUILD_ROOT} install ( cd ${RPM_BUILD_ROOT}%{_libdir64} for f in *.a ; do /usr/bin/ar -X64 -x ${f} done cd ${RPM_BUILD_ROOT}%{_libdir} for f in *.a ; do /usr/bin/ar -X32 -x ${f} done ) # add the 64-bit shared objects to the shared libraries containing already the # 32-bit shared objects /usr/bin/ar -X64 -q ${RPM_BUILD_ROOT}%{_libdir}/%{name}.a ${RPM_BUILD_ROOT}%{_libdir64}/%{name}.so* ( cd ${RPM_BUILD_ROOT} for dir in include lib lib64 do mkdir -p usr/${dir} cd usr/${dir} ln -sf ../..%{_prefix}/${dir}/* . cd - done ) %clean [ "${RPM_BUILD_ROOT}" != "/" ] && rm -rf ${RPM_BUILD_ROOT} %files %defattr(-,root,system) %doc 32bit/README 32bit/ChangeLog 32bit/THANKS 32bit/AUTHORS 32bit/COPYING %{_libdir}/*.a %{_libdir}/*.so* %{_libdir64}/*.so* %{_mandir}/man?/* /usr/lib/*.a /usr/lib/*.so* /usr/lib64/*.so* %files devel %defattr(-,root,system) %doc 32bit/doc/libspectrum.txt %{_includedir}/* %{_libdir}/*.la %{_libdir64}/*.la /usr/include/* /usr/lib/*.la /usr/lib64/*.la %changelog * Mon Aug 20 2012 Michael Perzl - 1.0.0-1 - first version for AIX V5.1 and higher