SUNWgnome-media.spec
changeset 17833 27f2a3870326
parent 17537 875b94a3af5c
child 17843 45e8ca791cfc
--- a/SUNWgnome-media.spec	Tue Apr 13 15:37:14 2010 +0000
+++ b/SUNWgnome-media.spec	Wed Apr 14 00:14:13 2010 +0000
@@ -13,6 +13,14 @@
 
 %define with_hal %(pkginfo -q SUNWhal && echo 1 || echo 0)
 
+%ifarch amd64 sparcv9
+%include arch64.inc
+%use gst64 = gst.spec
+%use gst_plugins_base64 = gst-plugins-base.spec
+%use gst_plugins_good64 = gst-plugins-good.spec
+%endif
+
+%include base.inc
 %use gst = gst.spec
 %use gst_plugins_base = gst-plugins-base.spec
 %use gst_plugins_good = gst-plugins-good.spec
@@ -39,14 +47,14 @@
 BuildRequires: SUNWlibtheora-devel
 BuildRequires: SUNWogg-vorbis-devel
 BuildRequires: SUNWPython-extra
-BuildRequires: SUNWliboil-devel
+#BuildRequires: SUNWliboil-devel
 BuildRequires: SUNWgnome-audio-devel
 BuildRequires: SUNWgnome-config-devel
 BuildRequires: SUNWgnome-vfs-devel
 BuildRequires: SUNWjpg-devel
 BuildRequires: SUNWpng-devel
 BuildRequires: SUNWlibsoup-devel
-BuildRequires: SUNWlibvisual-devel
+#BuildRequires: SUNWlibvisual-devel
 BuildRequires: SUNWaalib
 Requires: SUNWgtk2
 Requires: SUNWgnome-libs
@@ -59,7 +67,7 @@
 Requires: SUNWflac
 Requires: SUNWlibtheora
 Requires: SUNWogg-vorbis
-Requires: SUNWliboil
+#Requires: SUNWliboil
 Requires: SUNWlibms
 Requires: SUNWgnome-audio
 Requires: SUNWgnome-config
@@ -72,7 +80,7 @@
 Requires: SUNWpng
 Requires: SUNWxorg-clientlibs
 Requires: SUNWzlib
-Requires: SUNWlibvisual
+#Requires: SUNWlibvisual
 Requires: SUNWdesktop-cache
 Requires: SUNWaalib
 %if %with_hal
@@ -100,9 +108,19 @@
 %prep
 rm -rf %name-%version
 mkdir %name-%version
-%gst.prep -d %name-%version
-%gst_plugins_base.prep -d %name-%version
-%gst_plugins_good.prep -d %name-%version
+
+%ifarch amd64 sparcv9
+mkdir %name-%version/%_arch64
+%gst64.prep -d %name-%version/%_arch64
+%gst_plugins_base64.prep -d %name-%version/%_arch64
+%gst_plugins_good64.prep -d %name-%version/%_arch64
+%endif
+
+mkdir %name-%version/%{base_arch}
+%gst.prep -d %name-%version/%{base_arch}
+%gst_plugins_base.prep -d %name-%version/%{base_arch}
+%gst_plugins_good.prep -d %name-%version/%{base_arch}
+
 cd %{_builddir}/%name-%version
 gzcat %SOURCE0 | tar xf -
 
@@ -113,30 +131,65 @@
 export echo="/usr/bin/echo"
 export RM="/usr/bin/rm"
 
-# Note that including  __STDC_VERSION n CFLAGS for gnome-media breaks the S9
-# build for gstreamer,  gst-plugins, and gnome-media, so not including for them.
-#
-export CFLAGS="%optflags -I/usr/sfw/include -DANSICPP"
+export ACLOCAL_FLAGS="-I %{_datadir}/aclocal"
+
+%ifarch amd64 sparcv9
+export CFLAGS="%optflags64 -I/usr/sfw/include -DANSICPP"
 export RPM_OPT_FLAGS="$CFLAGS"
-export ACLOCAL_FLAGS="-I %{_datadir}/aclocal"
-export LDFLAGS="%_ldflags"
+export LDFLAGS="$FLAG64"
+export PKG_CONFIG_PATH="/usr/lib/%{_arch64}/pkgconfig:%{_pkg_config_path}"
 
