Makefile 38 KB

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