1 Summary: 32-bit compiler for the i386 and m68k processors
2 Summary(pl): 32 bitowy kompilator dla procesorów i386 i m68k
3 Summary(ru): ó×ÏÂÏÄÎÙÊ ËÏÍÐÉÌÑÔÏÒ Pascal
4 Summary(uk): ÷¦ÌØÎÉÊ ËÏÍЦÌÑÔÏÒ Pascal
9 Group: Development/Languages
10 Vendor: Michael Van Canneyt <michael@tfdec1.fys.kuleuven.ac.be>
11 Source0: ftp://ftp.us.freepascal.org/pub/fpc/dist/source-%{version}/%{name}-%{version}-src.tar.gz
12 # Source0-md5: da2ec003500584649cb31288613c33fa
13 Source1: ftp://ftp.us.freepascal.org/pub/fpc/dist/Linux/i386/separate/binary.tar
14 # Source1-md5: 62c7ac6c21c44276b5e14bf34265d185
15 Source2: %{name}-sample.cfg
16 URL: http://www.freepascal.org/
17 Requires: gcc >= 2.95.2
19 BuildRequires: glibc-static
20 BuildRequires: zlib-devel
21 ExclusiveArch: %{ix86} m68k
22 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
25 Free Pascal is a 32-bit compiler for the i386 and m68k processors.
26 Free Pascal is designed to be, as much as possible, source compatible
27 with Turbo Pascal 7.0 and Delphi 4 (although this goal is not yet
28 attained), but it also enhances these languages with elements like
29 function overloading. And, unlike these ancestors, it supports
33 Free Pascal to 32 bitowy kompilator dla procesorów i386 oraz m86k.
34 Free Pascal zosta³ zaprojektowany by byæ (jak tylko to mo¿liwe)
35 kompatybilnym z Turbo Pascal 7.0 oraz Delphi 4. Free Pascal równie¿
36 rozszerza te jêzyki elementami takimi jak prze³adowywanie funkcji.
39 FPC -- 32-ÂÉÔÎÙÊ ËÏÍÐÉÌÑÔÏÒ Pascal, ÓÏ×ÍÅÓÔÉÍÙÊ Ó Turbo Pascal 7.0 É Delphi.
40 ðÏÓÔÁ×ÌÑÅÔÓÑ Ó RTL (ÂÉÂÌÉÏÔÅËÏÊ ×ÒÅÍÅÎÉ ÉÓÐÏÌÎÅÎÉÑ), FCL (ÂÉÂÌÉÏÔÅËÏÊ Ó×ÏÂÏÄÎÙÈ
41 ËÏÍÐÏÎÅÎÔ), ÉÎÔÅÒÆÅÊÓÁÍÉ Ë gtk, ncurses, zlib, mysql, postgres, ibase.
44 FPC -- 32-¦ÔÎÉÊ ËÏÍЦÌÑÔÏÒ Pascal, ÓÕͦÓÎÉÊ ¦Ú Turbo Pascal 7.0 ÔÁ Delphi.
45 ðÏÓÔÁÞÁ¤ÔØÓÑ ¦Ú RTL (¦Â̦ÏÔÅËÏÀ ÞÁÓÕ ×ÉËÏÎÁÎÎÑ), FCL (¦Â̦ÏÔÅËÏÀ צÌØÎÉÈ
46 ËÏÍÐÏÎÅÎÔ), ¦ÎÔÅÒÆÅÊÓÁÍÉ ÄÏ gtk, ncurses, zlib, mysql, postgres, ibase.
49 Summary: Free Pascal Compiler exaple programs
50 Summary(pl): Przyk³adowe programy do kompilatora Free Pascal
52 Requires: %{name} = %{version}
55 Free Pascal Compiler exaple programs.
57 %description examples -l pl
58 Przyk³adowe programy do kompilatora Free Pascal.
61 Summary: Free Pascal Compiler documentation
62 Summary(pl): Dokumentacja do kompilatora Free Pascal
64 Requires: %{name} = %{version}
67 Documentation for fpc in PDF format.
69 %description doc -l pl
70 Dokumentacja do fpc w formacie PDF.
74 for i in *.tar.gz ; do
78 mkdir -p src/%{name}-%{version}/doc
79 mv doc/%{name}-%{version}/* src/%{name}-%{version}/doc
80 mkdir -p src/%{name}-%{version}/man && echo ".PHONY: all install installman" > src/%{name}-%{version}/man/Makefile
82 cd src/%{name}-%{version}
86 if [ "%{_build_cpu}" = "m68k" ]; then
92 # DO NOT PUT $RPM_OPT_FLAGS IN OPT, IT DOES NOT WORK - baggins
93 case "%{_build_cpu}" in
104 PP=`pwd`/lib/fpc/%{version}/ppc386
105 NEWPP=`pwd`/src/fpc-%{version}/compiler/ppc386
106 NEWFPDOC=`pwd`/utils/fpdoc/fpdoc
108 # -O- optimalization to workaround bug in PP compiler in 1.0.4
109 %{__make} -C src/%{name}-%{version} \
112 BASEINSTALLDIR=%{_libdir}/%{name}/%{version} \
113 BININSTALLDIR=%{_bindir} \
118 %{__make} -C src/%{name}-%{version} \
121 BASEINSTALLDIR=%{_libdir}/%{name}/%{version} \
122 BININSTALLDIR=%{_bindir} \
125 rtl_clean rtl_smart packages_base_smart fcl_smart packages_extra_smart utils_all
127 # %{__make} -C src/%{name}-%{version}/docs pdf FPDOC=${NEWFPDOC}
131 rm -rf $RPM_BUILD_ROOT
132 install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_mandir},%{_examplesdir}/fpc}
134 install %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/fpc.cfg
136 # workaround for 1.0.4
137 #(cd src/fpc-%{version}; ln -s fcl/linux linux)
139 NEWPP=`pwd`/src/fpc-%{version}/compiler/ppc386
140 %{__make} -C src/%{name}-%{version} \
141 INSTALL_PREFIX=$RPM_BUILD_ROOT%{_prefix} \
142 INSTALL_BINDIR=$RPM_BUILD_ROOT%{_bindir} \
143 INSTALL_LIBDIR=$RPM_BUILD_ROOT%{_libdir} \
144 INSTALL_DOCDIR=$RPM_BUILD_ROOT%{_docdir} \
145 INSTALL_MANDIR=$RPM_BUILD_ROOT%{_mandir} \
147 compiler_distinstall \
149 packages_distinstall \
154 # %{__make} -C src/%{name}-%{version}/docs pdfinstall DOCINSTALLDIR=$RPM_BUILD_ROOT%{_docdir}
156 #cp -a man/* $RPM_BUILD_ROOT%{_mandir}
158 mv -f src/%{name}-%{version}/doc/examples/* $RPM_BUILD_ROOT%{_examplesdir}/fpc
160 ln -sf ../lib/%{name}/%{version}/ppc386 $RPM_BUILD_ROOT%{_bindir}/ppc386
161 ln -sf ppc386 $RPM_BUILD_ROOT%{_bindir}/fpc
163 mv -f src/%{name}-%{version}/doc/faq.htm src/%{name}-%{version}/doc/faq.html
166 rm -rf $RPM_BUILD_ROOT
170 GCCSPEC=`(gcc -v 2>&1)| head -n 1| awk '{ print $4 } '`
171 GCCDIR=`dirname $GCCSPEC`
172 echo "Found libgcc.a in $GCCDIR"
173 sed -e "s#\$GCCDIR#$GCCDIR#" %{_sysconfdir}/fpc.cfg > %{_sysconfdir}/fpc.cfg.new
174 sed -e "s#\$1#%{_libdir}/%{name}/%{version}#" %{_sysconfdir}/fpc.cfg.new > %{_sysconfdir}/fpc.cfg
175 rm -f %{_sysconfdir}/fpc.cfg.new
178 %defattr(644,root,root,755)
179 %attr(755,root,root) %{_bindir}/*
180 %doc src/%{name}-%{version}/doc/{copying*,*.txt}
181 %doc src/%{name}-%{version}/doc/faq.html
182 %config %verify(not md5 size mtime) %{_sysconfdir}/fpc.cfg
183 %dir %{_libdir}/%{name}
184 %dir %{_libdir}/%{name}/%{version}
185 %dir %{_libdir}/%{name}/lexyacc
186 %{_libdir}/%{name}/%{version}/msg
187 %{_libdir}/%{name}/%{version}/units
188 %{_libdir}/%{name}/lexyacc/*
189 %attr(755,root,root) %{_libdir}/%{name}/%{version}/ppc386
190 %attr(755,root,root) %{_libdir}/%{name}/%{version}/samplecfg
194 %defattr(644,root,root,755)
198 #%defattr(644,root,root,755)
199 #%doc src/%{name}-%{version}/doc/*.pdf