--- 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}