Makefile 37 KB

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