2 # - check why it builds all static..
3 # - doesn't build on ppc/sparc :/ hgw why
4 Summary: 32-bit compiler for the i386 and m68k processors
5 Summary(pl): 32 bitowy kompilator dla procesorów i386 i m68k
6 Summary(ru): ó×ÏÂÏÄÎÙÊ ËÏÍÐÉÌÑÔÏÒ Pascal
7 Summary(uk): ÷¦ÌØÎÉÊ ËÏÍЦÌÑÔÏÒ Pascal
12 Group: Development/Languages
13 Source0: ftp://ftp.freepascal.org/pub/fpc/dist/source-%{version}/%{name}build-%{version}.tar.bz2
14 # Source0-md5: b88893bc005c4404197ae55ef3c0de30
15 URL: http://www.freepascal.org/
16 BuildRequires: ncurses-devel
17 BuildRequires: gpm-devel
18 BuildRequires: rpmbuild(macros) >= 1.213
19 BuildRequires: tetex-fonts-jknappen
20 BuildRequires: tetex-format-pdflatex
21 BuildRequires: tetex-metafont
23 Provides: fpc-bootstrap
25 ExclusiveArch: %{ix86} %{x8664} ppc sparc
26 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
29 Free Pascal is a 32-bit compiler for the i386 and m68k processors.
30 Free Pascal is designed to be, as much as possible, source compatible
31 with Turbo Pascal 7.0 and Delphi 4 (although this goal is not yet
32 attained), but it also enhances these languages with elements like
33 function overloading. And, unlike these ancestors, it supports
37 Free Pascal to 32 bitowy kompilator dla procesorów i386 oraz m86k.
38 Free Pascal zosta³ zaprojektowany by byæ (jak tylko to mo¿liwe)
39 kompatybilnym z Turbo Pascal 7.0 oraz Delphi 4. Free Pascal równie¿
40 rozszerza te jêzyki elementami takimi jak przeci±¿anie funkcji.
43 FPC -- 32-ÂÉÔÎÙÊ ËÏÍÐÉÌÑÔÏÒ Pascal, ÓÏ×ÍÅÓÔÉÍÙÊ Ó Turbo Pascal 7.0 É
44 Delphi. ðÏÓÔÁ×ÌÑÅÔÓÑ Ó RTL (ÂÉÂÌÉÏÔÅËÏÊ ×ÒÅÍÅÎÉ ÉÓÐÏÌÎÅÎÉÑ), FCL
45 (ÂÉÂÌÉÏÔÅËÏÊ Ó×ÏÂÏÄÎÙÈ ËÏÍÐÏÎÅÎÔ), ÉÎÔÅÒÆÅÊÓÁÍÉ Ë gtk, ncurses, zlib,
46 mysql, postgres, ibase.
49 FPC -- 32-¦ÔÎÉÊ ËÏÍЦÌÑÔÏÒ Pascal, ÓÕͦÓÎÉÊ ¦Ú Turbo Pascal 7.0 ÔÁ
50 Delphi. ðÏÓÔÁÞÁ¤ÔØÓÑ ¦Ú RTL (¦Â̦ÏÔÅËÏÀ ÞÁÓÕ ×ÉËÏÎÁÎÎÑ), FCL
51 (¦Â̦ÏÔÅËÏÀ צÌØÎÉÈ ËÏÍÐÏÎÅÎÔ), ¦ÎÔÅÒÆÅÊÓÁÍÉ ÄÏ gtk, ncurses, zlib,
52 mysql, postgres, ibase.
55 Summary: Free Pascal Compiler exaple programs
56 Summary(pl): Przyk³adowe programy do kompilatora Free Pascal
58 Requires: %{name} = %{version}-%{release}
61 Free Pascal Compiler exaple programs.
63 %description examples -l pl
64 Przyk³adowe programy do kompilatora Free Pascal.
67 %setup -q -n %{name}-src-%{version}
82 PP=%{_bindir}/ppc%{_bname}
83 NEWPP=`pwd`/fpcsrc/compiler/ppc%{_bname}
84 NEWFPDOC=`pwd`/fpcsrc/utils/fpdoc/fpdoc
86 # DO NOT PUT $RPM_OPT_FLAGS IN OPT, IT DOES NOT WORK - baggins
87 case "%{_build_cpu}" in
98 %{__make} -C fpcsrc compiler_cycle \
101 BASEINSTALLDIR=%{_libdir}/%{name}/%{version} \
102 BININSTALLDIR=%{_bindir} \
107 %{__make} -C fpcsrc OPT="$OPTF -Xs -n" \
109 BASEINSTALLDIR=%{_libdir}/%{name}/%{version} \
110 BININSTALLDIR=%{_bindir} \
113 DATA2INC=`pwd`/utils/data2inc \
115 rtl_clean rtl_smart \
116 packages_base_smart \
119 packages_extra_smart \
124 rm -rf $RPM_BUILD_ROOT
125 install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_mandir},%{_examplesdir}/fpc}
127 NEWPP=`pwd`/fpcsrc/compiler/ppc%{_bname}
128 FPCMAKE=`pwd`/fpcsrc/utils/fpcm/fpcmake
129 %{__make} -C fpcsrc \
130 compiler_distinstall \
134 packages_distinstall \
140 INSTALL_PREFIX=$RPM_BUILD_ROOT%{_prefix} \
141 INSTALL_BINDIR=$RPM_BUILD_ROOT%{_bindir} \
142 INSTALL_LIBDIR=$RPM_BUILD_ROOT%{_libdir} \
143 INSTALL_DOCDIR=$RPM_BUILD_ROOT%{_docdir} \
144 INSTALL_MANDIR=$RPM_BUILD_ROOT%{_mandir} \
145 INSTALL_BASEDIR=$RPM_BUILD_ROOT%{_libdir}/%{name}/%{version} \
146 INSTALL_EXAMPLEDIR=$RPM_BUILD_ROOT%{_examplesdir}/%{name} \
147 INSTALL_MANDIR=$RPM_BUILD_ROOT%{_mandir} \
148 CODPATH=$RPM_BUILD_ROOT%{_libdir}/%{name}/lexyacc
150 %{__make} -C install/man installman \
151 INSTALL_MANDIR=$RPM_BUILD_ROOT%{_mandir}
153 ln -sf %{_libdir}/%{name}/%{version}/ppc%{_bname} $RPM_BUILD_ROOT%{_bindir}
155 sh fpcsrc/compiler/utils/samplecfg %{_libdir}/%{name}/%{version} $RPM_BUILD_ROOT%{_sysconfdir}
158 rm -rf $RPM_BUILD_ROOT
161 %defattr(644,root,root,755)
162 %attr(755,root,root) %{_bindir}/*
163 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fpc.cfg
164 %dir %{_libdir}/%{name}
165 %dir %{_libdir}/%{name}/%{version}
166 %dir %{_libdir}/%{name}/lexyacc
167 %{_libdir}/%{name}/%{version}/msg
168 %{_libdir}/%{name}/%{version}/units
169 %{_libdir}/%{name}/%{version}/ide
170 %{_libdir}/%{name}/lexyacc/*
171 %attr(755,root,root) %{_libdir}/%{name}/%{version}/ppc%{_bname}
172 %attr(755,root,root) %{_libdir}/%{name}/%{version}/samplecfg
176 %defattr(644,root,root,755)