source: spec/trunk/SPECS/libc.spec@ 1198

Last change on this file since 1198 was 1191, checked in by dmik, 8 years ago

spec: libc: Release version 0.6.6-34.

  • Property svn:eol-style set to native
File size: 8.3 KB
Line 
1#disable lxlite strip & debug info generation
2%define __os_install_post %{nil}
3
4Name: libc
5License: BSD; GPL v2 or later; LGPL v2.1 or later
6Summary: Standard Shared Libraries
7Group: System/Libraries
8Version: 0.6.6
9Release: 34%{?dist}
10Url: http://svn.netlabs.org/libc
11
12Source: libc-%{version}.zip
13Source1: libc-emxomf.zip
14# This contains binary build of LIBC with patches from tickets #361-365
15Source2: libc-hotfix.zip
16# This contains binary build of emxomfld with patches from ticket #376
17Source3: libc-emxomfld.zip
18
19Patch0: libc.patch
20
21# http://trac.netlabs.org/libc/ticket/377
22Patch1: libc-dmik-no-bsd.diff
23
24# These patches are not actually applied but they record what
25# needs to be done to the stock LIBC 0.6 source in order to build
26# emxomf.exe contained in libc-emxomf.zip
27Patch101: libc-dmik-emxomf-02-remove-asterisk.diff
28Patch102: libc-yuri-emxomf-verbose-warnings-3.patch
29
30BuildRequires: rexx_exe
31
32# Require kLIBC user management to make programs using Unix user management API
33# (getpwuid() and friends) work correctly.
34Requires: klusrmgr
35
36%description
37kLIBC is a C runtime library in which the coder is exploring The Single Unix
38Specification (SUS) and various *BSD, Sun and Linux interfaces used in 'portable'
39software. While implementing SUS completely and providing a great range of special
40BSD, Sun and Linux APIs is a kind of ultimate goal, the main focus is on what is
41interesting to play with and what is requested by porters using kLIBC.
42
43
44%package devel
45License: BSD; GPL v2 or later; LGPL v2.1 or later
46Summary: Include Files and Libraries Mandatory for Development
47Group: Development/Libraries/C and C++
48Requires: libc = %{version}-%{release}
49Obsoletes: libc-kprofile < %{version}
50
51%description devel
52These libraries are needed to develop programs which use the standard C
53library.
54
55
56%package -n db1-devel
57License: BSD; GPL v2 or later; LGPL v2.1 or later
58Summary: Include Files and Libraries Mandatory for Development (db headers)
59Group: Development/Libraries/C and C++
60
61%description -n db1-devel
62These libraries are needed to develop programs which use the standard C
63library (db headers).
64
65
66%package gettext-devel
67License: BSD; GPL v2 or later; LGPL v2.1 or later
68Summary: Include Files and Libraries Mandatory for Development (gettext headers)
69Group: Development/Libraries/C and C++
70Provides: gettext-devel
71Requires: libc = %{version}-%{release}
72
73%description gettext-devel
74These libraries are needed to develop programs which use the standard C
75library (gettext headers).
76
77
78%package debug
79Summary: HLL debug data for exception handling support.
80
81%description debug
82HLL debug data for exception handling support.
83
84
85%prep
86%setup -q -c -a 1 -a 2 -a 3
87%patch0
88%patch1
89
90#replace paths.h wrong macros
91sed -i 's,"/@unixroot/bin,"/@unixroot/usr/bin,g' usr/include/paths.h
92
93%install
94rm -rf $RPM_BUILD_ROOT
95mkdir -p %{buildroot}%{_bindir}
96mkdir -p %{buildroot}%{_includedir}
97mkdir -p %{buildroot}%{_libdir}
98mkdir -p %{buildroot}%{_usr}/man
99mkdir -p %{buildroot}%{_usr}/info
100
101cp -p -r usr/bin/* %{buildroot}%{_bindir}
102cp -p -r usr/include/* %{buildroot}%{_includedir}
103cp -p -r usr/lib/* %{buildroot}%{_libdir}
104cp -p -r usr/man/* %{buildroot}%{_usr}/man
105cp -p -r usr/man/* %{buildroot}%{_usr}/info
106
107# add new files
108cp -p -r emxomf.exe %{buildroot}%{_bindir}
109cp -p -r emxomfstrip.exe %{buildroot}%{_bindir}
110cp -p -r os2safe.h %{buildroot}%{_includedir}
111cp -p -r libos2.a %{buildroot}%{_libdir}
112
113cp -p -r emxomfld.exe %{buildroot}%{_bindir}
114
115# add hotfix DLLs
116cp -p -r libc066.* %{buildroot}%{_libdir}
117
118# remove ELH and PRF DLLs due to missing kdbglib.dll and kprofile.dll
119# (http://trac.netlabs.org/rpm/ticket/196)
120rm -f %{buildroot}%{_libdir}/libc*.elh
121rm -f %{buildroot}%{_libdir}/libc*.elh.map
122rm -f %{buildroot}%{_libdir}/libc*.prf
123rm -f %{buildroot}%{_libdir}/libc*.prf.map
124
125#remove (old) binutils headers/libs
126rm -f %{buildroot}%{_includedir}/ansidecl.h
127rm -f %{buildroot}%{_includedir}/bfd.h
128rm -f %{buildroot}%{_includedir}/bfdlink.h
129rm -f %{buildroot}%{_includedir}/dis-asm.h
130rm -f %{buildroot}%{_includedir}/libiberty.h
131rm -f %{buildroot}%{_includedir}/symcat.h
132rm -f %{buildroot}%{_libdir}/libbfd.*
133rm -f %{buildroot}%{_libdir}/libopcodes.*
134
135#remove libstdc++/supc++ static libs (built with gcc 3.x)
136rm -f %{buildroot}%{_libdir}/libstdc++.*
137rm -f %{buildroot}%{_libdir}/libsupc++.*
138rm -f %{buildroot}%{_libdir}/libiberty.*
139
140#remove sys/mman.h (provided by libcx-devel)
141rm -f %{buildroot}%{_includedir}/sys/mman.h
142
143rexx2vio $RPM_BUILD_ROOT%{_bindir}/dllar.cmd $RPM_BUILD_ROOT%{_bindir}/dllar.exe
144
145# build omf libraries
146cd %{buildroot}%{_libdir}
147cmd /c "@MakeOmfLibs.cmd"
148
149%clean
150rm -rf $RPM_BUILD_ROOT
151
152
153%files
154%defattr(-,root,root)
155%doc usr/doc/gcc-3.3.5/*
156%{_libdir}/libc06*.dll
157
158%files devel
159%defattr(-,root,root)
160%doc %{_prefix}/man/man1/*
161%doc %{_prefix}/man/man7/*
162%{_bindir}
163%exclude %{_bindir}/*.dbg
164%{_includedir}
165%exclude %{_includedir}/db.h
166%exclude %{_includedir}/ndbm.h
167%exclude %{_includedir}/libintl.h
168%{_usr}/info
169%{_libdir}
170%exclude %{_libdir}/*.dbg
171%exclude %{_libdir}/dbg
172%exclude %{_libdir}/tcpipv4/dbg
173%exclude %{_libdir}/gcc335.dll
174
175%files -n db1-devel
176%defattr(-,root,root)
177%{_includedir}/db.h
178%{_includedir}/ndbm.h
179
180%files gettext-devel
181%defattr(-,root,root)
182%{_includedir}/libintl.h
183
184%files debug
185%defattr(-,root,root)
186%{_bindir}/*.dbg
187%{_libdir}/*.dbg
188%{_libdir}/dbg
189%{_libdir}/tcpipv4/dbg
190
191%changelog
192* Sat Jun 10 2017 Dmitriy Kuminov <coding@dmik.org> 0.6.6-34
193- Remove BSD defines from sys/param.h and types.h to avoid mistreating OS/2
194 as BSD (e.g. by LIBICU's unicode/platform.h).
195
196* Tue Jun 6 2017 Dmitriy Kuminov <coding@dmik.org> 0.6.6-33
197- Provide patched emxomfld.exe that fixes Invalid WKEXT record errors.
198
199* Fri Apr 7 2017 Dmitriy Kuminov <coding@dmik.org> 0.6.6-32
200- Require kLIBC user management (klusrmgr) to make programs using Unix user
201 management API (getpwuid() and friends) work correctly.
202- Move debug libraries from libc-devel to libc-debug (saves a lot of space).
203
204* Thu Sep 22 2016 Dmitriy Kuminov <coding@dmik.org> 0.6.6-31
205- Remove sys/mman.h which is now provided by libcx-devel.
206
207* Fri Sep 02 2016 yd <yd@os2power.com> 0.6.6-30
208- Fix path definitions in paths.h header. ticket#200.
209
210* Sat Aug 20 2016 Dmitriy Kuminov <coding@dmik.org> 0.6.6-29
211- Remove libcXXX.elh and libcXXX.prf from libc-devel due to missing
212 dependnencies (klibdbg.dll and kprofile.dll). This also obsoletes
213 the libc-kprofile dummy package.
214
215* Mon Aug 8 2016 Dmitriy Kuminov <coding@dmik.org> 0.6.6-28
216- Apply patches from tickets #361-365 to make fork() work in dash
217 and similar cases and other minor improvements.
218
219* Tue Jun 14 2016 yd <yd@os2power.com> 0.6.6-27
220- removed libiberty.h since it is already in binutils-devel. ticket#103 and ticket#188.
221
222* Sat Feb 07 2015 yd 0.6.6-26
223- r3946, readded SafeWinUpper.
224- removed asterisk patch from emxomf.
225
226* Fri Jan 23 2015 yd 0.6.6-25
227- added builtin.h and stddef.h patches required for building gcc 4.9.x.
228
229* Sun Jan 18 2015 yd
230- added new SafeDos* wrappers from trunk r3944.
231
232* Sun Jan 11 2015 yd
233- removed ansidecl.h since it is already in binutils-devel. ticket#103.
234
235* Thu Jan 09 2015 yd
236- added new SafeDos* wrappers from trunk r3942 and r3943.
237- added emxomfstrip binary from trunk.
238
239* Tue Jan 06 2015 yd 0.6.6-21
240- update to libc 0.6.6-csd6, added omf libraries.
241
242* Tue Aug 19 2014 Dmitriy Kuminov <coding@dmik.org> 0.6.5-20
243- Merged emxomf-remove-asterick.diff from libc ticket #220.
244- Made libc-devel and libc-gettext-devel strictly depend on current libc.
245
246* Wed Jun 25 2014 yd
247- emxomf, merged libc tickets #251, #293, #295.
248
249* Thu Sep 11 2013 yd
250- ticket#63: remove gcc335.dll from devel distribution.
251
252* Thu Mar 21 2013 yd
253- renamed gettext-devel to libc-gettext-devel to make it more visible.
254
255* Thu Dec 13 2012 yd
256- remove gcc 3.x stdc++/supc++ static libraries.
257
258* Mon May 11 2012 yd
259- remove obsolete binutil headers/libs
260
261* Tue Apr 17 2012 yd
262- update to csd5
263
264* Mon Jan 09 2012 yd
265- commented out sbrk/_sbrk definitions in stdlib.h (use unistd.h ones).
266
267* Fri Dec 16 2011 yd
268- restored stdarg.h/cdefs.h from original libc distribution.
269
270* Thu Oct 20 2011 yd
271- included emxomf.exe by dmik to workaround gcc/wlink bugs.
272
273* Wed Oct 12 2011 yd
274- fixed mmap include
275
276* Wed Sep 05 2011 yd
277- removed binutils
278
279* Tue Sep 04 2011 yd
280- update to csd4
Note: See TracBrowser for help on using the repository browser.