Makefile 37 KB

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