[gap] Further fixes for the -m32/-m64 issue.

Jerry James jjames at fedoraproject.org
Mon Oct 22 22:05:53 UTC 2012


commit eceb21d973abbbce4874f487d630cbbf27d01935
Author: Jerry James <jamesjer at betterlinux.com>
Date:   Mon Oct 22 16:05:07 2012 -0600

    Further fixes for the -m32/-m64 issue.
    
    Many packages need the primitive, small, or transitive groups; collapse them
    all into the -libs subpackage so they are always available.
    
    Provide sysinfo-default[32|64], as required by some packages.
    
    Provide symbolic links to gac and gap from the bin directory, as required by
    some packages.

 gap.spec |   93 +++++++++++++++++++++----------------------------------------
 1 files changed, 32 insertions(+), 61 deletions(-)
---
diff --git a/gap.spec b/gap.spec
index 7c0d2a2..631741c 100644
--- a/gap.spec
+++ b/gap.spec
@@ -6,7 +6,7 @@
 
 Name:           gap
 Version:        %(echo %upstreamver | sed -r "s/r|p/./g")
-Release:        2%{?dist}
+Release:        3%{?dist}
 Summary:        Computational discrete algebra
 
 Group:          Applications/Engineering
@@ -45,9 +45,6 @@ BuildRequires:  xemacs
 Requires:       %{name}-libs = %{version}-%{release}
 Requires:       %{name}-core%{?_isa} = %{version}-%{release}
 Requires:       %{name}-online-help = %{version}-%{release}
-Requires:       %{name}-prim-groups = %{version}-%{release}
-Requires:       %{name}-small-groups = %{version}-%{release}
-Requires:       %{name}-trans-groups = %{version}-%{release}
 Requires:       meataxe
 
 %description
@@ -66,8 +63,17 @@ Summary:        Essential GAP libraries
 Group:          Applications/Engineering
 BuildArch:      noarch
 
+# These obsoletes and provides can be removed once Fedora 18 is EOL.
+Obsoletes:      %{name}-prim-groups < 4.5.6-3
+Provides:       %{name}-prim-groups = %{version}-%{release}
+Obsoletes:      %{name}-small-groups < 4.5.6-3
+Provides:       %{name}-small-groups = %{version}-%{release}
+Obsoletes:      %{name}-trans-groups < 4.5.6-3
+Provides:       %{name}-trans-groups = %{version}-%{release}
+
 %description libs
-This package contains the essential GAP libraries: lib and grp.
+This package contains the essential GAP libraries: lib and grp, as well as
+the primitive, small, and transitive group databases.
 
 %package core
 Summary:        GAP core components
@@ -102,35 +108,6 @@ Requires:       gmp-devel%{?_isa}
 This package contains the GAP compiler (gac) and the header files necessary
 for developing GAP programs.
 
-%package prim-groups
-Summary:        Database of primitive groups for GAP
-Group:          Applications/Engineering
-Requires:       %{name}-core = %{version}-%{release}
-BuildArch:      noarch
-
-%description prim-groups
-This package contains a database of primitive groups for GAP.
-
-%package small-groups
-Summary:        Database of small groups for GAP
-Group:          Applications/Engineering
-Requires:       %{name}-core = %{version}-%{release}
-BuildArch:      noarch
-
-%description small-groups
-This package contains a database of groups of small order for GAP.  The
-database includes the group data and identification routines for groups
-of order up to 2000.
-
-%package trans-groups
-Summary:        Database of transitive groups for GAP
-Group:          Applications/Engineering
-Requires:       %{name}-core = %{version}-%{release}
-BuildArch:      noarch
-
-%description trans-groups
-This package contains a database of transitive groups for GAP.
-
 %package vim
 Summary:        Edit GAP files with VIM
 Group:          Applications/Engineering
@@ -197,8 +174,11 @@ sed -re "s|(gp_cv_prog_cc_cdynoptions=)\"-fpic -Wall -O2|\1\"\$RPM_OPT_FLAGS -fP
     -e "/sigsetjmp/,\$s|(ac_fn_c_check_func.*)ac_func(.*)|\1{ac_func/sigsetjmp/__sigsetjmp}\2|" \
     -i cnf/configure.out
 
-# these flags should come form the RPM_OPT_FLAGS for the platform
-sed -i.bak 's/-m[36][24]//' configure
+# The -m32 and -m64 flags are not available on all platforms, and we provide
+# them in optflags when they are needed.
+sed -e 's/GMP_CFLAGS="-m${ABI}"/GMP_CFLAGS=""/' \
+    -e 's/ABI_CFLAGS="-m[[:digit:]]*"/ABI_CFLAGS=""/' \
+    -i configure
 
 # Get the README
 cp -p %{SOURCE1} README.fedora