-%gst.build -d %name-%version
+%gst64.build -d %name-%version/%_arch64
 
 # Need /usr/X11/lib and /usr/X11/include to gain access to libXv.so
 # needed for xvimagesink.
 #
-export PKG_CONFIG_PATH=%{_builddir}/%name-%version/gstreamer-%{gst.version}/pkgconfig:%{_pkg_config_path}
+export CFLAGS="%optflags64 -I/usr/sfw/include -I/usr/X11/include -DANSICPP"
+export LDFLAGS="$FLAG64 -L/usr/X11/lib/amd64 -R/usr/X11/lib/amd64 -lresolv"
+export PKG_CONFIG_PATH="%{_builddir}/%name-%version/%{_arch64}/gstreamer-%{gst.version}/pkgconfig:/usr/lib/%{_arch64}/pkgconfig:%{_pkg_config_path}"
+
+# Need to disable building with these libraries since there is no 64-bit
+# version available yet.
+#
+export GST_EXTRA_CONFIG="--disable-gnome_vfs"
+
+%gst_plugins_base64.build -d %name-%version/%_arch64
+
+export CFLAGS="%optflags64 -I/usr/sfw/include -DANSICPP"
+export LDFLAGS="$FLAG64 -L/usr/X11/lib/amd64 -R/usr/X11/lib/amd64"
+export PKG_CONFIG_PATH="%{_builddir}/%name-%version/%{_arch64}/gstreamer-%{gst.version}/pkgconfig:%{_builddir}/%name-%version/%{_arch64}/gst-plugins-base-%{gst_plugins_base.version}/pkgconfig:/usr/lib/%{_arch64}/pkgconfig:%{_pkg_config_path}"
+
+# Need to disable building with these libraries since there is no 64-bit
+# version available yet.
+#
+export GST_EXTRA_CONFIG="--disable-soup"
+
+%gst_plugins_good64.build -d %name-%version/%_arch64
+
+export GST_EXTRA_CONIFG=""
+%endif
+
+export CFLAGS="%optflags -I/usr/sfw/include -DANSICPP"
+export RPM_OPT_FLAGS="$CFLAGS"
+export LDFLAGS="%_ldflags"
+export PKG_CONFIG_PATH="%{_pkg_config_path}"
+
+%gst.build -d %name-%version/%{base_arch}
+
+# Need /usr/X11/lib and /usr/X11/include to gain access to libXv.so
+# needed for xvimagesink.
+#
 export CFLAGS="%optflags -I/usr/sfw/include -I/usr/X11/include -DANSICPP"
 export LDFLAGS="%_ldflags -L/usr/X11/lib -R/usr/X11/lib -lresolv"
+export PKG_CONFIG_PATH="%{_builddir}/%name-%version/%{base_arch}/gstreamer-%{gst.version}/pkgconfig:%{_pkg_config_path}"
 
-%gst_plugins_base.build -d %name-%version
+%gst_plugins_base.build -d %name-%version/%{base_arch}
 
-export PKG_CONFIG_PATH=%{_builddir}/%name-%version/gstreamer-%{gst.version}/pkgconfig:%{_pkg_config_path}:%{_builddir}/%name-%version/gst-plugins-base-%{gst_plugins_base.version}/pkgconfig:%{_pkg_config_path}
 export CFLAGS="%optflags -I/usr/sfw/include -DANSICPP"
 export LDFLAGS="%_ldflags"
+export PKG_CONFIG_PATH="%{_builddir}/%name-%version/%{base_arch}/gstreamer-%{gst.version}/pkgconfig:%{_builddir}/%name-%version/%{base_arch}/gst-plugins-base-%{gst_plugins_base.version}/pkgconfig:%{_pkg_config_path}"
 
-%gst_plugins_good.build -d %name-%version
+%gst_plugins_good.build -d %name-%version/%{base_arch}
 
 %install
 # There seems to be an issue with the version of libtool that GStreamer is
@@ -147,9 +200,36 @@
 
 rm -rf $RPM_BUILD_ROOT
 
