rpms/dietlibc/devel dietlibc.spec,1.4,1.5
Enrico Scholz (ensc)
fedora-extras-commits at redhat.com
Sun Mar 6 16:57:57 UTC 2005
Author: ensc
Update of /cvs/extras/rpms/dietlibc/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv9526
Modified Files:
dietlibc.spec
Log Message:
build the dynamic libs for x86, x86_64 and arm only
tabifyied the file
Index: dietlibc.spec
===================================================================
RCS file: /cvs/extras/rpms/dietlibc/devel/dietlibc.spec,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- dietlibc.spec 5 Mar 2005 21:10:21 -0000 1.4
+++ dietlibc.spec 6 Mar 2005 16:57:55 -0000 1.5
@@ -1,9 +1,9 @@
## $Id$
## This package understands the following switches:
-## --with cross ... enable crossbuild
-## --define crossarch <arch> ... set cross-architecture (only valid with
-## '--with cross'; defaults to 'arm-linux')
+## --with cross ... enable crossbuild
+## --define crossarch <arch> ... set cross-architecture (only valid with
+## '--with cross'; defaults to 'arm-linux')
## Fedora Extras specific customization below...
%global crossarch %{!?crossarch:arm-linux}%{?crossarch}
@@ -12,7 +12,26 @@
%global NAME dietlibc
%global do_crossbuild %{?_with_cross:1}%{!?_with_cross:0}
-%{!?release_func:%define release_func() %1%{?disttag}}
+%ifarch %ix86 x86_64 arm
+%global noncross_do_dyn 1
+%else
+%global noncross_do_dyn 0
+%endif
+
+%ifarch %ix86
+%global target_cpu i386
+%else
+%global target_cpu %_target_cpu
+%endif
+
+%global target_cpu %(test "%do_crossbuild" = 1 && echo %crossarch | sed -e 's!-.*!!' || echo %target_cpu)
+%global do_dyn %(test "%do_crossbuild" = 1 && case "%target_cpu" in (x86_86|arm|i?86) echo 1;; (*) echo 0;; esac || echo %noncross_do_dyn)
+%if %do_dyn
+%global with_dyn 1
+%endif
+
+
+%{!?release_func:%global release_func() %1%{?disttag}}
Summary: Small libc implementation
Name: %{?_with_cross:cross-%crossarch-}%NAME
@@ -26,11 +45,11 @@
Patch0: dietlibc-0.28-gcc4.patch
Patch1: dietlibc-0.28-setpriority.patch
BuildRoot: %_tmppath/%name-%version-buildroot
-Requires: dietlibc-lib = %version-%release
+%{?with_dyn:Requires: dietlibc-lib = %version-%release}
%if %do_crossbuild
-BuildRequires: dietlibc
-Requires: dietlibc = %version-%release
+BuildRequires: dietlibc
+Requires: dietlibc = %version-%release
%endif
@@ -61,18 +80,17 @@
sed -i -e 's!LD_RUN_PATH= !env -u LD_RUN_PATH !' Makefile
-%define basemakeflags prefix=%_libdir/dietlibc BINDIR=%_bindir MAN1DIR=%_mandir/man1 COMMENT=: %{!?_with_cross:CFLAGS="$RPM_OPT_FLAGS"}
-%define xtraflags %(echo CROSS=%{crossarch}- ARCH=$(echo %crossarch | sed -e 's!-.*!!'))
-%define makeflags %basemakeflags %{?_with_cross:%xtraflags}
+%define basemakeflags prefix=%_libdir/dietlibc BINDIR=%_bindir MAN1DIR=%_mandir/man1 COMMENT=: %{!?_with_cross:CFLAGS="$RPM_OPT_FLAGS"}
+%define makeflags %basemakeflags %{?_with_cross:CROSS=%crossarch- ARCH=%target_cpu}
%build
%if %do_crossbuild
- mkdir bin-%_arch
+ mkdir -p bin-%_arch
diet gcc diet.c -DDIETHOME=\"`pwd`\" -DVERSION=\"X\" -o bin-%_arch/diet
%endif
-%__make %makeflags all dyn %{?_smp_mflags}
+%__make %makeflags all %{?with_dyn:dyn} %{?_smp_mflags}
@@ -81,13 +99,14 @@
%__install -d -m755 $RPM_BUILD_ROOT/etc
%__make %makeflags DESTDIR=$RPM_BUILD_ROOT install
+
%if !%do_crossbuild
ln -s lib-%_arch ${RPM_BUILD_ROOT}%_libdir/dietlibc/lib-%_arch-%_vendor
%endif
%if %do_crossbuild
rm -rf ${RPM_BUILD_ROOT}%_libdir/dietlibc/include \
- ${RPM_BUILD_ROOT}%_mandir
+ ${RPM_BUILD_ROOT}%_mandir
%endif
@@ -96,7 +115,7 @@
%files
%defattr(-,root,root,-)
-%exclude %_libdir/dietlibc/*/*.so
+%{?with_dyn:%exclude %_libdir/dietlibc/*/*.so}
%if %do_crossbuild
%_libdir/dietlibc/lib-*
@@ -108,14 +127,14 @@
%_libdir/dietlibc
%endif
-
+%if %do_dyn
%files lib
%defattr(-,root,root,-)
%config(noreplace) %_sysconfdir/*
%dir %_libdir/dietlibc
%dir %_libdir/dietlibc/lib-*
-%_libdir/dietlibc/lib-%_arch/*.so
-
+%_libdir/dietlibc/lib-%target_cpu/*.so
+%endif
%changelog
* Fri Mar 4 2005 Enrico Scholz <enrico.scholz at informatik.tu-chemnitz.de> - 0.28-4
@@ -123,6 +142,7 @@
- fixed compilation with gcc4
- made nice(2) SUSv3 compliantly on x86_64 and other platforms (patch
provided by Colin Hill)
+- build the dynamic libs for x86, x86_64 and arm only
* Tue Feb 1 2005 Enrico Scholz <enrico.scholz at informatik.tu-chemnitz.de> - 1:0.28-1
- updated to 0.28
More information about the scm-commits
mailing list