Makefile 36 KB

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