Rebuild against mingw32-filesystem 36
[fedora-mingw.git] / gcc / mingw32-gcc.spec
1 %define __os_install_post /usr/lib/rpm/brp-compress %{nil}
2
3 Name:           mingw32-gcc
4 Version:        4.3.2
5 Release:        9%{?dist}
6 Summary:        MinGW Windows cross-compiler (GCC) for C
7
8 License:        GPLv2+
9 Group:          Development/Languages
10 URL:            http://www.mingw.org/
11 Source0:        ftp://ftp.gnu.org/gnu/gcc/gcc-%{version}/gcc-core-%{version}.tar.bz2
12 Source1:        ftp://ftp.gnu.org/gnu/gcc/gcc-%{version}/gcc-g++-%{version}.tar.bz2
13 Patch1:         %{name}-build.patch
14 BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
15
16 BuildRequires:  texinfo
17 BuildRequires:  mingw32-filesystem >= 26
18 BuildRequires:  mingw32-binutils
19 BuildRequires:  mingw32-runtime
20 BuildRequires:  mingw32-w32api
21 BuildRequires:  gmp-devel
22 %if 0%{?fedora} >= 9
23 BuildRequires:  mpfr-devel
24 %endif
25 BuildRequires:  libgomp
26
27 Requires:       mingw32-filesystem >= 26
28 Requires:       mingw32-binutils
29 Requires:       mingw32-runtime
30 Requires:       mingw32-w32api
31 Requires:       mingw32-cpp
32
33 Provides:       mingw-gcc = %{version}-%{release}
34 Obsoletes:      mingw-gcc < 4.3.2-7
35
36
37 %description
38 MinGW Windows cross-compiler (GCC) for C
39
40
41 %package -n mingw32-cpp
42 Summary: MinGW Windows cross-C Preprocessor.
43 Group: Development/Languages
44
45 %description -n mingw32-cpp
46 MinGW Windows cross-C Preprocessor
47
48
49 %package c++
50 Summary: MinGW Windows cross-compiler for C++
51 Group: Development/Languages
52
53 %description c++
54 MinGW Windows cross-compiler for C++
55
56
57 %prep
58 %setup -q -c
59 %setup -q -D -T -a1
60 %patch1 -p1
61
62 %build
63 cd gcc-%{version}
64
65 mkdir -p build
66 cd build
67
68 languages="c,c++"
69
70 CC="%{__cc} ${RPM_OPT_FLAGS}" \
71 ../configure \
72   --prefix=%{_prefix} \
73   --bindir=%{_bindir} \
74   --includedir=%{_includedir} \
75   --libdir=%{_libdir} \
76   --mandir=%{_mandir} \
77   --infodir=%{_infodir} \
78   --datadir=%{_datadir} \
79   --build=%_build --host=%_host \
80   --target=%{_mingw32_target} \
81   --with-gnu-as --with-gnu-ld --verbose \
82   --without-newlib \
83   --disable-multilib \
84   --with-system-zlib \
85   --disable-nls --without-included-gettext \
86   --disable-win32-registry \
87   --enable-version-specific-runtime-libs \
88   --with-sysroot=%{_mingw32_sysroot} \
89   --enable-languages="$languages" $optargs
90
91 make all
92
93
94 %install
95 rm -rf $RPM_BUILD_ROOT
96
97 cd gcc-%{version}
98 cd build
99 make DESTDIR=$RPM_BUILD_ROOT install
100
101 # These files conflict with existing installed files.
102 rm -rf $RPM_BUILD_ROOT%{_infodir}
103 rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty*
104 rm -f $RPM_BUILD_ROOT%{_mandir}/man7/*
105
106 mkdir -p $RPM_BUILD_ROOT/lib
107 ln -sf ..%{_prefix}/bin/i686-pc-mingw32-cpp \
108   $RPM_BUILD_ROOT/lib/i686-pc-mingw32-cpp
109
110 %clean
111 rm -rf $RPM_BUILD_ROOT
112
113
114 %files
115 %defattr(-,root,root)
116 %{_bindir}/i686-pc-mingw32-gcc
117 %{_bindir}/i686-pc-mingw32-gcc-%{version}
118 %{_bindir}/i686-pc-mingw32-gccbug
119 %{_bindir}/i686-pc-mingw32-gcov
120 %{_prefix}/i686-pc-mingw32/lib/libiberty.a
121 %dir %{_libdir}/gcc/i686-pc-mingw32
122 %dir %{_libdir}/gcc/i686-pc-mingw32/%{version}
123 %{_libdir}/gcc/i686-pc-mingw32/%{version}/crtbegin.o
124 %{_libdir}/gcc/i686-pc-mingw32/%{version}/crtend.o
125 %{_libdir}/gcc/i686-pc-mingw32/%{version}/crtfastmath.o
126 %{_libdir}/gcc/i686-pc-mingw32/%{version}/libgcc.a
127 %{_libdir}/gcc/i686-pc-mingw32/%{version}/libgcov.a
128 %{_libdir}/gcc/i686-pc-mingw32/%{version}/libssp.a
129 %{_libdir}/gcc/i686-pc-mingw32/%{version}/libssp.la
130 %{_libdir}/gcc/i686-pc-mingw32/%{version}/libssp_nonshared.a
131 %{_libdir}/gcc/i686-pc-mingw32/%{version}/libssp_nonshared.la
132 %dir %{_libdir}/gcc/i686-pc-mingw32/%{version}/include
133 %dir %{_libdir}/gcc/i686-pc-mingw32/%{version}/include-fixed
134 %dir %{_libdir}/gcc/i686-pc-mingw32/%{version}/include/ssp
135 %{_libdir}/gcc/i686-pc-mingw32/%{version}/include-fixed/README
136 %{_libdir}/gcc/i686-pc-mingw32/%{version}/include-fixed/*.h
137 %{_libdir}/gcc/i686-pc-mingw32/%{version}/include/*.h
138 %{_libdir}/gcc/i686-pc-mingw32/%{version}/include/ssp/*.h
139 %dir %{_libdir}/gcc/i686-pc-mingw32/%{version}/install-tools
140 %{_libdir}/gcc/i686-pc-mingw32/%{version}/install-tools/*
141 %dir %{_libexecdir}/gcc/i686-pc-mingw32/%{version}/install-tools
142 %{_libexecdir}/gcc/i686-pc-mingw32/%{version}/install-tools/*
143 %{_mandir}/man1/i686-pc-mingw32-gcc.1*
144 %{_mandir}/man1/i686-pc-mingw32-gcov.1*
145
146
147 %files -n mingw32-cpp
148 %defattr(-,root,root)
149 /lib/i686-pc-mingw32-cpp
150 %{_bindir}/i686-pc-mingw32-cpp
151 %{_mandir}/man1/i686-pc-mingw32-cpp.1*
152 %dir %{_libdir}/gcc/i686-pc-mingw32
153 %dir %{_libdir}/gcc/i686-pc-mingw32/%{version}
154 %{_libexecdir}/gcc/i686-pc-mingw32/%{version}/cc1
155
156
157 %files c++
158 %defattr(-,root,root)
159 %{_bindir}/i686-pc-mingw32-g++
160 %{_bindir}/i686-pc-mingw32-c++
161 %{_mandir}/man1/i686-pc-mingw32-g++.1*
162 %{_libdir}/gcc/i686-pc-mingw32/%{version}/include/c++/
163 %{_libdir}/gcc/i686-pc-mingw32/%{version}/libstdc++.a
164 %{_libdir}/gcc/i686-pc-mingw32/%{version}/libstdc++.la
165 %{_libdir}/gcc/i686-pc-mingw32/%{version}/libsupc++.a
166 %{_libdir}/gcc/i686-pc-mingw32/%{version}/libsupc++.la
167 %{_libexecdir}/gcc/i686-pc-mingw32/%{version}/cc1plus
168 %{_libexecdir}/gcc/i686-pc-mingw32/%{version}/collect2
169
170
171 %changelog
172 * Wed Nov 19 2008 Richard W.M. Jones <rjones@redhat.com> - 4.3.2-9
173 - Rebuild against mingw32-filesystem 36
174
175 * Thu Oct 30 2008 Richard W.M. Jones <rjones@redhat.com> - 4.3.2-8
176 - Don't BR mpfr-devel for RHEL/EPEL-5 (Levente Farkas).
177
178 * Thu Sep  4 2008 Richard W.M. Jones <rjones@redhat.com> - 4.3.2-7
179 - Rename mingw -> mingw32.
180
181 * Thu Sep  4 2008 Richard W.M. Jones <rjones@redhat.com> - 4.3.2-6
182 - Use RPM macros from mingw-filesystem.
183
184 * Mon Jul  7 2008 Richard W.M. Jones <rjones@redhat.com> - 4.3.2-3
185 - Initial RPM release, largely based on earlier work from several sources.