-%gst.install -d %name-%version
-%gst_plugins_base.install -d %name-%version
-%gst_plugins_good.install -d %name-%version
+%ifarch amd64 sparcv9
+# Rebuilding the gobject-introspection files requires resetting.
+export CFLAGS="%optflags64 -DANSICPP"
+export LDFLAGS="$FLAG64"
+
+%gst64.install -d %name-%version/%_arch64
+%gst_plugins_base64.install -d %name-%version/%_arch64
+%gst_plugins_good64.install -d %name-%version/%_arch64
+
+mkdir -p $RPM_BUILD_ROOT%{_libdir}/%{_arch64}/gstreamer-%{gst_minmaj}/tools
+cd $RPM_BUILD_ROOT%{_bindir}/%{_arch64}
+for prog in gst-feedback gst-inspect gst-launch gst-typefind \
+            gst-xmlinspect gst-xmllaunch; do
+  mv $prog-%{gst_minmaj} ../../lib/%{_arch64}/gstreamer-%{gst_minmaj}/tools
+  rm -f $prog
+  ln -s ../../lib/%{_arch64}/gstreamer-%{gst_minmaj}/tools/$prog-%{gst_minmaj} $prog
+done
+
+perl -pi -e 's,^toolsdir=.*,toolsdir=\${exec_prefix}/%{_arch64}/lib/gstreamer-%{gst_minmaj}/tools,' $RPM_BUILD_ROOT%{_libdir}/%{_arch64}/pkgconfig/gstreamer-%{gst_minmaj}.pc
+%endif
+
+cd %{_builddir}
+
+# Rebuilding the gobject-introspection files requires resetting.
+export CFLAGS="%optflags -DANSICPP"
+export LDFLAGS="%_ldflags"
+
+%gst.install -d %name-%version/%{base_arch}
+%gst_plugins_base.install -d %name-%version/%{base_arch}
+%gst_plugins_good.install -d %name-%version/%{base_arch}
 
 mkdir -p $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{gst_minmaj}/tools
 cd $RPM_BUILD_ROOT%{_bindir}
