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

Last change on this file since 1179 was 1158, checked in by dmik, 8 years ago

spec: libc: Release version 0.6.6-33.

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