@@ -255,7 +235,7 @@ cp -a grp lib prim small trans tst $RPM_BUILD_ROOT%{gapdir}
 cp -p etc/debug* $RPM_BUILD_ROOT%{gapdir}/etc
 
 # Install the arch-specific files
-cp -p sysinfo.gap $RPM_BUILD_ROOT%{gapdir}
+cp -a sysinfo.gap* $RPM_BUILD_ROOT%{gapdir}
 
 # Create the system workspace, initially empty
 mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/lib/%{name}
@@ -269,6 +249,8 @@ cp -p bin/$GAParch/config.h $RPM_BUILD_ROOT%{gapdir}/bin/$GAParch
 cp -p bin/$GAParch/*.o $RPM_BUILD_ROOT%{gapdir}/bin/$GAParch
 rm -f bin/$GAParch/extern/Makefile
 cp -a bin/$GAParch/extern $RPM_BUILD_ROOT%{gapdir}/bin/$GAParch
+ln -s %{_bindir}/gac $RPM_BUILD_ROOT%{gapdir}/bin/$GAParch/gac
+ln -s %{_bindir}/gap $RPM_BUILD_ROOT%{gapdir}/bin/$GAParch/gap
 
 # Make an empty directory to hold the GAP packages
 mkdir -p $RPM_BUILD_ROOT%{gapdir}/pkg
@@ -341,18 +323,6 @@ touch --no-create %{icondir} >&/dev/null ||:
 %{_bindir}/gtk-update-icon-cache %{icondir} >&/dev/null ||:
 update-desktop-database %{_datadir}/applications &>/dev/null ||:
 
-%posttrans prim-groups -p %{_bindir}/update-gap-workspace
-
-%postun prim-groups -p %{_bindir}/update-gap-workspace
-
-%posttrans small-groups -p %{_bindir}/update-gap-workspace
-
-%postun small-groups -p %{_bindir}/update-gap-workspace
-
-%posttrans trans-groups -p %{_bindir}/update-gap-workspace
-
-%postun trans-groups -p %{_bindir}/update-gap-workspace
-
 %check
 sed -e "s|^GAP_DIR=.*|GAP_DIR=$PWD|" \
     -e "s|\$GAP_DIR/bin/\$GAP_PRG|$PWD/bin/\$GAP_PRG|" \
@@ -364,16 +334,19 @@ make testinstall
 # No files in the metapackage
 
 %files libs
-%doc etc/GPL
+%doc etc/GPL small/README
 %dir %{gapdir}
 %{gapdir}/grp/
 %{gapdir}/lib/
+%{gapdir}/prim/
+%{gapdir}/small/
+%{gapdir}/trans/
 
 %files core
 %doc README.fedora
 %{_bindir}/gap
 %{_bindir}/update-gap-workspace
-%{gapdir}/sysinfo.gap
+%{gapdir}/sysinfo.gap*
 %{gapdir}/pkg/
 %{_mandir}/man1/gap.1*
 %{_mandir}/man1/update-gap-workspace.1*
@@ -394,16 +367,6 @@ make testinstall
 %{_mandir}/man1/gac.1*
 %config(noreplace) %{_sysconfdir}/rpm/macros.%{name}
 
-%files prim-groups
-%{gapdir}/prim/
-
-%files small-groups
-%doc small/README
-%{gapdir}/small/
-
-%files trans-groups
-%{gapdir}/trans/
-
 %files vim
 %{gapdir}/etc/
 %{_datadir}/vim/vimfiles/ftdetect/gap.vim
@@ -427,6 +390,14 @@ make testinstall
 %{_xemacs_sitelispdir}/gap*.el
 
 %changelog
+* Mon Oct 22 2012 Jerry James <loganjerry at gmail.com> - 4.5.6-3
+- Further fixes for the -m32/-m64 issue
+- Many packages need the primitive, small, or transitive groups; collapse them
+  all into the -libs subpackage so they are always available
+- Provide sysinfo-default[32|64], as required by some packages
+- Provide symbolic links to gac and gap from the bin directory, as required by
+  some packages
+
 * Sat Oct 20 2012 Peter Robinson <pbrobinson at fedoraproject.org>	4.5.6-2
 - -m32/-m64 should come from RPM_OPT_FLAGS. Fix build issues on non x86 arches
 


More information about the scm-commits mailing list