source: rtems/contrib/crossrpms/mingw32/i686/i686-pc-mingw32-gmp.spec.in @ 9c4db573

4.104.115
Last change on this file since 9c4db573 was 9c4db573, checked in by Ralf Corsepius <ralf.corsepius@…>, on 07/17/09 at 14:34:08

Update.

  • Property mode set to 100644
File size: 5.3 KB
Line 
1#
2# Please send bugfixes or comments to
3#       http://www.rtems.org/bugzilla
4#
5
6%if "%{_prefix}" != "/usr"
7%define _prefix                 @_prefix@
8%define _exec_prefix            %{_prefix}
9%define _bindir                 %{_exec_prefix}/bin
10%define _sbindir                %{_exec_prefix}/sbin
11%define _libexecdir             %{_exec_prefix}/libexec
12%define _datarootdir            %{_prefix}/share
13%define _datadir                %{_datarootdir}
14%define _sysconfdir             %{_prefix}/etc
15%define _sharedstatedir         %{_prefix}/com
16%define _localstatedir          %{_prefix}/var
17%define _includedir             %{_prefix}/include
18%define _libdir                 %{_exec_prefix}/%{_lib}
19%define _mandir                 %{_datarootdir}/man
20%define _infodir                %{_datarootdir}/info
21%define _localedir              %{_datarootdir}/locale
22%endif
23
24%ifos cygwin cygwin32 mingw mingw32
25%define _exeext .exe
26%define debug_package           %{nil}
27%define _libdir                 %{_exec_prefix}/lib
28%else
29%define _exeext %{nil}
30%endif
31
32%ifos cygwin cygwin32
33%define optflags -O3 -pipe -march=i486 -funroll-loops
34%endif
35
36%ifos mingw mingw32
37%if %{defined _mingw32_cflags}
38%define optflags %{_mingw32_cflags}
39%else
40%define optflags -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4 -mms-bitfields
41%endif
42%endif
43
44%if "%{_build}" != "%{_host}"
45%define _host_rpmprefix @rpmprefix@%{_host}-
46%else
47%define _host_rpmprefix %{nil}
48%endif
49
50%define gmp_version 4.2.4
51%define gmp_rpmvers %{expand:%(echo 4.2.4 | tr - _)}
52%define debug_package %{nil}
53
54Name:         @rpmprefix@i686-pc-mingw32-gmp
55Release:      0.20090717.1%{?dist}
56License:      GPL
57Group:        Development/Tools
58
59BuildArch:      noarch
60BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
61
62Version:        %gmp_rpmvers
63Summary:        MinGW gmp Libraries
64
65Source0:        ftp://ftp.gnu.org/gnu/gmp/gmp-%{gmp_version}.tar.bz2
66
67Provides:       @rpmprefix@i686-pc-mingw32-gmp-devel = %{version}-%{release}
68
69%define _mingw32_target          i686-pc-mingw32
70
71# Fedora ships a mingw toolchain installed to /usr
72%define _mingw32_sysroot /usr/%{_mingw32_target}/sys-root
73
74BuildRequires:  m4
75BuildRequires:  @rpmprefix@i686-pc-mingw32-gcc
76
77%description
78MinGW gmp libraries.
79
80%prep
81%setup -c -q
82
83%build
84  %if "%{_prefix}" != "/usr"
85    export PATH="%{_bindir}:${PATH}"
86  %endif
87
88  mkdir -p build
89
90  cd build
91
92  ../gmp-%{gmp_version}/configure \
93    --prefix=%{_mingw32_sysroot}/mingw \
94    --bindir=%{_bindir} \
95    --exec_prefix=%{_mingw32_sysroot}/mingw \
96    --includedir=%{_mingw32_sysroot}/mingw/include \
97    --libdir=%{_mingw32_sysroot}/mingw/lib \
98    --libexecdir=%{_mingw32_sysroot}/mingw/libexec \
99    --mandir=%{_mingw32_sysroot}/mingw/share/man \
100    --infodir=%{_mingw32_sysroot}/mingw/share/info \
101    --datadir=%{_mingw32_sysroot}/mingw/share \
102    --build=%_build --host=i686-pc-mingw32 \
103    --enable-static \
104    --disable-shared
105
106  cd ..
107
108%install
109  rm -rf $RPM_BUILD_ROOT
110
111  cd build
112
113  make DESTDIR=$RPM_BUILD_ROOT install
114
115  cd ..
116# Extract %%__os_install_post into os_install_post~
117cat << \EOF > os_install_post~
118%__os_install_post
119EOF
120
121# Generate customized brp-*scripts
122cat os_install_post~ | while read a x y; do
123case $a in
124# Prevent brp-strip* from trying to handle foreign binaries
125*/brp-strip*)
126  b=$(basename $a)
127  sed -e 's,find $RPM_BUILD_ROOT,find $RPM_BUILD_ROOT%_bindir $RPM_BUILD_ROOT%_libexecdir,' $a > $b
128  chmod a+x $b
129  ;;
130%if "%{_prefix}" != "/usr"
131# Fix up brp-compress to handle %%_prefix != /usr
132*/brp-compress*)
133  b=$(basename $a)
134  sed -e 's,\./usr/,.%{_prefix}/,g' < $a > $b
135  chmod a+x $b
136  ;;
137%endif
138esac
139done
140
141sed -e 's,^[ ]*/usr/lib/rpm.*/brp-strip,./brp-strip,' \
142%if "%{_prefix}" != "/usr"
143  -e 's,^[ ]*/usr/lib/rpm.*/brp-compress,./brp-compress,' \
144%endif
145< os_install_post~ > os_install_post
146%define __os_install_post . ./os_install_post
147
148
149cat << EOF > %{_builddir}/%{name}-%{gmp_rpmvers}/find-provides
150#!/bin/sh
151grep -E -v '^${RPM_BUILD_ROOT}%{_exec_prefix}/i686-pc-mingw32/(lib|include|sys-root)' \
152  | grep -v '^${RPM_BUILD_ROOT}%{gcclib}/i686-pc-mingw32/' | %__find_provides
153EOF
154chmod +x %{_builddir}/%{name}-%{gmp_rpmvers}/find-provides
155%define __find_provides %{_builddir}/%{name}-%{gmp_rpmvers}/find-provides
156
157cat << EOF > %{_builddir}/%{name}-%{gmp_rpmvers}/find-requires
158#!/bin/sh
159grep -E -v '^${RPM_BUILD_ROOT}%{_exec_prefix}/i686-pc-mingw32/(lib|include|sys-root)' \
160  | grep -v '^${RPM_BUILD_ROOT}%{gcclib}/i686-pc-mingw32/' | %__find_requires
161EOF
162chmod +x %{_builddir}/%{name}-%{gmp_rpmvers}/find-requires
163%define __find_requires %{_builddir}/%{name}-%{gmp_rpmvers}/find-requires
164
165%ifnarch noarch
166# Extract %%__debug_install_post into debug_install_post~
167cat << \EOF > debug_install_post~
168%__debug_install_post
169EOF
170
171# Generate customized debug_install_post script
172cat debug_install_post~ | while read a x y; do
173case $a in
174# Prevent find-debuginfo.sh* from trying to handle foreign binaries
175*/find-debuginfo.sh)
176  b=$(basename $a)
177  sed -e 's,find "$RPM_BUILD_ROOT" !,find "$RPM_BUILD_ROOT"%_bindir "$RPM_BUILD_ROOT"%_libexecdir !,' $a > $b
178  chmod a+x $b
179  ;;
180esac
181done
182
183sed -e 's,^[ ]*/usr/lib/rpm/find-debuginfo.sh,./find-debuginfo.sh,' \
184< debug_install_post~ > debug_install_post
185%define __debug_install_post . ./debug_install_post
186
187%endif
188
189%clean
190  rm -rf $RPM_BUILD_ROOT
191
192%files
193%defattr(-,root,root,-)
194%{_mingw32_sysroot}/mingw
195%exclude %{_mingw32_sysroot}/mingw/share/info/dir
Note: See TracBrowser for help on using the repository browser.