@@ -170,10 +250,16 @@
 chmod 755 $RPM_BUILD_ROOT%{_mandir}/man3/*.3
 chmod 755 $RPM_BUILD_ROOT%{_mandir}/man5/*.5
 
-rm -f $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{gst_minmaj}/*.la
-rm -f $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{gst_minmaj}/*.a
+find $RPM_BUILD_ROOT%{_libdir} -type f -name "*.la" -exec rm -f {} ';'
+find $RPM_BUILD_ROOT%{_libdir} -type f -name "*.a" -exec rm -f {} ';'
 rm -rf $RPM_BUILD_ROOT%{_datadir}/doc
 
+# Remove gobject-introspection files.
+#
+rm -rf $RPM_BUILD_ROOT%{_libdir}/girepository-1.0
+rm -rf $RPM_BUILD_ROOT%{_libdir}/%{_arch64}/girepository-1.0
+rm -rf $RPM_BUILD_ROOT%{_datadir}/gir-1.0 
+
 # RBAC related
 mkdir $RPM_BUILD_ROOT/etc/security
 
@@ -210,27 +296,36 @@
 %{_libdir}/gstreamer-%{gst_minmaj}/lib*.so*
 %{_libdir}/gstreamer-%{gst_minmaj}/tools
 %{_libdir}/gstreamer-%{gst_minmaj}/gst-plugin-scanner
+%ifarch amd64 sparcv9
+%dir %attr(0755, root, bin) %{_bindir}/%{_arch64}
+%{_bindir}/%{_arch64}/gst*
+%dir %attr (0755, root, bin) %{_libdir}/%{_arch64}
+%{_libdir}/%{_arch64}/libgst*.so*
+%{_libdir}/%{_arch64}/gstreamer-%{gst_minmaj}/lib*.so*
+%{_libdir}/%{_arch64}/gstreamer-%{gst_minmaj}/tools
+%{_libdir}/%{_arch64}/gstreamer-%{gst_minmaj}/gst-plugin-scanner
+%endif
 %dir %attr (0755, root, sys) %{_datadir}
-%doc gstreamer-%{gst.version}/AUTHORS
-%doc gstreamer-%{gst.version}/README
-%doc(bzip2) gstreamer-%{gst.version}/COPYING
-%doc(bzip2) gstreamer-%{gst.version}/NEWS
-%doc(bzip2) gstreamer-%{gst.version}/ChangeLog
-%doc(bzip2) gstreamer-%{gst.version}/common/ChangeLog
-%doc gst-plugins-base-%{gst_plugins_base.version}/AUTHORS
-%doc gst-plugins-base-%{gst_plugins_base.version}/README
-%doc(bzip2) gst-plugins-base-%{gst_plugins_base.version}/COPYING
-%doc(bzip2) gst-plugins-base-%{gst_plugins_base.version}/COPYING.LIB
-%doc(bzip2) gst-plugins-base-%{gst_plugins_base.version}/NEWS
-%doc(bzip2) gst-plugins-base-%{gst_plugins_base.version}/ChangeLog 
-%doc(bzip2) gst-plugins-base-%{gst_plugins_base.version}/common/ChangeLog
-%doc gst-plugins-good-%{gst_plugins_good.version}/AUTHORS
-%doc gst-plugins-good-%{gst_plugins_good.version}/README
-%doc(bzip2) gst-plugins-good-%{gst_plugins_good.version}/COPYING
-%doc(bzip2) gst-plugins-good-%{gst_plugins_good.version}/NEWS
-%doc(bzip2) gst-plugins-good-%{gst_plugins_good.version}/ChangeLog 
-%doc(bzip2) gst-plugins-good-%{gst_plugins_good.version}/common/ChangeLog
-%doc(bzip2) gst-plugins-good-%{gst_plugins_good.version}/docs/random/ChangeLog-0.8
+%doc %{base_arch}/gstreamer-%{gst.version}/AUTHORS
+%doc %{base_arch}/gstreamer-%{gst.version}/README
+%doc(bzip2) %{base_arch}/gstreamer-%{gst.version}/COPYING
+%doc(bzip2) %{base_arch}/gstreamer-%{gst.version}/NEWS
+%doc(bzip2) %{base_arch}/gstreamer-%{gst.version}/ChangeLog
+%doc(bzip2) %{base_arch}/gstreamer-%{gst.version}/common/ChangeLog
+%doc %{base_arch}/gst-plugins-base-%{gst_plugins_base.version}/AUTHORS
+%doc %{base_arch}/gst-plugins-base-%{gst_plugins_base.version}/README
+%doc(bzip2) %{base_arch}/gst-plugins-base-%{gst_plugins_base.version}/COPYING
+%doc(bzip2) %{base_arch}/gst-plugins-base-%{gst_plugins_base.version}/COPYING.LIB
+%doc(bzip2) %{base_arch}/gst-plugins-base-%{gst_plugins_base.version}/NEWS
+%doc(bzip2) %{base_arch}/gst-plugins-base-%{gst_plugins_base.version}/ChangeLog 
+%doc(bzip2) %{base_arch}/gst-plugins-base-%{gst_plugins_base.version}/common/ChangeLog
+%doc %{base_arch}/gst-plugins-good-%{gst_plugins_good.version}/AUTHORS
+%doc %{base_arch}/gst-plugins-good-%{gst_plugins_good.version}/README
+%doc(bzip2) %{base_arch}/gst-plugins-good-%{gst_plugins_good.version}/COPYING
+%doc(bzip2) %{base_arch}/gst-plugins-good-%{gst_plugins_good.version}/NEWS
+%doc(bzip2) %{base_arch}/gst-plugins-good-%{gst_plugins_good.version}/ChangeLog 
+%doc(bzip2) %{base_arch}/gst-plugins-good-%{gst_plugins_good.version}/common/ChangeLog
+%doc(bzip2) %{base_arch}/gst-plugins-good-%{gst_plugins_good.version}/docs/random/ChangeLog-0.8
 %dir %attr (0755, root, other) %{_datadir}/doc
 %dir %attr (0755, root, other) %{_datadir}/gstreamer-0.10
 %{_datadir}/gstreamer-0.10/*
@@ -252,6 +347,11 @@
 %dir %attr (0755, root, bin) %{_libdir}
 %dir %attr (0755, root, other) %{_libdir}/pkgconfig
 %{_libdir}/pkgconfig/*
+%ifarch amd64 sparcv9
+%dir %attr (0755, root, bin) %{_libdir}/%{_arch64}
+%dir %attr (0755, root, other) %{_libdir}/%{_arch64}/pkgconfig
+%{_libdir}/%{_arch64}/pkgconfig/*
+%endif
 %dir %attr (0755, root, bin) %{_includedir}
 %{_includedir}/gstreamer-%{gst_minmaj}/gst
 %dir %attr (0755, root, sys) %{_datadir}