Makefile 36 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493
  1. #
  2. # Don't edit, this file is generated by FPCMake Version 1.1 [2004/08/31]
  3. #
  4. default: all
  5. MAKEFILETARGETS=linux
  6. BSDs = freebsd netbsd openbsd darwin
  7. UNIXs = linux $(BSDs) sunos qnx
  8. FORCE:
  9. .PHONY: FORCE
  10. override PATH:=$(patsubst %/,%,$(subst \,/,$(PATH)))
  11. ifneq ($(findstring darwin,$(OSTYPE)),)
  12. inUnix=1 #darwin
  13. SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
  14. else
  15. ifeq ($(findstring ;,$(PATH)),)
  16. inUnix=1
  17. SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
  18. else
  19. SEARCHPATH:=$(subst ;, ,$(PATH))
  20. endif
  21. endif
  22. SEARCHPATH+=$(patsubst %/,%,$(subst \,/,$(dir $(MAKE))))
  23. PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
  24. ifeq ($(PWD),)
  25. PWD:=$(strip $(wildcard $(addsuffix /pwd,$(SEARCHPATH))))
  26. ifeq ($(PWD),)
  27. $(error You need the GNU utils package to use this Makefile)
  28. else
  29. PWD:=$(firstword $(PWD))
  30. SRCEXEEXT=
  31. endif
  32. else
  33. PWD:=$(firstword $(PWD))
  34. SRCEXEEXT=.exe
  35. endif
  36. ifndef inUnix
  37. ifeq ($(OS),Windows_NT)
  38. inWinNT=1
  39. else
  40. ifdef OS2_SHELL
  41. inOS2=1
  42. endif
  43. endif
  44. else
  45. ifneq ($(findstring cygdrive,$(PATH)),)
  46. inCygWin=1
  47. endif
  48. endif
  49. ifdef inUnix
  50. SRCBATCHEXT=.sh
  51. else
  52. ifdef inOS2
  53. SRCBATCHEXT=.cmd
  54. else
  55. SRCBATCHEXT=.bat
  56. endif
  57. endif
  58. ifdef inUnix
  59. PATHSEP=/
  60. else
  61. PATHSEP:=$(subst /,\,/)
  62. ifdef inCygWin
  63. PATHSEP=/
  64. endif
  65. endif
  66. ifdef PWD
  67. BASEDIR:=$(subst \,/,$(shell $(PWD)))
  68. ifdef inCygWin
  69. ifneq ($(findstring /cygdrive/,$(BASEDIR)),)
  70. BASENODIR:=$(patsubst /cygdrive%,%,$(BASEDIR))
  71. BASEDRIVE:=$(firstword $(subst /, ,$(BASENODIR)))
  72. BASEDIR:=$(subst /cygdrive/$(BASEDRIVE)/,$(BASEDRIVE):/,$(BASEDIR))
  73. endif
  74. endif
  75. else
  76. BASEDIR=.
  77. endif
  78. ifdef inOS2
  79. ifndef ECHO
  80. ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
  81. ifeq ($(ECHO),)
  82. ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
  83. ifeq ($(ECHO),)
  84. ECHO=echo
  85. else
  86. ECHO:=$(firstword $(ECHO))
  87. endif
  88. else
  89. ECHO:=$(firstword $(ECHO))
  90. endif
  91. endif
  92. export ECHO
  93. endif
  94. override OS_TARGET_DEFAULT=linux
  95. override DEFAULT_FPCDIR=../..
  96. ifndef FPC
  97. ifdef PP
  98. FPC=$(PP)
  99. endif
  100. endif
  101. ifndef FPC
  102. FPCPROG:=$(strip $(wildcard $(addsuffix /fpc$(SRCEXEEXT),$(SEARCHPATH))))
  103. ifneq ($(FPCPROG),)
  104. FPCPROG:=$(firstword $(FPCPROG))
  105. FPC:=$(shell $(FPCPROG) -PB)
  106. ifneq ($(findstring Error,$(FPC)),)
  107. override FPC=ppc386
  108. endif
  109. else
  110. override FPC=ppc386
  111. endif
  112. endif
  113. override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
  114. override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
  115. ifndef FPC_VERSION
  116. FPC_COMPILERINFO:=$(shell $(FPC) -iVSPTPSOTO)
  117. FPC_VERSION:=$(word 1,$(FPC_COMPILERINFO))
  118. endif
  119. export FPC FPC_VERSION FPC_COMPILERINFO
  120. unexport CHECKDEPEND ALLDEPENDENCIES
  121. ifndef CPU_TARGET
  122. ifdef CPU_TARGET_DEFAULT
  123. CPU_TARGET=$(CPU_TARGET_DEFAULT)
  124. endif
  125. endif
  126. ifndef OS_TARGET
  127. ifdef OS_TARGET_DEFAULT
  128. OS_TARGET=$(OS_TARGET_DEFAULT)
  129. endif
  130. endif
  131. ifneq ($(words $(FPC_COMPILERINFO)),5)
  132. FPC_COMPILERINFO+=$(shell $(FPC) -iSP)
  133. FPC_COMPILERINFO+=$(shell $(FPC) -iTP)
  134. FPC_COMPILERINFO+=$(shell $(FPC) -iSO)
  135. FPC_COMPILERINFO+=$(shell $(FPC) -iTO)
  136. endif
  137. ifndef CPU_SOURCE
  138. CPU_SOURCE:=$(word 2,$(FPC_COMPILERINFO))
  139. endif
  140. ifndef CPU_TARGET
  141. CPU_TARGET:=$(word 3,$(FPC_COMPILERINFO))
  142. endif
  143. ifndef OS_SOURCE
  144. OS_SOURCE:=$(word 4,$(FPC_COMPILERINFO))
  145. endif
  146. ifndef OS_TARGET
  147. OS_TARGET:=$(word 5,$(FPC_COMPILERINFO))
  148. endif
  149. FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
  150. FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
  151. ifneq ($(FULL_TARGET),$(FULL_SOURCE))
  152. CROSSCOMPILE=1
  153. endif
  154. ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
  155. ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
  156. $(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
  157. endif
  158. endif
  159. ifneq ($(findstring $(OS_TARGET),$(BSDs)),)
  160. BSDhier=1
  161. endif
  162. ifeq ($(OS_TARGET),linux)
  163. linuxHier=1
  164. endif
  165. export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE CROSSCOMPILE
  166. ifdef FPCDIR
  167. override FPCDIR:=$(subst \,/,$(FPCDIR))
  168. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  169. override FPCDIR=wrong
  170. endif
  171. else
  172. override FPCDIR=wrong
  173. endif
  174. ifdef DEFAULT_FPCDIR
  175. ifeq ($(FPCDIR),wrong)
  176. override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
  177. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  178. override FPCDIR=wrong
  179. endif
  180. endif
  181. endif
  182. ifeq ($(FPCDIR),wrong)
  183. ifdef inUnix
  184. override FPCDIR=/usr/local/lib/fpc/$(FPC_VERSION)
  185. ifeq ($(wildcard $(FPCDIR)/units),)
  186. override FPCDIR=/usr/lib/fpc/$(FPC_VERSION)
  187. endif
  188. else
  189. override FPCDIR:=$(subst /$(FPC),,$(firstword $(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))))
  190. override FPCDIR:=$(FPCDIR)/..
  191. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  192. override FPCDIR:=$(FPCDIR)/..
  193. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  194. override FPCDIR:=$(BASEDIR)
  195. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  196. override FPCDIR=c:/pp
  197. endif
  198. endif
  199. endif
  200. endif
  201. endif
  202. ifndef CROSSDIR
  203. CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
  204. endif
  205. ifndef CROSSTARGETDIR
  206. CROSSTARGETDIR=$(CROSSDIR)/$(FULL_TARGET)
  207. endif
  208. ifdef CROSSCOMPILE
  209. UNITSDIR:=$(wildcard $(CROSSTARGETDIR)/units)
  210. ifeq ($(UNITSDIR),)
  211. UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
  212. endif
  213. else
  214. UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
  215. endif
  216. PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages/base $(FPCDIR)/packages/extra)
  217. override PACKAGE_NAME=rtl
  218. RTL=..
  219. INC=$(RTL)/inc
  220. PROCINC=$(RTL)/$(CPU_TARGET)
  221. UNIXINC=$(RTL)/unix
  222. ifeq ($(CPU_TARGET),i386)
  223. CRT21=cprt21 gprt21
  224. CPU_UNITS=x86 ports cpu mmx graph
  225. else
  226. CPU_UNITS=
  227. endif
  228. UNITPREFIX=rtl
  229. ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
  230. SYSTEMUNIT=system
  231. LINUXUNIT1=
  232. ifeq ($(CPU_TARGET),i386)
  233. CPU_UNITS+=oldlinux
  234. endif
  235. LINUXUNIT2=linux
  236. else
  237. SYSTEMUNIT=syslinux
  238. LINUXUNIT1=linux
  239. LINUXUNIT2=
  240. override FPCOPT+=-dUNIX
  241. endif
  242. ifdef RELEASE
  243. override FPCOPT+=-Ur
  244. endif
  245. OBJPASDIR=$(RTL)/objpas
  246. GRAPHDIR=$(INC)/graph
  247. ifndef USELIBGGI
  248. USELIBGGI=NO
  249. endif
  250. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype baseunix strings systhrds objpas macpas syscall unixutil heaptrc lineinfo $(LINUXUNIT1) termio unix $(LINUXUNIT2) initc cmem $(CPU_UNITS) dos crt objects printer ggigraph sysutils typinfo math matrix varutils charset ucomplex getopts errors sockets gpm ipc serial terminfo dl dynlibs video mouse keyboard variants types dateutils sysconst cthreads classes strutils rtlconst
  251. override TARGET_LOADERS+=prt0 dllprt0 cprt0 gprt0 $(CRT21)
  252. override TARGET_RSTS+=math varutils typinfo variants systhrds sysconst rtlconst
  253. override CLEAN_UNITS+=syslinux linux
  254. override INSTALL_FPCPACKAGE=y
  255. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(CPU_TARGET)
  256. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(CPU_TARGET)
  257. override COMPILER_TARGETDIR+=.
  258. ifdef REQUIRE_UNITSDIR
  259. override UNITSDIR+=$(REQUIRE_UNITSDIR)
  260. endif
  261. ifdef REQUIRE_PACKAGESDIR
  262. override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
  263. endif
  264. ifdef ZIPINSTALL
  265. ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
  266. UNIXHier=1
  267. endif
  268. else
  269. ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
  270. UNIXHier=1
  271. endif
  272. endif
  273. ifndef INSTALL_PREFIX
  274. ifdef PREFIX
  275. INSTALL_PREFIX=$(PREFIX)
  276. endif
  277. endif
  278. ifndef INSTALL_PREFIX
  279. ifdef UNIXHier
  280. INSTALL_PREFIX=/usr/local
  281. else
  282. ifdef INSTALL_FPCPACKAGE
  283. INSTALL_BASEDIR:=/pp
  284. else
  285. INSTALL_BASEDIR:=/$(PACKAGE_NAME)
  286. endif
  287. endif
  288. endif
  289. export INSTALL_PREFIX
  290. ifdef INSTALL_FPCSUBDIR
  291. export INSTALL_FPCSUBDIR
  292. endif
  293. ifndef DIST_DESTDIR
  294. DIST_DESTDIR:=$(BASEDIR)
  295. endif
  296. export DIST_DESTDIR
  297. ifndef INSTALL_BASEDIR
  298. ifdef UNIXHier
  299. ifdef INSTALL_FPCPACKAGE
  300. INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
  301. else
  302. INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/$(PACKAGE_NAME)
  303. endif
  304. else
  305. INSTALL_BASEDIR:=$(INSTALL_PREFIX)
  306. endif
  307. endif
  308. ifndef INSTALL_BINDIR
  309. ifdef UNIXHier
  310. ifdef CROSSCOMPILE
  311. INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
  312. else
  313. INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
  314. endif
  315. else
  316. ifdef CROSSCOMPILE
  317. INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
  318. else
  319. INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
  320. endif
  321. ifdef INSTALL_FPCPACKAGE
  322. INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
  323. endif
  324. endif
  325. endif
  326. ifndef INSTALL_UNITDIR
  327. ifdef CROSSCOMPILE
  328. INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/units
  329. else
  330. INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(OS_TARGET)
  331. endif
  332. ifdef INSTALL_FPCPACKAGE
  333. ifdef PACKAGE_NAME
  334. INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
  335. endif
  336. endif
  337. endif
  338. ifndef INSTALL_LIBDIR
  339. ifdef UNIXHier
  340. INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
  341. else
  342. INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
  343. endif
  344. endif
  345. ifndef INSTALL_SOURCEDIR
  346. ifdef UNIXHier
  347. ifdef BSDhier
  348. SRCPREFIXDIR=share/src
  349. else
  350. ifdef linuxHier
  351. SRCPREFIXDIR=share/src
  352. else
  353. SRCPREFIXDIR=src
  354. endif
  355. endif
  356. ifdef INSTALL_FPCPACKAGE
  357. ifdef INSTALL_FPCSUBDIR
  358. INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
  359. else
  360. INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
  361. endif
  362. else
  363. INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  364. endif
  365. else
  366. ifdef INSTALL_FPCPACKAGE
  367. ifdef INSTALL_FPCSUBDIR
  368. INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
  369. else
  370. INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
  371. endif
  372. else
  373. INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source
  374. endif
  375. endif
  376. endif
  377. ifndef INSTALL_DOCDIR
  378. ifdef UNIXHier
  379. ifdef BSDhier
  380. DOCPREFIXDIR=share/doc
  381. else
  382. ifdef linuxHier
  383. DOCPREFIXDIR=share/doc
  384. else
  385. DOCPREFIXDIR=doc
  386. endif
  387. endif
  388. ifdef INSTALL_FPCPACKAGE
  389. INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
  390. else
  391. INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  392. endif
  393. else
  394. ifdef INSTALL_FPCPACKAGE
  395. INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc/$(PACKAGE_NAME)
  396. else
  397. INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc
  398. endif
  399. endif
  400. endif
  401. ifndef INSTALL_EXAMPLEDIR
  402. ifdef UNIXHier
  403. ifdef INSTALL_FPCPACKAGE
  404. ifdef BSDhier
  405. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
  406. else
  407. ifdef linuxHier
  408. INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples
  409. else
  410. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
  411. endif
  412. endif
  413. else
  414. ifdef BSDhier
  415. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  416. else
  417. ifdef linuxHier
  418. INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  419. else
  420. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  421. endif
  422. endif
  423. endif
  424. else
  425. ifdef INSTALL_FPCPACKAGE
  426. INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME)
  427. else
  428. INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples
  429. endif
  430. endif
  431. endif
  432. ifndef INSTALL_DATADIR
  433. INSTALL_DATADIR=$(INSTALL_BASEDIR)
  434. endif
  435. ifdef CROSSCOMPILE
  436. ifndef CROSSBINDIR
  437. CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(FULL_SOURCE))
  438. ifeq ($(CROSSBINDIR),)
  439. CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin/$(FULL_SOURCE))
  440. endif
  441. endif
  442. else
  443. CROSSBINDIR=
  444. endif
  445. BATCHEXT=.bat
  446. LOADEREXT=.as
  447. EXEEXT=.exe
  448. PPLEXT=.ppl
  449. PPUEXT=.ppu
  450. OEXT=.o
  451. ASMEXT=.s
  452. SMARTEXT=.sl
  453. STATICLIBEXT=.a
  454. SHAREDLIBEXT=.so
  455. STATICLIBPREFIX=libp
  456. RSTEXT=.rst
  457. FPCMADE=fpcmade
  458. ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
  459. ifeq ($(OS_TARGET),go32v1)
  460. STATICLIBPREFIX=
  461. FPCMADE=fpcmade.v1
  462. PACKAGESUFFIX=v1
  463. endif
  464. ifeq ($(OS_TARGET),go32v2)
  465. STATICLIBPREFIX=
  466. FPCMADE=fpcmade.dos
  467. ZIPSUFFIX=go32
  468. endif
  469. ifeq ($(OS_TARGET),watcom)
  470. STATICLIBPREFIX=
  471. FPCMADE=fpcmade.wat
  472. ZIPSUFFIX=watc
  473. OEXT=.obj
  474. ASMEXT=.asm
  475. SHAREDLIBEXT=.dll
  476. endif
  477. ifeq ($(OS_TARGET),linux)
  478. BATCHEXT=.sh
  479. EXEEXT=
  480. HASSHAREDLIB=1
  481. FPCMADE=fpcmade.lnx
  482. ZIPSUFFIX=linux
  483. endif
  484. ifeq ($(OS_TARGET),freebsd)
  485. BATCHEXT=.sh
  486. EXEEXT=
  487. HASSHAREDLIB=1
  488. FPCMADE=fpcmade.freebsd
  489. ZIPSUFFIX=freebsd
  490. endif
  491. ifeq ($(OS_TARGET),netbsd)
  492. BATCHEXT=.sh
  493. EXEEXT=
  494. HASSHAREDLIB=1
  495. FPCMADE=fpcmade.netbsd
  496. ZIPSUFFIX=netbsd
  497. endif
  498. ifeq ($(OS_TARGET),openbsd)
  499. BATCHEXT=.sh
  500. EXEEXT=
  501. HASSHAREDLIB=1
  502. FPCMADE=fpcmade.openbsd
  503. ZIPSUFFIX=openbsd
  504. endif
  505. ifeq ($(OS_TARGET),win32)
  506. SHAREDLIBEXT=.dll
  507. FPCMADE=fpcmade.w32
  508. ZIPSUFFIX=w32
  509. endif
  510. ifeq ($(OS_TARGET),os2)
  511. BATCHEXT=.cmd
  512. AOUTEXT=.out
  513. STATICLIBPREFIX=
  514. SHAREDLIBEXT=.dll
  515. FPCMADE=fpcmade.os2
  516. ZIPSUFFIX=os2
  517. ECHO=echo
  518. endif
  519. ifeq ($(OS_TARGET),emx)
  520. BATCHEXT=.cmd
  521. AOUTEXT=.out
  522. STATICLIBPREFIX=
  523. SHAREDLIBEXT=.dll
  524. FPCMADE=fpcmade.emx
  525. ZIPSUFFIX=emx
  526. ECHO=echo
  527. endif
  528. ifeq ($(OS_TARGET),amiga)
  529. EXEEXT=
  530. SHAREDLIBEXT=.library
  531. FPCMADE=fpcmade.amg
  532. endif
  533. ifeq ($(OS_TARGET),morphos)
  534. EXEEXT=
  535. SHAREDLIBEXT=.library
  536. FPCMADE=fpcmade.mos
  537. endif
  538. ifeq ($(OS_TARGET),atari)
  539. EXEEXT=.ttp
  540. FPCMADE=fpcmade.ata
  541. endif
  542. ifeq ($(OS_TARGET),beos)
  543. BATCHEXT=.sh
  544. EXEEXT=
  545. FPCMADE=fpcmade.be
  546. ZIPSUFFIX=be
  547. endif
  548. ifeq ($(OS_TARGET),sunos)
  549. BATCHEXT=.sh
  550. EXEEXT=
  551. FPCMADE=fpcmade.sun
  552. ZIPSUFFIX=sun
  553. endif
  554. ifeq ($(OS_TARGET),qnx)
  555. BATCHEXT=.sh
  556. EXEEXT=
  557. FPCMADE=fpcmade.qnx
  558. ZIPSUFFIX=qnx
  559. endif
  560. ifeq ($(OS_TARGET),netware)
  561. EXEEXT=.nlm
  562. STATICLIBPREFIX=
  563. FPCMADE=fpcmade.nw
  564. ZIPSUFFIX=nw
  565. endif
  566. ifeq ($(OS_TARGET),macos)
  567. BATCHEXT=
  568. EXEEXT=
  569. FPCMADE=fpcmade.macos
  570. ZIPSUFFIX=macos
  571. DEBUGSYMEXT=.xcoff
  572. endif
  573. ifeq ($(OS_TARGET),darwin)
  574. BATCHEXT=.sh
  575. EXEEXT=
  576. HASSHAREDLIB=1
  577. FPCMADE=fpcmade.darwin
  578. ZIPSUFFIX=darwin
  579. endif
  580. else
  581. ifeq ($(OS_TARGET),go32v1)
  582. PPUEXT=.pp1
  583. OEXT=.o1
  584. ASMEXT=.s1
  585. SMARTEXT=.sl1
  586. STATICLIBEXT=.a1
  587. SHAREDLIBEXT=.so1
  588. STATICLIBPREFIX=
  589. FPCMADE=fpcmade.v1
  590. PACKAGESUFFIX=v1
  591. endif
  592. ifeq ($(OS_TARGET),go32v2)
  593. STATICLIBPREFIX=
  594. FPCMADE=fpcmade.dos
  595. ZIPSUFFIX=go32
  596. endif
  597. ifeq ($(OS_TARGET),watcom)
  598. STATICLIBPREFIX=
  599. FPCMADE=fpcmade.dos
  600. ZIPSUFFIX=watcom
  601. endif
  602. ifeq ($(OS_TARGET),linux)
  603. BATCHEXT=.sh
  604. EXEEXT=
  605. HASSHAREDLIB=1
  606. FPCMADE=fpcmade.lnx
  607. ZIPSUFFIX=linux
  608. endif
  609. ifeq ($(OS_TARGET),freebsd)
  610. BATCHEXT=.sh
  611. EXEEXT=
  612. HASSHAREDLIB=1
  613. FPCMADE=fpcmade.freebsd
  614. ZIPSUFFIX=freebsd
  615. endif
  616. ifeq ($(OS_TARGET),netbsd)
  617. BATCHEXT=.sh
  618. EXEEXT=
  619. HASSHAREDLIB=1
  620. FPCMADE=fpcmade.netbsd
  621. ZIPSUFFIX=netbsd
  622. endif
  623. ifeq ($(OS_TARGET),openbsd)
  624. BATCHEXT=.sh
  625. EXEEXT=
  626. HASSHAREDLIB=1
  627. FPCMADE=fpcmade.openbsd
  628. ZIPSUFFIX=openbsd
  629. endif
  630. ifeq ($(OS_TARGET),win32)
  631. PPUEXT=.ppw
  632. OEXT=.ow
  633. ASMEXT=.sw
  634. SMARTEXT=.slw
  635. STATICLIBEXT=.aw
  636. SHAREDLIBEXT=.dll
  637. FPCMADE=fpcmade.w32
  638. ZIPSUFFIX=w32
  639. endif
  640. ifeq ($(OS_TARGET),os2)
  641. BATCHEXT=.cmd
  642. PPUEXT=.ppo
  643. ASMEXT=.so2
  644. OEXT=.oo2
  645. AOUTEXT=.out
  646. SMARTEXT=.sl2
  647. STATICLIBPREFIX=
  648. STATICLIBEXT=.ao2
  649. SHAREDLIBEXT=.dll
  650. FPCMADE=fpcmade.os2
  651. ZIPSUFFIX=emx
  652. ECHO=echo
  653. endif
  654. ifeq ($(OS_TARGET),amiga)
  655. EXEEXT=
  656. PPUEXT=.ppu
  657. ASMEXT=.asm
  658. OEXT=.o
  659. SMARTEXT=.sl
  660. STATICLIBEXT=.a
  661. SHAREDLIBEXT=.library
  662. FPCMADE=fpcmade.amg
  663. endif
  664. ifeq ($(OS_TARGET),atari)
  665. PPUEXT=.ppu
  666. ASMEXT=.s
  667. OEXT=.o
  668. SMARTEXT=.sl
  669. STATICLIBEXT=.a
  670. EXEEXT=.ttp
  671. FPCMADE=fpcmade.ata
  672. endif
  673. ifeq ($(OS_TARGET),beos)
  674. BATCHEXT=.sh
  675. PPUEXT=.ppu
  676. ASMEXT=.s
  677. OEXT=.o
  678. SMARTEXT=.sl
  679. STATICLIBEXT=.a
  680. EXEEXT=
  681. FPCMADE=fpcmade.be
  682. ZIPSUFFIX=be
  683. endif
  684. ifeq ($(OS_TARGET),sunos)
  685. BATCHEXT=.sh
  686. PPUEXT=.ppu
  687. ASMEXT=.s
  688. OEXT=.o
  689. SMARTEXT=.sl
  690. STATICLIBEXT=.a
  691. EXEEXT=
  692. FPCMADE=fpcmade.sun
  693. ZIPSUFFIX=sun
  694. endif
  695. ifeq ($(OS_TARGET),qnx)
  696. BATCHEXT=.sh
  697. PPUEXT=.ppu
  698. ASMEXT=.s
  699. OEXT=.o
  700. SMARTEXT=.sl
  701. STATICLIBEXT=.a
  702. EXEEXT=
  703. FPCMADE=fpcmade.qnx
  704. ZIPSUFFIX=qnx
  705. endif
  706. ifeq ($(OS_TARGET),netware)
  707. STATICLIBPREFIX=
  708. PPUEXT=.ppu
  709. OEXT=.o
  710. ASMEXT=.s
  711. SMARTEXT=.sl
  712. STATICLIBEXT=.a
  713. SHAREDLIBEXT=.nlm
  714. FPCMADE=fpcmade.nw
  715. ZIPSUFFIX=nw
  716. EXEEXT=.nlm
  717. endif
  718. ifeq ($(OS_TARGET),macos)
  719. BATCHEXT=
  720. PPUEXT=.ppu
  721. ASMEXT=.s
  722. OEXT=.o
  723. SMARTEXT=.sl
  724. STATICLIBEXT=.a
  725. EXEEXT=
  726. DEBUGSYMEXT=.xcoff
  727. FPCMADE=fpcmade.macos
  728. endif
  729. endif
  730. ifndef ECHO
  731. ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
  732. ifeq ($(ECHO),)
  733. ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
  734. ifeq ($(ECHO),)
  735. ECHO= __missing_command__
  736. else
  737. ECHO:=$(firstword $(ECHO))
  738. endif
  739. else
  740. ECHO:=$(firstword $(ECHO))
  741. endif
  742. endif
  743. export ECHO
  744. ifndef DATE
  745. DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
  746. ifeq ($(DATE),)
  747. DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
  748. ifeq ($(DATE),)
  749. DATE= __missing_command__
  750. else
  751. DATE:=$(firstword $(DATE))
  752. endif
  753. else
  754. DATE:=$(firstword $(DATE))
  755. endif
  756. endif
  757. export DATE
  758. ifndef GINSTALL
  759. GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
  760. ifeq ($(GINSTALL),)
  761. GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
  762. ifeq ($(GINSTALL),)
  763. GINSTALL= __missing_command__
  764. else
  765. GINSTALL:=$(firstword $(GINSTALL))
  766. endif
  767. else
  768. GINSTALL:=$(firstword $(GINSTALL))
  769. endif
  770. endif
  771. export GINSTALL
  772. ifndef CPPROG
  773. CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
  774. ifeq ($(CPPROG),)
  775. CPPROG= __missing_command__
  776. else
  777. CPPROG:=$(firstword $(CPPROG))
  778. endif
  779. endif
  780. export CPPROG
  781. ifndef RMPROG
  782. RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
  783. ifeq ($(RMPROG),)
  784. RMPROG= __missing_command__
  785. else
  786. RMPROG:=$(firstword $(RMPROG))
  787. endif
  788. endif
  789. export RMPROG
  790. ifndef MVPROG
  791. MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
  792. ifeq ($(MVPROG),)
  793. MVPROG= __missing_command__
  794. else
  795. MVPROG:=$(firstword $(MVPROG))
  796. endif
  797. endif
  798. export MVPROG
  799. ifndef ECHOREDIR
  800. ifndef inUnix
  801. ECHOREDIR=echo
  802. else
  803. ECHOREDIR=$(ECHO)
  804. endif
  805. endif
  806. ifndef COPY
  807. COPY:=$(CPPROG) -fp
  808. endif
  809. ifndef COPYTREE
  810. COPYTREE:=$(CPPROG) -rfp
  811. endif
  812. ifndef MOVE
  813. MOVE:=$(MVPROG) -f
  814. endif
  815. ifndef DEL
  816. DEL:=$(RMPROG) -f
  817. endif
  818. ifndef DELTREE
  819. DELTREE:=$(RMPROG) -rf
  820. endif
  821. ifndef INSTALL
  822. ifdef inUnix
  823. INSTALL:=$(GINSTALL) -c -m 644
  824. else
  825. INSTALL:=$(COPY)
  826. endif
  827. endif
  828. ifndef INSTALLEXE
  829. ifdef inUnix
  830. INSTALLEXE:=$(GINSTALL) -c -m 755
  831. else
  832. INSTALLEXE:=$(COPY)
  833. endif
  834. endif
  835. ifndef MKDIR
  836. MKDIR:=$(GINSTALL) -m 755 -d
  837. endif
  838. export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
  839. ifndef PPUMOVE
  840. PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
  841. ifeq ($(PPUMOVE),)
  842. PPUMOVE= __missing_command__
  843. else
  844. PPUMOVE:=$(firstword $(PPUMOVE))
  845. endif
  846. endif
  847. export PPUMOVE
  848. ifndef FPCMAKE
  849. FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
  850. ifeq ($(FPCMAKE),)
  851. FPCMAKE= __missing_command__
  852. else
  853. FPCMAKE:=$(firstword $(FPCMAKE))
  854. endif
  855. endif
  856. export FPCMAKE
  857. ifndef ZIPPROG
  858. ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
  859. ifeq ($(ZIPPROG),)
  860. ZIPPROG= __missing_command__
  861. else
  862. ZIPPROG:=$(firstword $(ZIPPROG))
  863. endif
  864. endif
  865. export ZIPPROG
  866. ifndef TARPROG
  867. TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
  868. ifeq ($(TARPROG),)
  869. TARPROG= __missing_command__
  870. else
  871. TARPROG:=$(firstword $(TARPROG))
  872. endif
  873. endif
  874. export TARPROG
  875. ASNAME=$(BINUTILSPREFIX)as
  876. LDNAME=$(BINUTILSPREFIX)ld
  877. ARNAME=$(BINUTILSPREFIX)ar
  878. RCNAME=$(BINUTILSPREFIX)rc
  879. ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
  880. ifeq ($(OS_TARGET),win32)
  881. ifeq ($(CROSSBINDIR),)
  882. ASNAME=asw
  883. LDNAME=ldw
  884. ARNAME=arw
  885. endif
  886. endif
  887. endif
  888. ifndef ASPROG
  889. ifdef CROSSBINDIR
  890. ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
  891. else
  892. ASPROG=$(ASNAME)
  893. endif
  894. endif
  895. ifndef LDPROG
  896. ifdef CROSSBINDIR
  897. LDPROG=$(CROSSBINDIR)/$(LDNAME)$(SRCEXEEXT)
  898. else
  899. LDPROG=$(LDNAME)
  900. endif
  901. endif
  902. ifndef RCPROG
  903. ifdef CROSSBINDIR
  904. RCPROG=$(CROSSBINDIR)/$(RCNAME)$(SRCEXEEXT)
  905. else
  906. RCPROG=$(RCNAME)
  907. endif
  908. endif
  909. ifndef ARPROG
  910. ifdef CROSSBINDIR
  911. ARPROG=$(CROSSBINDIR)/$(ARNAME)$(SRCEXEEXT)
  912. else
  913. ARPROG=$(ARNAME)
  914. endif
  915. endif
  916. AS=$(ASPROG)
  917. LD=$(LDPROG)
  918. RC=$(RCPROG)
  919. AR=$(ARPROG)
  920. PPAS=ppas$(SRCBATCHEXT)
  921. ifdef inUnix
  922. LDCONFIG=ldconfig
  923. else
  924. LDCONFIG=
  925. endif
  926. ifdef DATE
  927. DATESTR:=$(shell $(DATE) +%Y%m%d)
  928. else
  929. DATESTR=
  930. endif
  931. ifndef UPXPROG
  932. ifeq ($(OS_TARGET),go32v2)
  933. UPXPROG:=1
  934. endif
  935. ifeq ($(OS_TARGET),win32)
  936. UPXPROG:=1
  937. endif
  938. ifdef UPXPROG
  939. UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH))))
  940. ifeq ($(UPXPROG),)
  941. UPXPROG=
  942. else
  943. UPXPROG:=$(firstword $(UPXPROG))
  944. endif
  945. else
  946. UPXPROG=
  947. endif
  948. endif
  949. export UPXPROG
  950. ZIPOPT=-9
  951. ZIPEXT=.zip
  952. ifeq ($(USETAR),bz2)
  953. TAROPT=vI
  954. TAREXT=.tar.bz2
  955. else
  956. TAROPT=vz
  957. TAREXT=.tar.gz
  958. endif
  959. ifndef NOCPUDEF
  960. override FPCOPTDEF=$(CPU_TARGET)
  961. endif
  962. ifneq ($(OS_TARGET),$(OS_SOURCE))
  963. override FPCOPT+=-T$(OS_TARGET)
  964. endif
  965. ifeq ($(OS_SOURCE),openbsd)
  966. override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
  967. endif
  968. ifndef CROSSBOOTSTRAP
  969. ifneq ($(BINUTILSPREFIX),)
  970. override FPCOPT+=-XP$(BINUTILSPREFIX) -Xc
  971. endif
  972. ifneq ($(BINUTILSPREFIX),)
  973. override FPCOPT+=-Xr$(RLINKPATH)
  974. endif
  975. endif
  976. ifdef UNITDIR
  977. override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
  978. endif
  979. ifdef LIBDIR
  980. override FPCOPT+=$(addprefix -Fl,$(LIBDIR))
  981. endif
  982. ifdef OBJDIR
  983. override FPCOPT+=$(addprefix -Fo,$(OBJDIR))
  984. endif
  985. ifdef INCDIR
  986. override FPCOPT+=$(addprefix -Fi,$(INCDIR))
  987. endif
  988. ifdef LINKSMART
  989. override FPCOPT+=-XX
  990. endif
  991. ifdef CREATESMART
  992. override FPCOPT+=-CX
  993. endif
  994. ifdef DEBUG
  995. override FPCOPT+=-gl
  996. override FPCOPTDEF+=DEBUG
  997. endif
  998. ifdef RELEASE
  999. ifeq ($(CPU_TARGET),i386)
  1000. FPCCPUOPT:=-OG2p3
  1001. else
  1002. ifeq ($(CPU_TARGET),powerpc)
  1003. FPCCPUOPT:=-O1
  1004. else
  1005. FPCCPUOPT:=
  1006. endif
  1007. endif
  1008. override FPCOPT+=-Xs $(FPCCPUOPT) -n
  1009. override FPCOPTDEF+=RELEASE
  1010. endif
  1011. ifdef STRIP
  1012. override FPCOPT+=-Xs
  1013. endif
  1014. ifdef OPTIMIZE
  1015. ifeq ($(CPU_TARGET),i386)
  1016. override FPCOPT+=-OG2p3
  1017. endif
  1018. endif
  1019. ifdef VERBOSE
  1020. override FPCOPT+=-vwni
  1021. endif
  1022. ifdef COMPILER_OPTIONS
  1023. override FPCOPT+=$(COMPILER_OPTIONS)
  1024. endif
  1025. ifdef COMPILER_UNITDIR
  1026. override FPCOPT+=$(addprefix -Fu,$(COMPILER_UNITDIR))
  1027. endif
  1028. ifdef COMPILER_LIBRARYDIR
  1029. override FPCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR))
  1030. endif
  1031. ifdef COMPILER_OBJECTDIR
  1032. override FPCOPT+=$(addprefix -Fo,$(COMPILER_OBJECTDIR))
  1033. endif
  1034. ifdef COMPILER_INCLUDEDIR
  1035. override FPCOPT+=$(addprefix -Fi,$(COMPILER_INCLUDEDIR))
  1036. endif
  1037. ifdef CROSSBINDIR
  1038. override FPCOPT+=-FD$(CROSSBINDIR)
  1039. endif
  1040. ifdef COMPILER_TARGETDIR
  1041. override FPCOPT+=-FE$(COMPILER_TARGETDIR)
  1042. ifeq ($(COMPILER_TARGETDIR),.)
  1043. override TARGETDIRPREFIX=
  1044. else
  1045. override TARGETDIRPREFIX=$(COMPILER_TARGETDIR)/
  1046. endif
  1047. endif
  1048. ifdef COMPILER_UNITTARGETDIR
  1049. override FPCOPT+=-FU$(COMPILER_UNITTARGETDIR)
  1050. ifeq ($(COMPILER_UNITTARGETDIR),.)
  1051. override UNITTARGETDIRPREFIX=
  1052. else
  1053. override UNITTARGETDIRPREFIX=$(COMPILER_UNITTARGETDIR)/
  1054. endif
  1055. else
  1056. ifdef COMPILER_TARGETDIR
  1057. override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR)
  1058. override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)
  1059. endif
  1060. endif
  1061. ifeq ($(OS_TARGET),linux)
  1062. ifeq ($(FPC_VERSION),1.0.6)
  1063. override FPCOPTDEF+=HASUNIX
  1064. endif
  1065. endif
  1066. ifdef OPT
  1067. override FPCOPT+=$(OPT)
  1068. endif
  1069. ifdef FPCOPTDEF
  1070. override FPCOPT+=$(addprefix -d,$(FPCOPTDEF))
  1071. endif
  1072. ifdef CFGFILE
  1073. override FPCOPT+=@$(CFGFILE)
  1074. endif
  1075. ifdef USEENV
  1076. override FPCEXTCMD:=$(FPCOPT)
  1077. override FPCOPT:=!FPCEXTCMD
  1078. export FPCEXTCMD
  1079. endif
  1080. override COMPILER:=$(FPC) $(FPCOPT)
  1081. ifeq (,$(findstring -s ,$(COMPILER)))
  1082. EXECPPAS=
  1083. else
  1084. ifeq ($(FULL_SOURCE),$(FULL_TARGET))
  1085. EXECPPAS:=@$(PPAS)
  1086. endif
  1087. endif
  1088. .PHONY: fpc_loaders
  1089. ifneq ($(TARGET_LOADERS),)
  1090. override ALLTARGET+=fpc_loaders
  1091. override CLEANTARGET+=fpc_loaders_clean
  1092. override INSTALLTARGET+=fpc_loaders_install
  1093. override LOADEROFILES:=$(addsuffix $(OEXT),$(TARGET_LOADERS))
  1094. endif
  1095. %$(OEXT): %$(LOADEREXT)
  1096. $(AS) -o $*$(OEXT) $<
  1097. fpc_loaders: $(LOADEROFILES)
  1098. fpc_loaders_clean:
  1099. -$(DEL) $(LOADEROFILES)
  1100. fpc_loaders_install:
  1101. $(MKDIR) $(INSTALL_UNITDIR)
  1102. $(INSTALL) $(LOADEROFILES) $(INSTALL_UNITDIR)
  1103. .PHONY: fpc_units
  1104. ifneq ($(TARGET_UNITS),)
  1105. override ALLTARGET+=fpc_units
  1106. override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
  1107. override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
  1108. override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
  1109. override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
  1110. endif
  1111. fpc_units: $(UNITPPUFILES)
  1112. ifdef TARGET_RSTS
  1113. override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
  1114. override CLEANRSTFILES+=$(RSTFILES)
  1115. endif
  1116. .PHONY: fpc_all fpc_smart fpc_debug fpc_release
  1117. $(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET)
  1118. @$(ECHOREDIR) Compiled > $(FPCMADE)
  1119. fpc_all: $(FPCMADE)
  1120. fpc_smart:
  1121. $(MAKE) all LINKSMART=1 CREATESMART=1
  1122. fpc_debug:
  1123. $(MAKE) all DEBUG=1
  1124. fpc_release:
  1125. $(MAKE) all RELEASE=1
  1126. .SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
  1127. %$(PPUEXT): %.pp
  1128. $(COMPILER) $<
  1129. $(EXECPPAS)
  1130. %$(PPUEXT): %.pas
  1131. $(COMPILER) $<
  1132. $(EXECPPAS)
  1133. %$(EXEEXT): %.pp
  1134. $(COMPILER) $<
  1135. $(EXECPPAS)
  1136. %$(EXEEXT): %.pas
  1137. $(COMPILER) $<
  1138. $(EXECPPAS)
  1139. %$(EXEEXT): %.lpr
  1140. $(COMPILER) $<
  1141. $(EXECPPAS)
  1142. %$(EXEEXT): %.dpr
  1143. $(COMPILER) $<
  1144. $(EXECPPAS)
  1145. %.res: %.rc
  1146. windres -i $< -o $@
  1147. vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  1148. vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  1149. vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  1150. vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  1151. vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
  1152. .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
  1153. ifdef INSTALL_UNITS
  1154. override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))
  1155. endif
  1156. ifdef INSTALL_BUILDUNIT
  1157. override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPPUFILES))
  1158. endif
  1159. ifdef INSTALLPPUFILES
  1160. override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
  1161. override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILES))
  1162. override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILES)))
  1163. override INSTALL_CREATEPACKAGEFPC=1
  1164. endif
  1165. ifdef INSTALLEXEFILES
  1166. override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(INSTALLEXEFILES))
  1167. endif
  1168. fpc_install: all $(INSTALLTARGET)
  1169. ifdef INSTALLEXEFILES
  1170. $(MKDIR) $(INSTALL_BINDIR)
  1171. ifdef UPXPROG
  1172. -$(UPXPROG) $(INSTALLEXEFILES)
  1173. endif
  1174. $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR)
  1175. endif
  1176. ifdef INSTALL_CREATEPACKAGEFPC
  1177. ifdef FPCMAKE
  1178. ifdef PACKAGE_VERSION
  1179. ifneq ($(wildcard Makefile.fpc),)
  1180. $(FPCMAKE) -p -T$(OS_TARGET) Makefile.fpc
  1181. $(MKDIR) $(INSTALL_UNITDIR)
  1182. $(INSTALL) Package.fpc $(INSTALL_UNITDIR)
  1183. endif
  1184. endif
  1185. endif
  1186. endif
  1187. ifdef INSTALLPPUFILES
  1188. $(MKDIR) $(INSTALL_UNITDIR)
  1189. $(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
  1190. ifneq ($(INSTALLPPULINKFILES),)
  1191. $(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
  1192. endif
  1193. ifneq ($(wildcard $(LIB_FULLNAME)),)
  1194. $(MKDIR) $(INSTALL_LIBDIR)
  1195. $(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
  1196. ifdef inUnix
  1197. ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
  1198. endif
  1199. endif
  1200. endif
  1201. ifdef INSTALL_FILES
  1202. $(MKDIR) $(INSTALL_DATADIR)
  1203. $(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
  1204. endif
  1205. fpc_sourceinstall: distclean
  1206. $(MKDIR) $(INSTALL_SOURCEDIR)
  1207. $(COPYTREE) $(BASEDIR)/* $(INSTALL_SOURCEDIR)
  1208. fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
  1209. ifdef HASEXAMPLES
  1210. $(MKDIR) $(INSTALL_EXAMPLEDIR)
  1211. endif
  1212. ifdef EXAMPLESOURCEFILES
  1213. $(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
  1214. endif
  1215. ifdef TARGET_EXAMPLEDIRS
  1216. $(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
  1217. endif
  1218. .PHONY: fpc_clean fpc_cleanall fpc_distclean
  1219. ifdef EXEFILES
  1220. override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
  1221. endif
  1222. ifdef CLEAN_UNITS
  1223. override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
  1224. endif
  1225. ifdef CLEANPPUFILES
  1226. override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
  1227. ifdef DEBUGSYMEXT
  1228. override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
  1229. endif
  1230. override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
  1231. override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
  1232. endif
  1233. fpc_clean: $(CLEANTARGET)
  1234. ifdef CLEANEXEFILES
  1235. -$(DEL) $(CLEANEXEFILES)
  1236. endif
  1237. ifdef CLEANPPUFILES
  1238. -$(DEL) $(CLEANPPUFILES)
  1239. endif
  1240. ifneq ($(CLEANPPULINKFILES),)
  1241. -$(DEL) $(CLEANPPULINKFILES)
  1242. endif
  1243. ifdef CLEANRSTFILES
  1244. -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
  1245. endif
  1246. ifdef CLEAN_FILES
  1247. -$(DEL) $(CLEAN_FILES)
  1248. endif
  1249. ifdef LIB_NAME
  1250. -$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
  1251. endif
  1252. -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
  1253. -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
  1254. fpc_distclean: clean
  1255. ifdef COMPILER_UNITTARGETDIR
  1256. TARGETDIRCLEAN=fpc_clean
  1257. endif
  1258. fpc_cleanall: $(CLEANTARGET) $(TARGETDIRCLEAN)
  1259. ifdef CLEANEXEFILES
  1260. -$(DEL) $(CLEANEXEFILES)
  1261. endif
  1262. -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
  1263. -$(DELTREE) *$(SMARTEXT)
  1264. -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
  1265. -$(DEL) *_ppas$(BATCHEXT)
  1266. ifdef AOUTEXT
  1267. -$(DEL) *$(AOUTEXT)
  1268. endif
  1269. ifdef DEBUGSYMEXT
  1270. -$(DEL) *$(DEBUGSYMEXT)
  1271. endif
  1272. .PHONY: fpc_baseinfo
  1273. override INFORULES+=fpc_baseinfo
  1274. fpc_baseinfo:
  1275. @$(ECHO)
  1276. @$(ECHO) == Package info ==
  1277. @$(ECHO) Package Name..... $(PACKAGE_NAME)
  1278. @$(ECHO) Package Version.. $(PACKAGE_VERSION)
  1279. @$(ECHO)
  1280. @$(ECHO) == Configuration info ==
  1281. @$(ECHO)
  1282. @$(ECHO) FPC.......... $(FPC)
  1283. @$(ECHO) FPC Version.. $(FPC_VERSION)
  1284. @$(ECHO) Source CPU... $(CPU_SOURCE)
  1285. @$(ECHO) Target CPU... $(CPU_TARGET)
  1286. @$(ECHO) Source OS.... $(OS_SOURCE)
  1287. @$(ECHO) Target OS.... $(OS_TARGET)
  1288. @$(ECHO) Full Source.. $(FULL_SOURCE)
  1289. @$(ECHO) Full Target.. $(FULL_TARGET)
  1290. @$(ECHO)
  1291. @$(ECHO) == Directory info ==
  1292. @$(ECHO)
  1293. @$(ECHO) Required pkgs... $(REQUIRE_PACKAGES)
  1294. @$(ECHO)
  1295. @$(ECHO) Basedir......... $(BASEDIR)
  1296. @$(ECHO) FPCDir.......... $(FPCDIR)
  1297. @$(ECHO) CrossBinDir..... $(CROSSBINDIR)
  1298. @$(ECHO) UnitsDir........ $(UNITSDIR)
  1299. @$(ECHO) PackagesDir..... $(PACKAGESDIR)
  1300. @$(ECHO)
  1301. @$(ECHO) GCC library..... $(GCCLIBDIR)
  1302. @$(ECHO) Other library... $(OTHERLIBDIR)
  1303. @$(ECHO)
  1304. @$(ECHO) == Tools info ==
  1305. @$(ECHO)
  1306. @$(ECHO) As........ $(AS)
  1307. @$(ECHO) Ld........ $(LD)
  1308. @$(ECHO) Ar........ $(AR)
  1309. @$(ECHO) Rc........ $(RC)
  1310. @$(ECHO)
  1311. @$(ECHO) Mv........ $(MVPROG)
  1312. @$(ECHO) Cp........ $(CPPROG)
  1313. @$(ECHO) Rm........ $(RMPROG)
  1314. @$(ECHO) GInstall.. $(GINSTALL)
  1315. @$(ECHO) Echo...... $(ECHO)
  1316. @$(ECHO) Shell..... $(SHELL)
  1317. @$(ECHO) Date...... $(DATE)
  1318. @$(ECHO) FPCMake... $(FPCMAKE)
  1319. @$(ECHO) PPUMove... $(PPUMOVE)
  1320. @$(ECHO) Upx....... $(UPXPROG)
  1321. @$(ECHO) Zip....... $(ZIPPROG)
  1322. @$(ECHO)
  1323. @$(ECHO) == Object info ==
  1324. @$(ECHO)
  1325. @$(ECHO) Target Loaders........ $(TARGET_LOADERS)
  1326. @$(ECHO) Target Units.......... $(TARGET_UNITS)
  1327. @$(ECHO) Target Implicit Units. $(TARGET_IMPLICITUNITS)
  1328. @$(ECHO) Target Programs....... $(TARGET_PROGRAMS)
  1329. @$(ECHO) Target Dirs........... $(TARGET_DIRS)
  1330. @$(ECHO) Target Examples....... $(TARGET_EXAMPLES)
  1331. @$(ECHO) Target ExampleDirs.... $(TARGET_EXAMPLEDIRS)
  1332. @$(ECHO)
  1333. @$(ECHO) Clean Units......... $(CLEAN_UNITS)
  1334. @$(ECHO) Clean Files......... $(CLEAN_FILES)
  1335. @$(ECHO)
  1336. @$(ECHO) Install Units....... $(INSTALL_UNITS)
  1337. @$(ECHO) Install Files....... $(INSTALL_FILES)
  1338. @$(ECHO)
  1339. @$(ECHO) == Install info ==
  1340. @$(ECHO)
  1341. @$(ECHO) DateStr.............. $(DATESTR)
  1342. @$(ECHO) ZipPrefix............ $(ZIPPREFIX)
  1343. @$(ECHO) ZipSuffix............ $(ZIPSUFFIX)
  1344. @$(ECHO) Install FPC Package.. $(INSTALL_FPCPACKAGE)
  1345. @$(ECHO)
  1346. @$(ECHO) Install base dir..... $(INSTALL_BASEDIR)
  1347. @$(ECHO) Install binary dir... $(INSTALL_BINDIR)
  1348. @$(ECHO) Install library dir.. $(INSTALL_LIBDIR)
  1349. @$(ECHO) Install units dir.... $(INSTALL_UNITDIR)
  1350. @$(ECHO) Install source dir... $(INSTALL_SOURCEDIR)
  1351. @$(ECHO) Install doc dir...... $(INSTALL_DOCDIR)
  1352. @$(ECHO) Install example dir.. $(INSTALL_EXAMPLEDIR)
  1353. @$(ECHO) Install data dir..... $(INSTALL_DATADIR)
  1354. @$(ECHO)
  1355. @$(ECHO) Dist destination dir. $(DIST_DESTDIR)
  1356. @$(ECHO) Dist zip name........ $(DIST_ZIPNAME)
  1357. @$(ECHO)
  1358. .PHONY: fpc_info
  1359. fpc_info: $(INFORULES)
  1360. .PHONY: fpc_makefile fpc_makefiles fpc_makefile_sub1 fpc_makefile_sub2 \
  1361. fpc_makefile_dirs
  1362. fpc_makefile:
  1363. $(FPCMAKE) -w -T$(OS_TARGET) Makefile.fpc
  1364. fpc_makefile_sub1:
  1365. ifdef TARGET_DIRS
  1366. $(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
  1367. endif
  1368. ifdef TARGET_EXAMPLEDIRS
  1369. $(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_EXAMPLEDIRS))
  1370. endif
  1371. fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS))
  1372. fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2
  1373. fpc_makefiles: fpc_makefile fpc_makefile_dirs
  1374. all: fpc_all
  1375. debug: fpc_debug
  1376. smart: fpc_smart
  1377. release: fpc_release
  1378. examples:
  1379. shared:
  1380. install: fpc_install
  1381. sourceinstall: fpc_sourceinstall
  1382. exampleinstall: fpc_exampleinstall
  1383. distinstall:
  1384. zipinstall:
  1385. zipsourceinstall:
  1386. zipexampleinstall:
  1387. zipdistinstall:
  1388. clean: fpc_clean
  1389. distclean: fpc_distclean
  1390. cleanall: fpc_cleanall
  1391. info: fpc_info
  1392. makefiles: fpc_makefiles
  1393. .PHONY: all debug smart release examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
  1394. ifneq ($(wildcard fpcmake.loc),)
  1395. include fpcmake.loc
  1396. endif
  1397. include $(INC)/makefile.inc
  1398. SYSINCDEPS=$(addprefix $(INC)/,$(SYSINCNAMES))
  1399. include $(PROCINC)/makefile.cpu
  1400. SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
  1401. SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
  1402. prt0$(OEXT) : $(CPU_TARGET)/prt0.as
  1403. $(AS) -o prt0$(OEXT) $(CPU_TARGET)/prt0.as
  1404. dllprt0$(OEXT) : $(CPU_TARGET)/dllprt0.as
  1405. $(AS) -o dllprt0$(OEXT) $(CPU_TARGET)/dllprt0.as
  1406. gprt0$(OEXT) : $(CPU_TARGET)/gprt0.as
  1407. $(AS) -o gprt0$(OEXT) $(CPU_TARGET)/gprt0.as
  1408. cprt0$(OEXT) : $(CPU_TARGET)/cprt0.as
  1409. $(AS) -o cprt0$(OEXT) $(CPU_TARGET)/cprt0.as
  1410. cprt21$(OEXT) : $(CPU_TARGET)/cprt21.as
  1411. $(AS) -o cprt21$(OEXT) $(CPU_TARGET)/cprt21.as
  1412. gprt21$(OEXT) : $(CPU_TARGET)/gprt21.as
  1413. $(AS) -o gprt21$(OEXT) $(CPU_TARGET)/gprt21.as
  1414. $(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pp sysconst.inc systypes.inc $(SYSDEPS)
  1415. $(COMPILER) -Us -Sg $(SYSTEMUNIT).pp
  1416. systhrds$(PPUEXT): systhrds.pp $(INC)/threadh.inc $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT)
  1417. objpas$(PPUEXT): $(OBJPASDIR)/objpas.pp $(INC)/except.inc $(SYSTEMUNIT)$(PPUEXT)
  1418. $(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/objpas.pp
  1419. dateutils$(PPUEXT): $(OBJPASDIR)/dateutils.pp $(SYSTEMUNIT)$(PPUEXT)
  1420. $(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/dateutils.pp
  1421. strings$(PPUEXT) : $(INC)/strings.pp $(INC)/stringsi.inc\
  1422. $(PROCINC)/strings.inc $(PROCINC)/stringss.inc\
  1423. $(SYSTEMUNIT)$(PPUEXT)
  1424. unix$(PPUEXT) : unix.pp strings$(PPUEXT) baseunix$(PPUEXT) $(INC)/textrec.inc $(INC)/filerec.inc \
  1425. sysc11.inc systypes.inc sysconst.inc $(UNIXINC)/timezone.inc $(SYSTEMUNIT)$(PPUEXT) \
  1426. unixsysc.inc
  1427. unixtype$(PPUEXT) : $(UNIXINC)/unixtype.pp ptypes.inc ctypes.inc $(SYSTEMUNIT)$(PPUEXT)
  1428. baseunix$(PPUEXT) : errno.inc bunxtype.inc ptypes.inc ctypes.inc \
  1429. signal.inc $(UNIXINC)/bunxh.inc bunxmain.inc ostypes.inc \
  1430. bunxfunc.inc $(CPU_TARGET)/syscallh.inc $(CPU_TARGET)/sysnr.inc \
  1431. ostypes.inc ossysch.inc bunxmacr.inc $(UNIXINC)/gensigset.inc \
  1432. $(UNIXINC)/genfuncs.inc $(SYSTEMUNIT)$(PPUEXT)
  1433. ports$(PPUEXT) : ports.pp unix$(PPUEXT) objpas$(PPUEXT)
  1434. dl$(PPUEXT) : $(UNIXINC)/dl.pp $(SYSTEMUNIT)$(PPUEXT)
  1435. dynlibs$(PPUEXT) : $(INC)/dynlibs.pp $(UNIXINC)/dynlibs.inc dl$(PPUEXT) objpas$(PPUEXT)
  1436. dos$(PPUEXT) : dos.pp $(INC)/filerec.inc $(INC)/textrec.inc strings$(PPUEXT) \
  1437. unix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1438. crt$(PPUEXT) : crt.pp $(INC)/textrec.inc unix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1439. objects$(PPUEXT) : $(INC)/objects.pp $(SYSTEMUNIT)$(PPUEXT)
  1440. printer$(PPUEXT) : printer.pp $(INC)/textrec.inc unix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1441. include $(GRAPHDIR)/makefile.inc
  1442. GRAPHINCDEPS=$(addprefix $(GRAPHDIR)/,$(GRAPHINCNAMES))
  1443. graph$(PPUEXT) : graph.pp unix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
  1444. $(GRAPHINCDEPS) $(UNIXINC)/graph16.inc
  1445. $(COMPILER) -I$(GRAPHDIR) $(UNIXINC)/graph.pp
  1446. ggigraph$(PPUEXT) : $(UNIXINC)/ggigraph.pp unix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
  1447. $(GRAPHINCDEPS)
  1448. $(COMPILER) -I$(GRAPHDIR) $(UNIXINC)/ggigraph.pp
  1449. sysutils$(PPUEXT) : $(UNIXINC)/sysutils.pp $(wildcard $(OBJPASDIR)/sysutils/*.inc) \
  1450. objpas$(PPUEXT) unix$(PPUEXT) errors$(PPUEXT) sysconst$(PPUEXT)
  1451. $(COMPILER) -Fi$(OBJPASDIR)/sysutils $(UNIXINC)/sysutils.pp
  1452. classes$(PPUEXT) : classes.pp $(wildcard $(OBJPASDIR)/classes/*.inc) \
  1453. sysutils$(PPUEXT) typinfo$(PPUEXT) rtlconst$(PPUEXT)
  1454. $(COMPILER) -Fi$(OBJPASDIR)/classes classes.pp
  1455. typinfo$(PPUEXT): $(OBJPASDIR)/typinfo.pp objpas$(PPUEXT) sysutils$(PPUEXT)
  1456. $(COMPILER) -Sg $(OBJPASDIR)/typinfo.pp
  1457. math$(PPUEXT): $(OBJPASDIR)/math.pp objpas$(PPUEXT) sysutils$(PPUEXT)
  1458. $(COMPILER) $(OBJPASDIR)/math.pp
  1459. gettext$(PPUEXT): $(OBJPASDIR)/gettext.pp objpas$(PPUEXT) sysutils$(PPUEXT)
  1460. $(COMPILER) $(OBJPASDIR)/gettext.pp
  1461. varutils$(PPUEXT) : $(OBJPASDIR)/cvarutil.inc $(OBJPASDIR)/varutils.inc \
  1462. $(OBJPASDIR)/varutilh.inc varutils.pp sysutils$(PPUEXT)
  1463. $(COMPILER) -I$(OBJPASDIR) $(UNIXINC)/varutils.pp
  1464. variants$(PPUEXT) : $(INC)/variants.pp varutils$(PPUEXT)
  1465. types$(PPUEXT) : $(OBJPASDIR)/types.pp objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1466. $(COMPILER) $(OBJPASDIR)/types.pp
  1467. sysconst$(PPUEXT) : $(OBJPASDIR)/sysconst.pp objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1468. $(COMPILER) $(OBJPASDIR)/sysconst.pp
  1469. rtlconst$(PPUEXT) : $(OBJPASDIR)/rtlconst.pp objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1470. $(COMPILER) $(OBJPASDIR)/rtlconst.pp
  1471. strutils$(PPUEXT) : $(OBJPASDIR)/strutils.pp objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
  1472. sysutils$(PPUEXT)
  1473. $(COMPILER) $(OBJPASDIR)/strutils.pp
  1474. macpas$(PPUEXT) : $(INC)/macpas.pp $(SYSTEMUNIT)$(PPUEXT)
  1475. $(COMPILER) $(INC)/macpas.pp $(REDIR)
  1476. cpu$(PPUEXT) : $(PROCINC)/cpu.pp $(SYSTEMUNIT)$(PPUEXT)
  1477. mmx$(PPUEXT) : $(PROCINC)/mmx.pp cpu$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1478. getopts$(PPUEXT) : $(INC)/getopts.pp $(SYSTEMUNIT)$(PPUEXT)
  1479. heaptrc$(PPUEXT) : $(INC)/heaptrc.pp $(SYSTEMUNIT)$(PPUEXT)
  1480. $(COMPILER) -Sg $(INC)/heaptrc.pp
  1481. lineinfo$(PPUEXT) : $(INC)/lineinfo.pp $(SYSTEMUNIT)$(PPUEXT)
  1482. charset$(PPUEXT) : $(INC)/charset.pp $(SYSTEMUNIT)$(PPUEXT)
  1483. ucomplex$(PPUEXT) : $(INC)/ucomplex.pp math$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1484. sockets$(PPUEXT) : sockets.pp $(INC)/textrec.inc $(INC)/filerec.inc \
  1485. unixsock.inc unix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1486. errors$(PPUEXT) : errors.pp strings$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1487. ipc$(PPUEXT) : ipc.pp unix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1488. terminfo$(PPUEXT) : terminfo.pp unix$(PPUEXT)
  1489. callspec$(PPUEXT) : $(INC)/callspec.pp $(SYSTEMUNIT)$(PPUEXT)
  1490. cmem$(PPUEXT) : $(INC)/cmem.pp $(SYSTEMUNIT)$(PPUEXT)
  1491. cthreads$(PPUEXT) : $(UNIXINC)/cthreads.pp $(SYSTEMUNIT)$(PPUEXT) systhrds$(PPUEXT)
  1492. gpm$(PPUEXT): $(UNIXINC)/gpm.pp unix$(PPUEXT) baseunix$(PPUEXT) sockets$(PPUEXT)
  1493. $(COMPILER) -Sg $(UNIXINC)/gpm.pp