Makefile 38 KB

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