Makefile 69 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020
  1. #
  2. # Don't edit, this file is generated by FPCMake Version 2.0.0 [2006/01/13]
  3. #
  4. default: all
  5. MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-emx i386-watcom i386-netwlibc i386-wince m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos powerpc-linux powerpc-netbsd powerpc-macos powerpc-darwin powerpc-morphos sparc-linux sparc-netbsd sparc-solaris x86_64-linux x86_64-freebsd x86_64-win64 arm-linux arm-wince powerpc64-linux
  6. BSDs = freebsd netbsd openbsd darwin
  7. UNIXs = linux $(BSDs) solaris 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=$(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. COMMON=$(RTL)/common
  239. PROCINC=$(RTL)/$(CPU_TARGET)
  240. BSDINC=$(RTL)/bsd
  241. BSDPROCINC=$(BSDINC)/$(CPU_TARGET)
  242. OSPROCINC=$(RTL)/darwin/$(CPU_TARGET)
  243. UNIXINC=$(RTL)/unix
  244. UNITPREFIX=rtl
  245. ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
  246. SYSTEMUNIT=system
  247. override FPCOPT+=-dNOMOUSE
  248. else
  249. SYSTEMUNIT="Error: Darwin is not supported for 1.0"
  250. endif
  251. ifdef RELEASE
  252. override FPCOPT+=-Ur
  253. endif
  254. override FPCOPT+=-dFPC_USE_LIBC
  255. OBJPASDIR=$(RTL)/objpas
  256. GRAPHDIR=$(INC)/graph
  257. ifndef USELIBGGI
  258. USELIBGGI=NO
  259. endif
  260. ifeq ($(FULL_TARGET),i386-linux)
  261. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  262. endif
  263. ifeq ($(FULL_TARGET),i386-go32v2)
  264. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  265. endif
  266. ifeq ($(FULL_TARGET),i386-win32)
  267. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  268. endif
  269. ifeq ($(FULL_TARGET),i386-os2)
  270. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  271. endif
  272. ifeq ($(FULL_TARGET),i386-freebsd)
  273. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  274. endif
  275. ifeq ($(FULL_TARGET),i386-beos)
  276. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  277. endif
  278. ifeq ($(FULL_TARGET),i386-netbsd)
  279. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  280. endif
  281. ifeq ($(FULL_TARGET),i386-solaris)
  282. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  283. endif
  284. ifeq ($(FULL_TARGET),i386-qnx)
  285. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  286. endif
  287. ifeq ($(FULL_TARGET),i386-netware)
  288. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  289. endif
  290. ifeq ($(FULL_TARGET),i386-openbsd)
  291. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  292. endif
  293. ifeq ($(FULL_TARGET),i386-wdosx)
  294. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  295. endif
  296. ifeq ($(FULL_TARGET),i386-emx)
  297. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  298. endif
  299. ifeq ($(FULL_TARGET),i386-watcom)
  300. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  301. endif
  302. ifeq ($(FULL_TARGET),i386-netwlibc)
  303. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  304. endif
  305. ifeq ($(FULL_TARGET),i386-wince)
  306. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  307. endif
  308. ifeq ($(FULL_TARGET),m68k-linux)
  309. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  310. endif
  311. ifeq ($(FULL_TARGET),m68k-freebsd)
  312. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  313. endif
  314. ifeq ($(FULL_TARGET),m68k-netbsd)
  315. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  316. endif
  317. ifeq ($(FULL_TARGET),m68k-amiga)
  318. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  319. endif
  320. ifeq ($(FULL_TARGET),m68k-atari)
  321. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  322. endif
  323. ifeq ($(FULL_TARGET),m68k-openbsd)
  324. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  325. endif
  326. ifeq ($(FULL_TARGET),m68k-palmos)
  327. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  328. endif
  329. ifeq ($(FULL_TARGET),powerpc-linux)
  330. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  331. endif
  332. ifeq ($(FULL_TARGET),powerpc-netbsd)
  333. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  334. endif
  335. ifeq ($(FULL_TARGET),powerpc-macos)
  336. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  337. endif
  338. ifeq ($(FULL_TARGET),powerpc-darwin)
  339. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  340. endif
  341. ifeq ($(FULL_TARGET),powerpc-morphos)
  342. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  343. endif
  344. ifeq ($(FULL_TARGET),sparc-linux)
  345. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  346. endif
  347. ifeq ($(FULL_TARGET),sparc-netbsd)
  348. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  349. endif
  350. ifeq ($(FULL_TARGET),sparc-solaris)
  351. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  352. endif
  353. ifeq ($(FULL_TARGET),x86_64-linux)
  354. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  355. endif
  356. ifeq ($(FULL_TARGET),x86_64-freebsd)
  357. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  358. endif
  359. ifeq ($(FULL_TARGET),x86_64-win64)
  360. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  361. endif
  362. ifeq ($(FULL_TARGET),arm-linux)
  363. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  364. endif
  365. ifeq ($(FULL_TARGET),arm-wince)
  366. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  367. endif
  368. ifeq ($(FULL_TARGET),powerpc64-linux)
  369. override TARGET_UNITS+=$(SYSTEMUNIT) unixtype ctypes objpas macpas strings sysctl baseunix unixutil unix initc cmem matrix dynlibs dos dl objects printer sockets sysutils typinfo classes math varutils charset ucomplex getopts heaptrc lineinfo errors terminfo termio video crt mouse keyboard console variants types sysctl dateutils sysconst cthreads strutils rtlconsts cwstring fpmkunit
  370. endif
  371. ifeq ($(FULL_TARGET),i386-linux)
  372. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  373. endif
  374. ifeq ($(FULL_TARGET),i386-go32v2)
  375. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  376. endif
  377. ifeq ($(FULL_TARGET),i386-win32)
  378. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  379. endif
  380. ifeq ($(FULL_TARGET),i386-os2)
  381. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  382. endif
  383. ifeq ($(FULL_TARGET),i386-freebsd)
  384. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  385. endif
  386. ifeq ($(FULL_TARGET),i386-beos)
  387. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  388. endif
  389. ifeq ($(FULL_TARGET),i386-netbsd)
  390. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  391. endif
  392. ifeq ($(FULL_TARGET),i386-solaris)
  393. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  394. endif
  395. ifeq ($(FULL_TARGET),i386-qnx)
  396. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  397. endif
  398. ifeq ($(FULL_TARGET),i386-netware)
  399. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  400. endif
  401. ifeq ($(FULL_TARGET),i386-openbsd)
  402. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  403. endif
  404. ifeq ($(FULL_TARGET),i386-wdosx)
  405. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  406. endif
  407. ifeq ($(FULL_TARGET),i386-emx)
  408. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  409. endif
  410. ifeq ($(FULL_TARGET),i386-watcom)
  411. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  412. endif
  413. ifeq ($(FULL_TARGET),i386-netwlibc)
  414. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  415. endif
  416. ifeq ($(FULL_TARGET),i386-wince)
  417. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  418. endif
  419. ifeq ($(FULL_TARGET),m68k-linux)
  420. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  421. endif
  422. ifeq ($(FULL_TARGET),m68k-freebsd)
  423. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  424. endif
  425. ifeq ($(FULL_TARGET),m68k-netbsd)
  426. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  427. endif
  428. ifeq ($(FULL_TARGET),m68k-amiga)
  429. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  430. endif
  431. ifeq ($(FULL_TARGET),m68k-atari)
  432. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  433. endif
  434. ifeq ($(FULL_TARGET),m68k-openbsd)
  435. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  436. endif
  437. ifeq ($(FULL_TARGET),m68k-palmos)
  438. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  439. endif
  440. ifeq ($(FULL_TARGET),powerpc-linux)
  441. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  442. endif
  443. ifeq ($(FULL_TARGET),powerpc-netbsd)
  444. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  445. endif
  446. ifeq ($(FULL_TARGET),powerpc-macos)
  447. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  448. endif
  449. ifeq ($(FULL_TARGET),powerpc-darwin)
  450. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  451. endif
  452. ifeq ($(FULL_TARGET),powerpc-morphos)
  453. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  454. endif
  455. ifeq ($(FULL_TARGET),sparc-linux)
  456. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  457. endif
  458. ifeq ($(FULL_TARGET),sparc-netbsd)
  459. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  460. endif
  461. ifeq ($(FULL_TARGET),sparc-solaris)
  462. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  463. endif
  464. ifeq ($(FULL_TARGET),x86_64-linux)
  465. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  466. endif
  467. ifeq ($(FULL_TARGET),x86_64-freebsd)
  468. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  469. endif
  470. ifeq ($(FULL_TARGET),x86_64-win64)
  471. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  472. endif
  473. ifeq ($(FULL_TARGET),arm-linux)
  474. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  475. endif
  476. ifeq ($(FULL_TARGET),arm-wince)
  477. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  478. endif
  479. ifeq ($(FULL_TARGET),powerpc64-linux)
  480. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst rtlconsts fpmkunit
  481. endif
  482. override INSTALL_FPCPACKAGE=y
  483. ifeq ($(FULL_TARGET),i386-linux)
  484. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  485. endif
  486. ifeq ($(FULL_TARGET),i386-go32v2)
  487. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  488. endif
  489. ifeq ($(FULL_TARGET),i386-win32)
  490. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  491. endif
  492. ifeq ($(FULL_TARGET),i386-os2)
  493. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  494. endif
  495. ifeq ($(FULL_TARGET),i386-freebsd)
  496. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  497. endif
  498. ifeq ($(FULL_TARGET),i386-beos)
  499. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  500. endif
  501. ifeq ($(FULL_TARGET),i386-netbsd)
  502. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  503. endif
  504. ifeq ($(FULL_TARGET),i386-solaris)
  505. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  506. endif
  507. ifeq ($(FULL_TARGET),i386-qnx)
  508. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  509. endif
  510. ifeq ($(FULL_TARGET),i386-netware)
  511. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  512. endif
  513. ifeq ($(FULL_TARGET),i386-openbsd)
  514. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  515. endif
  516. ifeq ($(FULL_TARGET),i386-wdosx)
  517. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  518. endif
  519. ifeq ($(FULL_TARGET),i386-emx)
  520. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  521. endif
  522. ifeq ($(FULL_TARGET),i386-watcom)
  523. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  524. endif
  525. ifeq ($(FULL_TARGET),i386-netwlibc)
  526. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  527. endif
  528. ifeq ($(FULL_TARGET),i386-wince)
  529. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  530. endif
  531. ifeq ($(FULL_TARGET),m68k-linux)
  532. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  533. endif
  534. ifeq ($(FULL_TARGET),m68k-freebsd)
  535. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  536. endif
  537. ifeq ($(FULL_TARGET),m68k-netbsd)
  538. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  539. endif
  540. ifeq ($(FULL_TARGET),m68k-amiga)
  541. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  542. endif
  543. ifeq ($(FULL_TARGET),m68k-atari)
  544. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  545. endif
  546. ifeq ($(FULL_TARGET),m68k-openbsd)
  547. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  548. endif
  549. ifeq ($(FULL_TARGET),m68k-palmos)
  550. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  551. endif
  552. ifeq ($(FULL_TARGET),powerpc-linux)
  553. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  554. endif
  555. ifeq ($(FULL_TARGET),powerpc-netbsd)
  556. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  557. endif
  558. ifeq ($(FULL_TARGET),powerpc-macos)
  559. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  560. endif
  561. ifeq ($(FULL_TARGET),powerpc-darwin)
  562. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  563. endif
  564. ifeq ($(FULL_TARGET),powerpc-morphos)
  565. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  566. endif
  567. ifeq ($(FULL_TARGET),sparc-linux)
  568. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  569. endif
  570. ifeq ($(FULL_TARGET),sparc-netbsd)
  571. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  572. endif
  573. ifeq ($(FULL_TARGET),sparc-solaris)
  574. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  575. endif
  576. ifeq ($(FULL_TARGET),x86_64-linux)
  577. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  578. endif
  579. ifeq ($(FULL_TARGET),x86_64-freebsd)
  580. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  581. endif
  582. ifeq ($(FULL_TARGET),x86_64-win64)
  583. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  584. endif
  585. ifeq ($(FULL_TARGET),arm-linux)
  586. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  587. endif
  588. ifeq ($(FULL_TARGET),arm-wince)
  589. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  590. endif
  591. ifeq ($(FULL_TARGET),powerpc64-linux)
  592. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  593. endif
  594. ifeq ($(FULL_TARGET),i386-linux)
  595. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  596. endif
  597. ifeq ($(FULL_TARGET),i386-go32v2)
  598. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  599. endif
  600. ifeq ($(FULL_TARGET),i386-win32)
  601. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  602. endif
  603. ifeq ($(FULL_TARGET),i386-os2)
  604. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  605. endif
  606. ifeq ($(FULL_TARGET),i386-freebsd)
  607. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  608. endif
  609. ifeq ($(FULL_TARGET),i386-beos)
  610. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  611. endif
  612. ifeq ($(FULL_TARGET),i386-netbsd)
  613. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  614. endif
  615. ifeq ($(FULL_TARGET),i386-solaris)
  616. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  617. endif
  618. ifeq ($(FULL_TARGET),i386-qnx)
  619. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  620. endif
  621. ifeq ($(FULL_TARGET),i386-netware)
  622. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  623. endif
  624. ifeq ($(FULL_TARGET),i386-openbsd)
  625. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  626. endif
  627. ifeq ($(FULL_TARGET),i386-wdosx)
  628. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  629. endif
  630. ifeq ($(FULL_TARGET),i386-emx)
  631. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  632. endif
  633. ifeq ($(FULL_TARGET),i386-watcom)
  634. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  635. endif
  636. ifeq ($(FULL_TARGET),i386-netwlibc)
  637. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  638. endif
  639. ifeq ($(FULL_TARGET),i386-wince)
  640. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  641. endif
  642. ifeq ($(FULL_TARGET),m68k-linux)
  643. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  644. endif
  645. ifeq ($(FULL_TARGET),m68k-freebsd)
  646. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  647. endif
  648. ifeq ($(FULL_TARGET),m68k-netbsd)
  649. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  650. endif
  651. ifeq ($(FULL_TARGET),m68k-amiga)
  652. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  653. endif
  654. ifeq ($(FULL_TARGET),m68k-atari)
  655. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  656. endif
  657. ifeq ($(FULL_TARGET),m68k-openbsd)
  658. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  659. endif
  660. ifeq ($(FULL_TARGET),m68k-palmos)
  661. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  662. endif
  663. ifeq ($(FULL_TARGET),powerpc-linux)
  664. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  665. endif
  666. ifeq ($(FULL_TARGET),powerpc-netbsd)
  667. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  668. endif
  669. ifeq ($(FULL_TARGET),powerpc-macos)
  670. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  671. endif
  672. ifeq ($(FULL_TARGET),powerpc-darwin)
  673. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  674. endif
  675. ifeq ($(FULL_TARGET),powerpc-morphos)
  676. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  677. endif
  678. ifeq ($(FULL_TARGET),sparc-linux)
  679. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  680. endif
  681. ifeq ($(FULL_TARGET),sparc-netbsd)
  682. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  683. endif
  684. ifeq ($(FULL_TARGET),sparc-solaris)
  685. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  686. endif
  687. ifeq ($(FULL_TARGET),x86_64-linux)
  688. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  689. endif
  690. ifeq ($(FULL_TARGET),x86_64-freebsd)
  691. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  692. endif
  693. ifeq ($(FULL_TARGET),x86_64-win64)
  694. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  695. endif
  696. ifeq ($(FULL_TARGET),arm-linux)
  697. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  698. endif
  699. ifeq ($(FULL_TARGET),arm-wince)
  700. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  701. endif
  702. ifeq ($(FULL_TARGET),powerpc64-linux)
  703. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(COMMON)
  704. endif
  705. ifdef REQUIRE_UNITSDIR
  706. override UNITSDIR+=$(REQUIRE_UNITSDIR)
  707. endif
  708. ifdef REQUIRE_PACKAGESDIR
  709. override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
  710. endif
  711. ifdef ZIPINSTALL
  712. ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
  713. UNIXHier=1
  714. endif
  715. else
  716. ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
  717. UNIXHier=1
  718. endif
  719. endif
  720. ifndef INSTALL_PREFIX
  721. ifdef PREFIX
  722. INSTALL_PREFIX=$(PREFIX)
  723. endif
  724. endif
  725. ifndef INSTALL_PREFIX
  726. ifdef UNIXHier
  727. INSTALL_PREFIX=/usr/local
  728. else
  729. ifdef INSTALL_FPCPACKAGE
  730. INSTALL_BASEDIR:=/pp
  731. else
  732. INSTALL_BASEDIR:=/$(PACKAGE_NAME)
  733. endif
  734. endif
  735. endif
  736. export INSTALL_PREFIX
  737. ifdef INSTALL_FPCSUBDIR
  738. export INSTALL_FPCSUBDIR
  739. endif
  740. ifndef DIST_DESTDIR
  741. DIST_DESTDIR:=$(BASEDIR)
  742. endif
  743. export DIST_DESTDIR
  744. ifndef COMPILER_UNITTARGETDIR
  745. ifdef PACKAGEDIR_MAIN
  746. COMPILER_UNITTARGETDIR=$(PACKAGEDIR_MAIN)/units/$(TARGETSUFFIX)
  747. else
  748. COMPILER_UNITTARGETDIR=units/$(TARGETSUFFIX)
  749. endif
  750. endif
  751. ifndef COMPILER_TARGETDIR
  752. COMPILER_TARGETDIR=.
  753. endif
  754. ifndef INSTALL_BASEDIR
  755. ifdef UNIXHier
  756. ifdef INSTALL_FPCPACKAGE
  757. INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
  758. else
  759. INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/$(PACKAGE_NAME)
  760. endif
  761. else
  762. INSTALL_BASEDIR:=$(INSTALL_PREFIX)
  763. endif
  764. endif
  765. ifndef INSTALL_BINDIR
  766. ifdef UNIXHier
  767. INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
  768. else
  769. INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
  770. ifdef INSTALL_FPCPACKAGE
  771. ifdef CROSSCOMPILE
  772. ifdef CROSSINSTALL
  773. INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(SOURCESUFFIX)
  774. else
  775. INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX)
  776. endif
  777. else
  778. INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX)
  779. endif
  780. endif
  781. endif
  782. endif
  783. ifndef INSTALL_UNITDIR
  784. INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(TARGETSUFFIX)
  785. ifdef INSTALL_FPCPACKAGE
  786. ifdef PACKAGE_NAME
  787. INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
  788. endif
  789. endif
  790. endif
  791. ifndef INSTALL_LIBDIR
  792. ifdef UNIXHier
  793. INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
  794. else
  795. INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
  796. endif
  797. endif
  798. ifndef INSTALL_SOURCEDIR
  799. ifdef UNIXHier
  800. ifdef BSDhier
  801. SRCPREFIXDIR=share/src
  802. else
  803. ifdef linuxHier
  804. SRCPREFIXDIR=share/src
  805. else
  806. SRCPREFIXDIR=src
  807. endif
  808. endif
  809. ifdef INSTALL_FPCPACKAGE
  810. ifdef INSTALL_FPCSUBDIR
  811. INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
  812. else
  813. INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
  814. endif
  815. else
  816. INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  817. endif
  818. else
  819. ifdef INSTALL_FPCPACKAGE
  820. ifdef INSTALL_FPCSUBDIR
  821. INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
  822. else
  823. INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
  824. endif
  825. else
  826. INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source
  827. endif
  828. endif
  829. endif
  830. ifndef INSTALL_DOCDIR
  831. ifdef UNIXHier
  832. ifdef BSDhier
  833. DOCPREFIXDIR=share/doc
  834. else
  835. ifdef linuxHier
  836. DOCPREFIXDIR=share/doc
  837. else
  838. DOCPREFIXDIR=doc
  839. endif
  840. endif
  841. ifdef INSTALL_FPCPACKAGE
  842. INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
  843. else
  844. INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  845. endif
  846. else
  847. ifdef INSTALL_FPCPACKAGE
  848. INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc/$(PACKAGE_NAME)
  849. else
  850. INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc
  851. endif
  852. endif
  853. endif
  854. ifndef INSTALL_EXAMPLEDIR
  855. ifdef UNIXHier
  856. ifdef INSTALL_FPCPACKAGE
  857. ifdef BSDhier
  858. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
  859. else
  860. ifdef linuxHier
  861. INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples
  862. else
  863. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
  864. endif
  865. endif
  866. else
  867. ifdef BSDhier
  868. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  869. else
  870. ifdef linuxHier
  871. INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  872. else
  873. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  874. endif
  875. endif
  876. endif
  877. else
  878. ifdef INSTALL_FPCPACKAGE
  879. INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME)
  880. else
  881. INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples
  882. endif
  883. endif
  884. endif
  885. ifndef INSTALL_DATADIR
  886. INSTALL_DATADIR=$(INSTALL_BASEDIR)
  887. endif
  888. ifndef INSTALL_SHAREDDIR
  889. INSTALL_SHAREDDIR=$(INSTALL_PREFIX)/lib
  890. endif
  891. ifdef CROSSCOMPILE
  892. ifndef CROSSBINDIR
  893. CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(SOURCESUFFIX))
  894. ifeq ($(CROSSBINDIR),)
  895. CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(TARGETSUFFIX)/bin/$(FULL_SOURCE))
  896. endif
  897. endif
  898. else
  899. CROSSBINDIR=
  900. endif
  901. BATCHEXT=.bat
  902. LOADEREXT=.as
  903. EXEEXT=.exe
  904. PPLEXT=.ppl
  905. PPUEXT=.ppu
  906. OEXT=.o
  907. ASMEXT=.s
  908. SMARTEXT=.sl
  909. STATICLIBEXT=.a
  910. SHAREDLIBEXT=.so
  911. SHAREDLIBPREFIX=libfp
  912. STATICLIBPREFIX=libp
  913. RSTEXT=.rst
  914. ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
  915. ifeq ($(OS_TARGET),go32v1)
  916. STATICLIBPREFIX=
  917. SHORTSUFFIX=v1
  918. endif
  919. ifeq ($(OS_TARGET),go32v2)
  920. STATICLIBPREFIX=
  921. SHORTSUFFIX=dos
  922. endif
  923. ifeq ($(OS_TARGET),watcom)
  924. STATICLIBPREFIX=
  925. OEXT=.obj
  926. ASMEXT=.asm
  927. SHAREDLIBEXT=.dll
  928. SHORTSUFFIX=wat
  929. endif
  930. ifeq ($(OS_TARGET),linux)
  931. BATCHEXT=.sh
  932. EXEEXT=
  933. HASSHAREDLIB=1
  934. SHORTSUFFIX=lnx
  935. endif
  936. ifeq ($(OS_TARGET),freebsd)
  937. BATCHEXT=.sh
  938. EXEEXT=
  939. HASSHAREDLIB=1
  940. SHORTSUFFIX=fbs
  941. endif
  942. ifeq ($(OS_TARGET),netbsd)
  943. BATCHEXT=.sh
  944. EXEEXT=
  945. HASSHAREDLIB=1
  946. SHORTSUFFIX=nbs
  947. endif
  948. ifeq ($(OS_TARGET),openbsd)
  949. BATCHEXT=.sh
  950. EXEEXT=
  951. HASSHAREDLIB=1
  952. SHORTSUFFIX=obs
  953. endif
  954. ifeq ($(OS_TARGET),win32)
  955. SHAREDLIBEXT=.dll
  956. SHORTSUFFIX=w32
  957. endif
  958. ifeq ($(OS_TARGET),os2)
  959. BATCHEXT=.cmd
  960. AOUTEXT=.out
  961. STATICLIBPREFIX=
  962. SHAREDLIBEXT=.dll
  963. SHORTSUFFIX=os2
  964. ECHO=echo
  965. endif
  966. ifeq ($(OS_TARGET),emx)
  967. BATCHEXT=.cmd
  968. AOUTEXT=.out
  969. STATICLIBPREFIX=
  970. SHAREDLIBEXT=.dll
  971. SHORTSUFFIX=emx
  972. ECHO=echo
  973. endif
  974. ifeq ($(OS_TARGET),amiga)
  975. EXEEXT=
  976. SHAREDLIBEXT=.library
  977. SHORTSUFFIX=amg
  978. endif
  979. ifeq ($(OS_TARGET),morphos)
  980. EXEEXT=
  981. SHAREDLIBEXT=.library
  982. SHORTSUFFIX=mos
  983. endif
  984. ifeq ($(OS_TARGET),atari)
  985. EXEEXT=.ttp
  986. SHORTSUFFIX=ata
  987. endif
  988. ifeq ($(OS_TARGET),beos)
  989. BATCHEXT=.sh
  990. EXEEXT=
  991. SHORTSUFFIX=be
  992. endif
  993. ifeq ($(OS_TARGET),solaris)
  994. BATCHEXT=.sh
  995. EXEEXT=
  996. SHORTSUFFIX=sun
  997. endif
  998. ifeq ($(OS_TARGET),qnx)
  999. BATCHEXT=.sh
  1000. EXEEXT=
  1001. SHORTSUFFIX=qnx
  1002. endif
  1003. ifeq ($(OS_TARGET),netware)
  1004. EXEEXT=.nlm
  1005. STATICLIBPREFIX=
  1006. SHORTSUFFIX=nw
  1007. endif
  1008. ifeq ($(OS_TARGET),netwlibc)
  1009. EXEEXT=.nlm
  1010. STATICLIBPREFIX=
  1011. SHORTSUFFIX=nwl
  1012. endif
  1013. ifeq ($(OS_TARGET),macos)
  1014. BATCHEXT=
  1015. EXEEXT=
  1016. DEBUGSYMEXT=.xcoff
  1017. SHORTSUFFIX=mac
  1018. endif
  1019. ifeq ($(OS_TARGET),darwin)
  1020. BATCHEXT=.sh
  1021. EXEEXT=
  1022. HASSHAREDLIB=1
  1023. SHORTSUFFIX=dwn
  1024. endif
  1025. else
  1026. ifeq ($(OS_TARGET),go32v1)
  1027. PPUEXT=.pp1
  1028. OEXT=.o1
  1029. ASMEXT=.s1
  1030. SMARTEXT=.sl1
  1031. STATICLIBEXT=.a1
  1032. SHAREDLIBEXT=.so1
  1033. STATICLIBPREFIX=
  1034. SHORTSUFFIX=v1
  1035. endif
  1036. ifeq ($(OS_TARGET),go32v2)
  1037. STATICLIBPREFIX=
  1038. SHORTSUFFIX=dos
  1039. endif
  1040. ifeq ($(OS_TARGET),watcom)
  1041. STATICLIBPREFIX=
  1042. SHORTSUFFIX=wat
  1043. endif
  1044. ifeq ($(OS_TARGET),linux)
  1045. BATCHEXT=.sh
  1046. EXEEXT=
  1047. HASSHAREDLIB=1
  1048. SHORTSUFFIX=lnx
  1049. endif
  1050. ifeq ($(OS_TARGET),freebsd)
  1051. BATCHEXT=.sh
  1052. EXEEXT=
  1053. HASSHAREDLIB=1
  1054. SHORTSUFFIX=fbs
  1055. endif
  1056. ifeq ($(OS_TARGET),netbsd)
  1057. BATCHEXT=.sh
  1058. EXEEXT=
  1059. HASSHAREDLIB=1
  1060. SHORTSUFFIX=nbs
  1061. endif
  1062. ifeq ($(OS_TARGET),openbsd)
  1063. BATCHEXT=.sh
  1064. EXEEXT=
  1065. HASSHAREDLIB=1
  1066. SHORTSUFFIX=obs
  1067. endif
  1068. ifeq ($(OS_TARGET),win32)
  1069. PPUEXT=.ppw
  1070. OEXT=.ow
  1071. ASMEXT=.sw
  1072. SMARTEXT=.slw
  1073. STATICLIBEXT=.aw
  1074. SHAREDLIBEXT=.dll
  1075. SHORTSUFFIX=w32
  1076. endif
  1077. ifeq ($(OS_TARGET),os2)
  1078. BATCHEXT=.cmd
  1079. PPUEXT=.ppo
  1080. ASMEXT=.so2
  1081. OEXT=.oo2
  1082. AOUTEXT=.out
  1083. SMARTEXT=.sl2
  1084. STATICLIBPREFIX=
  1085. STATICLIBEXT=.ao2
  1086. SHAREDLIBEXT=.dll
  1087. SHORTSUFFIX=os2
  1088. ECHO=echo
  1089. endif
  1090. ifeq ($(OS_TARGET),amiga)
  1091. EXEEXT=
  1092. PPUEXT=.ppu
  1093. ASMEXT=.asm
  1094. OEXT=.o
  1095. SMARTEXT=.sl
  1096. STATICLIBEXT=.a
  1097. SHAREDLIBEXT=.library
  1098. SHORTSUFFIX=amg
  1099. endif
  1100. ifeq ($(OS_TARGET),atari)
  1101. PPUEXT=.ppu
  1102. ASMEXT=.s
  1103. OEXT=.o
  1104. SMARTEXT=.sl
  1105. STATICLIBEXT=.a
  1106. EXEEXT=.ttp
  1107. SHORTSUFFIX=ata
  1108. endif
  1109. ifeq ($(OS_TARGET),beos)
  1110. BATCHEXT=.sh
  1111. PPUEXT=.ppu
  1112. ASMEXT=.s
  1113. OEXT=.o
  1114. SMARTEXT=.sl
  1115. STATICLIBEXT=.a
  1116. EXEEXT=
  1117. SHORTSUFFIX=be
  1118. endif
  1119. ifeq ($(OS_TARGET),solaris)
  1120. BATCHEXT=.sh
  1121. PPUEXT=.ppu
  1122. ASMEXT=.s
  1123. OEXT=.o
  1124. SMARTEXT=.sl
  1125. STATICLIBEXT=.a
  1126. EXEEXT=
  1127. SHORTSUFFIX=sun
  1128. endif
  1129. ifeq ($(OS_TARGET),qnx)
  1130. BATCHEXT=.sh
  1131. PPUEXT=.ppu
  1132. ASMEXT=.s
  1133. OEXT=.o
  1134. SMARTEXT=.sl
  1135. STATICLIBEXT=.a
  1136. EXEEXT=
  1137. SHORTSUFFIX=qnx
  1138. endif
  1139. ifeq ($(OS_TARGET),netware)
  1140. STATICLIBPREFIX=
  1141. PPUEXT=.ppu
  1142. OEXT=.o
  1143. ASMEXT=.s
  1144. SMARTEXT=.sl
  1145. STATICLIBEXT=.a
  1146. SHAREDLIBEXT=.nlm
  1147. EXEEXT=.nlm
  1148. SHORTSUFFIX=nw
  1149. endif
  1150. ifeq ($(OS_TARGET),netwlibc)
  1151. STATICLIBPREFIX=
  1152. PPUEXT=.ppu
  1153. OEXT=.o
  1154. ASMEXT=.s
  1155. SMARTEXT=.sl
  1156. STATICLIBEXT=.a
  1157. SHAREDLIBEXT=.nlm
  1158. EXEEXT=.nlm
  1159. SHORTSUFFIX=nwl
  1160. endif
  1161. ifeq ($(OS_TARGET),macos)
  1162. BATCHEXT=
  1163. PPUEXT=.ppu
  1164. ASMEXT=.s
  1165. OEXT=.o
  1166. SMARTEXT=.sl
  1167. STATICLIBEXT=.a
  1168. EXEEXT=
  1169. DEBUGSYMEXT=.xcoff
  1170. SHORTSUFFIX=mac
  1171. endif
  1172. endif
  1173. ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
  1174. FPCMADE=fpcmade.$(SHORTSUFFIX)
  1175. ZIPSUFFIX=$(SHORTSUFFIX)
  1176. ZIPCROSSPREFIX=
  1177. ZIPSOURCESUFFIX=src
  1178. ZIPEXAMPLESUFFIX=exm
  1179. else
  1180. FPCMADE=fpcmade.$(TARGETSUFFIX)
  1181. ZIPSOURCESUFFIX=.source
  1182. ZIPEXAMPLESUFFIX=.examples
  1183. ifdef CROSSCOMPILE
  1184. ZIPSUFFIX=.$(SOURCESUFFIX)
  1185. ZIPCROSSPREFIX=$(TARGETSUFFIX)-
  1186. else
  1187. ZIPSUFFIX=.$(TARGETSUFFIX)
  1188. ZIPCROSSPREFIX=
  1189. endif
  1190. endif
  1191. ifndef ECHO
  1192. ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
  1193. ifeq ($(ECHO),)
  1194. ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
  1195. ifeq ($(ECHO),)
  1196. ECHO= __missing_command_ECHO
  1197. else
  1198. ECHO:=$(firstword $(ECHO))
  1199. endif
  1200. else
  1201. ECHO:=$(firstword $(ECHO))
  1202. endif
  1203. endif
  1204. export ECHO
  1205. ifndef DATE
  1206. DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
  1207. ifeq ($(DATE),)
  1208. DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
  1209. ifeq ($(DATE),)
  1210. DATE= __missing_command_DATE
  1211. else
  1212. DATE:=$(firstword $(DATE))
  1213. endif
  1214. else
  1215. DATE:=$(firstword $(DATE))
  1216. endif
  1217. endif
  1218. export DATE
  1219. ifndef GINSTALL
  1220. GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
  1221. ifeq ($(GINSTALL),)
  1222. GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
  1223. ifeq ($(GINSTALL),)
  1224. GINSTALL= __missing_command_GINSTALL
  1225. else
  1226. GINSTALL:=$(firstword $(GINSTALL))
  1227. endif
  1228. else
  1229. GINSTALL:=$(firstword $(GINSTALL))
  1230. endif
  1231. endif
  1232. export GINSTALL
  1233. ifndef CPPROG
  1234. CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
  1235. ifeq ($(CPPROG),)
  1236. CPPROG= __missing_command_CPPROG
  1237. else
  1238. CPPROG:=$(firstword $(CPPROG))
  1239. endif
  1240. endif
  1241. export CPPROG
  1242. ifndef RMPROG
  1243. RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
  1244. ifeq ($(RMPROG),)
  1245. RMPROG= __missing_command_RMPROG
  1246. else
  1247. RMPROG:=$(firstword $(RMPROG))
  1248. endif
  1249. endif
  1250. export RMPROG
  1251. ifndef MVPROG
  1252. MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
  1253. ifeq ($(MVPROG),)
  1254. MVPROG= __missing_command_MVPROG
  1255. else
  1256. MVPROG:=$(firstword $(MVPROG))
  1257. endif
  1258. endif
  1259. export MVPROG
  1260. ifndef MKDIRPROG
  1261. MKDIRPROG:=$(strip $(wildcard $(addsuffix /gmkdir$(SRCEXEEXT),$(SEARCHPATH))))
  1262. ifeq ($(MKDIRPROG),)
  1263. MKDIRPROG:=$(strip $(wildcard $(addsuffix /mkdir$(SRCEXEEXT),$(SEARCHPATH))))
  1264. ifeq ($(MKDIRPROG),)
  1265. MKDIRPROG= __missing_command_MKDIRPROG
  1266. else
  1267. MKDIRPROG:=$(firstword $(MKDIRPROG))
  1268. endif
  1269. else
  1270. MKDIRPROG:=$(firstword $(MKDIRPROG))
  1271. endif
  1272. endif
  1273. export MKDIRPROG
  1274. ifndef ECHOREDIR
  1275. ifndef inUnix
  1276. ECHOREDIR=echo
  1277. else
  1278. ECHOREDIR=$(ECHO)
  1279. endif
  1280. endif
  1281. ifndef COPY
  1282. COPY:=$(CPPROG) -fp
  1283. endif
  1284. ifndef COPYTREE
  1285. COPYTREE:=$(CPPROG) -Rfp
  1286. endif
  1287. ifndef MKDIRTREE
  1288. MKDIRTREE:=$(MKDIRPROG) -p
  1289. endif
  1290. ifndef MOVE
  1291. MOVE:=$(MVPROG) -f
  1292. endif
  1293. ifndef DEL
  1294. DEL:=$(RMPROG) -f
  1295. endif
  1296. ifndef DELTREE
  1297. DELTREE:=$(RMPROG) -rf
  1298. endif
  1299. ifndef INSTALL
  1300. ifdef inUnix
  1301. INSTALL:=$(GINSTALL) -c -m 644
  1302. else
  1303. INSTALL:=$(COPY)
  1304. endif
  1305. endif
  1306. ifndef INSTALLEXE
  1307. ifdef inUnix
  1308. INSTALLEXE:=$(GINSTALL) -c -m 755
  1309. else
  1310. INSTALLEXE:=$(COPY)
  1311. endif
  1312. endif
  1313. ifndef MKDIR
  1314. MKDIR:=$(GINSTALL) -m 755 -d
  1315. endif
  1316. export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
  1317. ifndef PPUMOVE
  1318. PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
  1319. ifeq ($(PPUMOVE),)
  1320. PPUMOVE= __missing_command_PPUMOVE
  1321. else
  1322. PPUMOVE:=$(firstword $(PPUMOVE))
  1323. endif
  1324. endif
  1325. export PPUMOVE
  1326. ifndef FPCMAKE
  1327. FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
  1328. ifeq ($(FPCMAKE),)
  1329. FPCMAKE= __missing_command_FPCMAKE
  1330. else
  1331. FPCMAKE:=$(firstword $(FPCMAKE))
  1332. endif
  1333. endif
  1334. export FPCMAKE
  1335. ifndef ZIPPROG
  1336. ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
  1337. ifeq ($(ZIPPROG),)
  1338. ZIPPROG= __missing_command_ZIPPROG
  1339. else
  1340. ZIPPROG:=$(firstword $(ZIPPROG))
  1341. endif
  1342. endif
  1343. export ZIPPROG
  1344. ifndef TARPROG
  1345. TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
  1346. ifeq ($(TARPROG),)
  1347. TARPROG= __missing_command_TARPROG
  1348. else
  1349. TARPROG:=$(firstword $(TARPROG))
  1350. endif
  1351. endif
  1352. export TARPROG
  1353. ASNAME=$(BINUTILSPREFIX)as
  1354. LDNAME=$(BINUTILSPREFIX)ld
  1355. ARNAME=$(BINUTILSPREFIX)ar
  1356. RCNAME=$(BINUTILSPREFIX)rc
  1357. ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
  1358. ifeq ($(OS_TARGET),win32)
  1359. ifeq ($(CROSSBINDIR),)
  1360. ASNAME=asw
  1361. LDNAME=ldw
  1362. ARNAME=arw
  1363. endif
  1364. endif
  1365. endif
  1366. ifndef ASPROG
  1367. ifdef CROSSBINDIR
  1368. ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
  1369. else
  1370. ASPROG=$(ASNAME)
  1371. endif
  1372. endif
  1373. ifndef LDPROG
  1374. ifdef CROSSBINDIR
  1375. LDPROG=$(CROSSBINDIR)/$(LDNAME)$(SRCEXEEXT)
  1376. else
  1377. LDPROG=$(LDNAME)
  1378. endif
  1379. endif
  1380. ifndef RCPROG
  1381. ifdef CROSSBINDIR
  1382. RCPROG=$(CROSSBINDIR)/$(RCNAME)$(SRCEXEEXT)
  1383. else
  1384. RCPROG=$(RCNAME)
  1385. endif
  1386. endif
  1387. ifndef ARPROG
  1388. ifdef CROSSBINDIR
  1389. ARPROG=$(CROSSBINDIR)/$(ARNAME)$(SRCEXEEXT)
  1390. else
  1391. ARPROG=$(ARNAME)
  1392. endif
  1393. endif
  1394. AS=$(ASPROG)
  1395. LD=$(LDPROG)
  1396. RC=$(RCPROG)
  1397. AR=$(ARPROG)
  1398. PPAS=ppas$(SRCBATCHEXT)
  1399. ifdef inUnix
  1400. LDCONFIG=ldconfig
  1401. else
  1402. LDCONFIG=
  1403. endif
  1404. ifdef DATE
  1405. DATESTR:=$(shell $(DATE) +%Y%m%d)
  1406. else
  1407. DATESTR=
  1408. endif
  1409. ifndef UPXPROG
  1410. ifeq ($(OS_TARGET),go32v2)
  1411. UPXPROG:=1
  1412. endif
  1413. ifeq ($(OS_TARGET),win32)
  1414. UPXPROG:=1
  1415. endif
  1416. ifdef UPXPROG
  1417. UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH))))
  1418. ifeq ($(UPXPROG),)
  1419. UPXPROG=
  1420. else
  1421. UPXPROG:=$(firstword $(UPXPROG))
  1422. endif
  1423. else
  1424. UPXPROG=
  1425. endif
  1426. endif
  1427. export UPXPROG
  1428. ZIPOPT=-9
  1429. ZIPEXT=.zip
  1430. ifeq ($(USETAR),bz2)
  1431. TAROPT=vj
  1432. TAREXT=.tar.bz2
  1433. else
  1434. TAROPT=vz
  1435. TAREXT=.tar.gz
  1436. endif
  1437. ifndef NOCPUDEF
  1438. override FPCOPTDEF=$(CPU_TARGET)
  1439. endif
  1440. ifneq ($(OS_TARGET),$(OS_SOURCE))
  1441. override FPCOPT+=-T$(OS_TARGET)
  1442. endif
  1443. ifeq ($(OS_SOURCE),openbsd)
  1444. override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
  1445. endif
  1446. ifndef CROSSBOOTSTRAP
  1447. ifneq ($(BINUTILSPREFIX),)
  1448. override FPCOPT+=-XP$(BINUTILSPREFIX) -Xc
  1449. endif
  1450. ifneq ($(BINUTILSPREFIX),)
  1451. override FPCOPT+=-Xr$(RLINKPATH)
  1452. endif
  1453. endif
  1454. ifdef UNITDIR
  1455. override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
  1456. endif
  1457. ifdef LIBDIR
  1458. override FPCOPT+=$(addprefix -Fl,$(LIBDIR))
  1459. endif
  1460. ifdef OBJDIR
  1461. override FPCOPT+=$(addprefix -Fo,$(OBJDIR))
  1462. endif
  1463. ifdef INCDIR
  1464. override FPCOPT+=$(addprefix -Fi,$(INCDIR))
  1465. endif
  1466. ifdef LINKSMART
  1467. override FPCOPT+=-XX
  1468. endif
  1469. ifdef CREATESMART
  1470. override FPCOPT+=-CX
  1471. endif
  1472. ifdef DEBUG
  1473. override FPCOPT+=-gl
  1474. override FPCOPTDEF+=DEBUG
  1475. endif
  1476. ifdef RELEASE
  1477. ifeq ($(CPU_TARGET),i386)
  1478. FPCCPUOPT:=-OG2p3
  1479. else
  1480. ifeq ($(CPU_TARGET),powerpc)
  1481. FPCCPUOPT:=-O1r
  1482. else
  1483. FPCCPUOPT:=
  1484. endif
  1485. endif
  1486. override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
  1487. override FPCOPTDEF+=RELEASE
  1488. endif
  1489. ifdef STRIP
  1490. override FPCOPT+=-Xs
  1491. endif
  1492. ifdef OPTIMIZE
  1493. ifeq ($(CPU_TARGET),i386)
  1494. override FPCOPT+=-OG2p3
  1495. endif
  1496. endif
  1497. ifdef VERBOSE
  1498. override FPCOPT+=-vwni
  1499. endif
  1500. ifdef COMPILER_OPTIONS
  1501. override FPCOPT+=$(COMPILER_OPTIONS)
  1502. endif
  1503. ifdef COMPILER_UNITDIR
  1504. override FPCOPT+=$(addprefix -Fu,$(COMPILER_UNITDIR))
  1505. endif
  1506. ifdef COMPILER_LIBRARYDIR
  1507. override FPCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR))
  1508. endif
  1509. ifdef COMPILER_OBJECTDIR
  1510. override FPCOPT+=$(addprefix -Fo,$(COMPILER_OBJECTDIR))
  1511. endif
  1512. ifdef COMPILER_INCLUDEDIR
  1513. override FPCOPT+=$(addprefix -Fi,$(COMPILER_INCLUDEDIR))
  1514. endif
  1515. ifdef CROSSBINDIR
  1516. override FPCOPT+=-FD$(CROSSBINDIR)
  1517. endif
  1518. ifdef COMPILER_TARGETDIR
  1519. override FPCOPT+=-FE$(COMPILER_TARGETDIR)
  1520. ifeq ($(COMPILER_TARGETDIR),.)
  1521. override TARGETDIRPREFIX=
  1522. else
  1523. override TARGETDIRPREFIX=$(COMPILER_TARGETDIR)/
  1524. endif
  1525. endif
  1526. ifdef COMPILER_UNITTARGETDIR
  1527. override FPCOPT+=-FU$(COMPILER_UNITTARGETDIR)
  1528. ifeq ($(COMPILER_UNITTARGETDIR),.)
  1529. override UNITTARGETDIRPREFIX=
  1530. else
  1531. override UNITTARGETDIRPREFIX=$(COMPILER_UNITTARGETDIR)/
  1532. endif
  1533. else
  1534. ifdef COMPILER_TARGETDIR
  1535. override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR)
  1536. override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)
  1537. endif
  1538. endif
  1539. ifeq ($(OS_TARGET),linux)
  1540. ifeq ($(FPC_VERSION),1.0.6)
  1541. override FPCOPTDEF+=HASUNIX
  1542. endif
  1543. endif
  1544. ifdef CREATESHARED
  1545. override FPCOPT+=-Cg
  1546. ifeq ($(CPU_TARGET),i386)
  1547. override FPCOPT+=-Aas
  1548. endif
  1549. endif
  1550. ifdef LINKSHARED
  1551. endif
  1552. ifdef OPT
  1553. override FPCOPT+=$(OPT)
  1554. endif
  1555. ifdef FPCOPTDEF
  1556. override FPCOPT+=$(addprefix -d,$(FPCOPTDEF))
  1557. endif
  1558. ifdef CFGFILE
  1559. override FPCOPT+=@$(CFGFILE)
  1560. endif
  1561. ifdef USEENV
  1562. override FPCEXTCMD:=$(FPCOPT)
  1563. override FPCOPT:=!FPCEXTCMD
  1564. export FPCEXTCMD
  1565. endif
  1566. override AFULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
  1567. override AFULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
  1568. ifneq ($(AFULL_TARGET),$(AFULL_SOURCE))
  1569. override ACROSSCOMPILE=1
  1570. endif
  1571. ifdef ACROSSCOMPILE
  1572. override FPCOPT+=$(CROSSOPT)
  1573. endif
  1574. override COMPILER:=$(FPC) $(FPCOPT)
  1575. ifeq (,$(findstring -s ,$(COMPILER)))
  1576. EXECPPAS=
  1577. else
  1578. ifeq ($(FULL_SOURCE),$(FULL_TARGET))
  1579. EXECPPAS:=@$(PPAS)
  1580. endif
  1581. endif
  1582. .PHONY: fpc_units
  1583. ifneq ($(TARGET_UNITS),)
  1584. override ALLTARGET+=fpc_units
  1585. override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
  1586. override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
  1587. override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
  1588. override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
  1589. endif
  1590. fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES)
  1591. ifdef TARGET_RSTS
  1592. override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
  1593. override CLEANRSTFILES+=$(RSTFILES)
  1594. endif
  1595. .PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared
  1596. $(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET)
  1597. @$(ECHOREDIR) Compiled > $(FPCMADE)
  1598. fpc_all: $(FPCMADE)
  1599. fpc_smart:
  1600. $(MAKE) all LINKSMART=1 CREATESMART=1
  1601. fpc_debug:
  1602. $(MAKE) all DEBUG=1
  1603. fpc_release:
  1604. $(MAKE) all RELEASE=1
  1605. .SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
  1606. $(COMPILER_UNITTARGETDIR):
  1607. $(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
  1608. $(COMPILER_TARGETDIR):
  1609. $(MKDIRTREE) $(COMPILER_TARGETDIR)
  1610. %$(PPUEXT): %.pp
  1611. $(COMPILER) $<
  1612. $(EXECPPAS)
  1613. %$(PPUEXT): %.pas
  1614. $(COMPILER) $<
  1615. $(EXECPPAS)
  1616. %$(EXEEXT): %.pp
  1617. $(COMPILER) $<
  1618. $(EXECPPAS)
  1619. %$(EXEEXT): %.pas
  1620. $(COMPILER) $<
  1621. $(EXECPPAS)
  1622. %$(EXEEXT): %.lpr
  1623. $(COMPILER) $<
  1624. $(EXECPPAS)
  1625. %$(EXEEXT): %.dpr
  1626. $(COMPILER) $<
  1627. $(EXECPPAS)
  1628. %.res: %.rc
  1629. windres -i $< -o $@
  1630. vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  1631. vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  1632. vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  1633. vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  1634. vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
  1635. vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
  1636. .PHONY: fpc_shared
  1637. override INSTALLTARGET+=fpc_shared_install
  1638. ifndef SHARED_LIBVERSION
  1639. SHARED_LIBVERSION=$(FPC_VERSION)
  1640. endif
  1641. ifndef SHARED_LIBNAME
  1642. SHARED_LIBNAME=$(PACKAGE_NAME)
  1643. endif
  1644. ifndef SHARED_FULLNAME
  1645. SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT)
  1646. endif
  1647. ifndef SHARED_LIBUNITS
  1648. SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS)
  1649. override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS))
  1650. endif
  1651. fpc_shared:
  1652. ifdef HASSHAREDLIB
  1653. $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1
  1654. ifneq ($(SHARED_BUILD),n)
  1655. $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR)
  1656. endif
  1657. else
  1658. @$(ECHO) Shared Libraries not supported
  1659. endif
  1660. fpc_shared_install:
  1661. ifneq ($(SHARED_BUILD),n)
  1662. ifneq ($(SHARED_LIBUNITS),)
  1663. ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),)
  1664. $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR)
  1665. endif
  1666. endif
  1667. endif
  1668. .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
  1669. ifdef INSTALL_UNITS
  1670. override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))
  1671. endif
  1672. ifdef INSTALL_BUILDUNIT
  1673. override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPPUFILES))
  1674. endif
  1675. ifdef INSTALLPPUFILES
  1676. override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
  1677. ifneq ($(UNITTARGETDIRPREFIX),)
  1678. override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
  1679. override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
  1680. endif
  1681. override INSTALL_CREATEPACKAGEFPC=1
  1682. endif
  1683. ifdef INSTALLEXEFILES
  1684. ifneq ($(TARGETDIRPREFIX),)
  1685. override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(notdir $(INSTALLEXEFILES)))
  1686. endif
  1687. endif
  1688. fpc_install: all $(INSTALLTARGET)
  1689. ifdef INSTALLEXEFILES
  1690. $(MKDIR) $(INSTALL_BINDIR)
  1691. ifdef UPXPROG
  1692. -$(UPXPROG) $(INSTALLEXEFILES)
  1693. endif
  1694. $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR)
  1695. endif
  1696. ifdef INSTALL_CREATEPACKAGEFPC
  1697. ifdef FPCMAKE
  1698. ifdef PACKAGE_VERSION
  1699. ifneq ($(wildcard Makefile.fpc),)
  1700. $(FPCMAKE) -p -T$(CPU_TARGET)-$(OS_TARGET) Makefile.fpc
  1701. $(MKDIR) $(INSTALL_UNITDIR)
  1702. $(INSTALL) Package.fpc $(INSTALL_UNITDIR)
  1703. endif
  1704. endif
  1705. endif
  1706. endif
  1707. ifdef INSTALLPPUFILES
  1708. $(MKDIR) $(INSTALL_UNITDIR)
  1709. $(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
  1710. ifneq ($(INSTALLPPULINKFILES),)
  1711. $(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
  1712. endif
  1713. ifneq ($(wildcard $(LIB_FULLNAME)),)
  1714. $(MKDIR) $(INSTALL_LIBDIR)
  1715. $(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
  1716. ifdef inUnix
  1717. ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
  1718. endif
  1719. endif
  1720. endif
  1721. ifdef INSTALL_FILES
  1722. $(MKDIR) $(INSTALL_DATADIR)
  1723. $(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
  1724. endif
  1725. fpc_sourceinstall: distclean
  1726. $(MKDIR) $(INSTALL_SOURCEDIR)
  1727. $(COPYTREE) $(BASEDIR)/* $(INSTALL_SOURCEDIR)
  1728. fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
  1729. ifdef HASEXAMPLES
  1730. $(MKDIR) $(INSTALL_EXAMPLEDIR)
  1731. endif
  1732. ifdef EXAMPLESOURCEFILES
  1733. $(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
  1734. endif
  1735. ifdef TARGET_EXAMPLEDIRS
  1736. $(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
  1737. endif
  1738. .PHONY: fpc_clean fpc_cleanall fpc_distclean
  1739. ifdef EXEFILES
  1740. override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
  1741. endif
  1742. ifdef CLEAN_UNITS
  1743. override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
  1744. endif
  1745. ifdef CLEANPPUFILES
  1746. override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
  1747. ifdef DEBUGSYMEXT
  1748. override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
  1749. endif
  1750. override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
  1751. override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
  1752. endif
  1753. fpc_clean: $(CLEANTARGET)
  1754. ifdef CLEANEXEFILES
  1755. -$(DEL) $(CLEANEXEFILES)
  1756. endif
  1757. ifdef CLEANPPUFILES
  1758. -$(DEL) $(CLEANPPUFILES)
  1759. endif
  1760. ifneq ($(CLEANPPULINKFILES),)
  1761. -$(DEL) $(CLEANPPULINKFILES)
  1762. endif
  1763. ifdef CLEANRSTFILES
  1764. -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
  1765. endif
  1766. ifdef CLEAN_FILES
  1767. -$(DEL) $(CLEAN_FILES)
  1768. endif
  1769. ifdef LIB_NAME
  1770. -$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
  1771. endif
  1772. -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
  1773. -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
  1774. fpc_cleanall: $(CLEANTARGET)
  1775. ifdef CLEANEXEFILES
  1776. -$(DEL) $(CLEANEXEFILES)
  1777. endif
  1778. ifdef COMPILER_UNITTARGETDIR
  1779. ifdef CLEANPPUFILES
  1780. -$(DEL) $(CLEANPPUFILES)
  1781. endif
  1782. ifneq ($(CLEANPPULINKFILES),)
  1783. -$(DEL) $(CLEANPPULINKFILES)
  1784. endif
  1785. ifdef CLEANRSTFILES
  1786. -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
  1787. endif
  1788. endif
  1789. -$(DELTREE) units
  1790. -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
  1791. ifneq ($(PPUEXT),.ppu)
  1792. -$(DEL) *.o *.ppu *.a
  1793. endif
  1794. -$(DELTREE) *$(SMARTEXT)
  1795. -$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
  1796. -$(DEL) *_ppas$(BATCHEXT)
  1797. ifdef AOUTEXT
  1798. -$(DEL) *$(AOUTEXT)
  1799. endif
  1800. ifdef DEBUGSYMEXT
  1801. -$(DEL) *$(DEBUGSYMEXT)
  1802. endif
  1803. fpc_distclean: cleanall
  1804. .PHONY: fpc_baseinfo
  1805. override INFORULES+=fpc_baseinfo
  1806. fpc_baseinfo:
  1807. @$(ECHO)
  1808. @$(ECHO) == Package info ==
  1809. @$(ECHO) Package Name..... $(PACKAGE_NAME)
  1810. @$(ECHO) Package Version.. $(PACKAGE_VERSION)
  1811. @$(ECHO)
  1812. @$(ECHO) == Configuration info ==
  1813. @$(ECHO)
  1814. @$(ECHO) FPC.......... $(FPC)
  1815. @$(ECHO) FPC Version.. $(FPC_VERSION)
  1816. @$(ECHO) Source CPU... $(CPU_SOURCE)
  1817. @$(ECHO) Target CPU... $(CPU_TARGET)
  1818. @$(ECHO) Source OS.... $(OS_SOURCE)
  1819. @$(ECHO) Target OS.... $(OS_TARGET)
  1820. @$(ECHO) Full Source.. $(FULL_SOURCE)
  1821. @$(ECHO) Full Target.. $(FULL_TARGET)
  1822. @$(ECHO) SourceSuffix. $(SOURCESUFFIX)
  1823. @$(ECHO) TargetSuffix. $(TARGETSUFFIX)
  1824. @$(ECHO)
  1825. @$(ECHO) == Directory info ==
  1826. @$(ECHO)
  1827. @$(ECHO) Required pkgs... $(REQUIRE_PACKAGES)
  1828. @$(ECHO)
  1829. @$(ECHO) Basedir......... $(BASEDIR)
  1830. @$(ECHO) FPCDir.......... $(FPCDIR)
  1831. @$(ECHO) CrossBinDir..... $(CROSSBINDIR)
  1832. @$(ECHO) UnitsDir........ $(UNITSDIR)
  1833. @$(ECHO) PackagesDir..... $(PACKAGESDIR)
  1834. @$(ECHO)
  1835. @$(ECHO) GCC library..... $(GCCLIBDIR)
  1836. @$(ECHO) Other library... $(OTHERLIBDIR)
  1837. @$(ECHO)
  1838. @$(ECHO) == Tools info ==
  1839. @$(ECHO)
  1840. @$(ECHO) As........ $(AS)
  1841. @$(ECHO) Ld........ $(LD)
  1842. @$(ECHO) Ar........ $(AR)
  1843. @$(ECHO) Rc........ $(RC)
  1844. @$(ECHO)
  1845. @$(ECHO) Mv........ $(MVPROG)
  1846. @$(ECHO) Cp........ $(CPPROG)
  1847. @$(ECHO) Rm........ $(RMPROG)
  1848. @$(ECHO) GInstall.. $(GINSTALL)
  1849. @$(ECHO) Echo...... $(ECHO)
  1850. @$(ECHO) Shell..... $(SHELL)
  1851. @$(ECHO) Date...... $(DATE)
  1852. @$(ECHO) FPCMake... $(FPCMAKE)
  1853. @$(ECHO) PPUMove... $(PPUMOVE)
  1854. @$(ECHO) Upx....... $(UPXPROG)
  1855. @$(ECHO) Zip....... $(ZIPPROG)
  1856. @$(ECHO)
  1857. @$(ECHO) == Object info ==
  1858. @$(ECHO)
  1859. @$(ECHO) Target Loaders........ $(TARGET_LOADERS)
  1860. @$(ECHO) Target Units.......... $(TARGET_UNITS)
  1861. @$(ECHO) Target Implicit Units. $(TARGET_IMPLICITUNITS)
  1862. @$(ECHO) Target Programs....... $(TARGET_PROGRAMS)
  1863. @$(ECHO) Target Dirs........... $(TARGET_DIRS)
  1864. @$(ECHO) Target Examples....... $(TARGET_EXAMPLES)
  1865. @$(ECHO) Target ExampleDirs.... $(TARGET_EXAMPLEDIRS)
  1866. @$(ECHO)
  1867. @$(ECHO) Clean Units......... $(CLEAN_UNITS)
  1868. @$(ECHO) Clean Files......... $(CLEAN_FILES)
  1869. @$(ECHO)
  1870. @$(ECHO) Install Units....... $(INSTALL_UNITS)
  1871. @$(ECHO) Install Files....... $(INSTALL_FILES)
  1872. @$(ECHO)
  1873. @$(ECHO) == Install info ==
  1874. @$(ECHO)
  1875. @$(ECHO) DateStr.............. $(DATESTR)
  1876. @$(ECHO) ZipName.............. $(ZIPNAME)
  1877. @$(ECHO) ZipPrefix............ $(ZIPPREFIX)
  1878. @$(ECHO) ZipCrossPrefix....... $(ZIPCROSSPREFIX)
  1879. @$(ECHO) ZipSuffix............ $(ZIPSUFFIX)
  1880. @$(ECHO) FullZipName.......... $(FULLZIPNAME)
  1881. @$(ECHO) Install FPC Package.. $(INSTALL_FPCPACKAGE)
  1882. @$(ECHO)
  1883. @$(ECHO) Install base dir..... $(INSTALL_BASEDIR)
  1884. @$(ECHO) Install binary dir... $(INSTALL_BINDIR)
  1885. @$(ECHO) Install library dir.. $(INSTALL_LIBDIR)
  1886. @$(ECHO) Install units dir.... $(INSTALL_UNITDIR)
  1887. @$(ECHO) Install source dir... $(INSTALL_SOURCEDIR)
  1888. @$(ECHO) Install doc dir...... $(INSTALL_DOCDIR)
  1889. @$(ECHO) Install example dir.. $(INSTALL_EXAMPLEDIR)
  1890. @$(ECHO) Install data dir..... $(INSTALL_DATADIR)
  1891. @$(ECHO)
  1892. @$(ECHO) Dist destination dir. $(DIST_DESTDIR)
  1893. @$(ECHO) Dist zip name........ $(DIST_ZIPNAME)
  1894. @$(ECHO)
  1895. .PHONY: fpc_info
  1896. fpc_info: $(INFORULES)
  1897. .PHONY: fpc_makefile fpc_makefiles fpc_makefile_sub1 fpc_makefile_sub2 \
  1898. fpc_makefile_dirs
  1899. fpc_makefile:
  1900. $(FPCMAKE) -w -T$(OS_TARGET) Makefile.fpc
  1901. fpc_makefile_sub1:
  1902. ifdef TARGET_DIRS
  1903. $(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
  1904. endif
  1905. ifdef TARGET_EXAMPLEDIRS
  1906. $(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_EXAMPLEDIRS))
  1907. endif
  1908. fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS))
  1909. fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2
  1910. fpc_makefiles: fpc_makefile fpc_makefile_dirs
  1911. all: fpc_all
  1912. debug: fpc_debug
  1913. smart: fpc_smart
  1914. release: fpc_release
  1915. units: fpc_units
  1916. examples:
  1917. shared: fpc_shared
  1918. install: fpc_install
  1919. sourceinstall: fpc_sourceinstall
  1920. exampleinstall: fpc_exampleinstall
  1921. distinstall:
  1922. zipinstall:
  1923. zipsourceinstall:
  1924. zipexampleinstall:
  1925. zipdistinstall:
  1926. clean: fpc_clean
  1927. distclean: fpc_distclean
  1928. cleanall: fpc_cleanall
  1929. info: fpc_info
  1930. makefiles: fpc_makefiles
  1931. .PHONY: all debug smart release units examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
  1932. ifneq ($(wildcard fpcmake.loc),)
  1933. include fpcmake.loc
  1934. endif
  1935. include $(INC)/makefile.inc
  1936. SYSINCDEPS=$(addprefix $(INC)/,$(SYSINCNAMES))
  1937. include $(PROCINC)/makefile.cpu
  1938. SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
  1939. SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
  1940. $(SYSTEMUNIT)$(PPUEXT) : $(BSDINC)/$(SYSTEMUNIT).pp $(SYSDEPS)
  1941. $(COMPILER) -Us -Sg $(BSDINC)/$(SYSTEMUNIT).pp
  1942. objpas$(PPUEXT): $(SYSTEMUNIT)$(PPUEXT) $(OBJPASDIR)/objpas.pp $(INC)/except.inc $(SYSTEMUNIT)$(PPUEXT)
  1943. $(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/objpas.pp
  1944. dateutils$(PPUEXT): $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) sysutils$(PPUEXT) math$(PPUEXT) types$(PPUEXT) sysconst$(PPUEXT) $(OBJPASDIR)/dateutils.pp baseunix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1945. $(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/dateutils.pp
  1946. strings$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT) $(INC)/strings.pp $(INC)/stringsi.inc\
  1947. $(PROCINC)/strings.inc $(PROCINC)/stringss.inc\
  1948. $(SYSTEMUNIT)$(PPUEXT)
  1949. baseunix$(PPUEXT) : unixtype$(PPUEXT) sysctl$(PPUEXT) errno.inc ptypes.inc $(UNIXINC)/ctypes.inc \
  1950. signal.inc $(UNIXINC)/bunxh.inc \
  1951. $(BSDINC)/bunxsysc.inc \
  1952. $(BSDINC)/ostypes.inc $(BSDINC)/osmacro.inc $(UNIXINC)/gensigset.inc \
  1953. $(UNIXINC)/genfuncs.inc $(SYSTEMUNIT)$(PPUEXT)
  1954. unixtype$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT) $(UNIXINC)/unixtype.pp ptypes.inc $(UNIXINC)/ctypes.inc $(SYSTEMUNIT)$(PPUEXT)
  1955. unix$(PPUEXT) : unixtype$(PPUEXT) baseunix$(PPUEXT) unixutil$(PPUEXT) strings$(PPUEXT) $(UNIXINC)/unix.pp strings$(PPUEXT) $(INC)/textrec.inc $(INC)/filerec.inc \
  1956. unxconst.inc $(UNIXINC)/timezone.inc \
  1957. unxfunc.inc baseunix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1958. unixutil$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT)
  1959. dynlibs$(PPUEXT) : dl$(PPUEXT)
  1960. ctypes$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT) unixtype$(PPUEXT)
  1961. dos$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT) strings$(PPUEXT) unix$(PPUEXT) $(UNIXINC)/dos.pp $(INC)/filerec.inc $(INC)/textrec.inc strings$(PPUEXT) \
  1962. unix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1963. crt$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT) unix$(PPUEXT) termio$(PPUEXT) $(UNIXINC)/crt.pp $(INC)/textrec.inc unix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1964. objects$(PPUEXT) : dos$(PPUEXT) $(INC)/objects.pp $(SYSTEMUNIT)$(PPUEXT)
  1965. printer$(PPUEXT) : unix$(PPUEXT) strings$(PPUEXT) baseunix$(PPUEXT) $(UNIXINC)/printer.pp $(INC)/textrec.inc unix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1966. sysutils$(PPUEXT) : objpas$(PPUEXT) unix$(PPUEXT) errors$(PPUEXT) sysconst$(PPUEXT) $(UNIXINC)/sysutils.pp $(wildcard $(OBJPASDIR)/sysutils/*.inc) \
  1967. objpas$(PPUEXT) unix$(PPUEXT) errors$(PPUEXT) sysconst$(PPUEXT)
  1968. $(COMPILER) -Fi$(OBJPASDIR)/sysutils $(UNIXINC)/sysutils.pp
  1969. classes$(PPUEXT) : sysutils$(PPUEXT) rtlconsts$(PPUEXT) types$(PPUEXT) typinfo$(PPUEXT) unix$(PPUEXT) $(UNIXINC)/classes.pp $(wildcard $(OBJPASDIR)/classes/*.inc) \
  1970. sysutils$(PPUEXT) typinfo$(PPUEXT) rtlconsts$(PPUEXT) types$(PPUEXT)
  1971. $(COMPILER) -Fi$(OBJPASDIR)/classes $(UNIXINC)/classes.pp
  1972. typinfo$(PPUEXT): sysutils$(PPUEXT) $(OBJPASDIR)/typinfo.pp objpas$(PPUEXT) rtlconsts$(PPUEXT)
  1973. $(COMPILER) -Sg $(OBJPASDIR)/typinfo.pp
  1974. math$(PPUEXT): sysutils$(PPUEXT) $(OBJPASDIR)/math.pp objpas$(PPUEXT) sysutils$(PPUEXT)
  1975. $(COMPILER) $(OBJPASDIR)/math.pp
  1976. gettext$(PPUEXT): sysutils$(PPUEXT) $(OBJPASDIR)/gettext.pp objpas$(PPUEXT) sysutils$(PPUEXT)
  1977. $(COMPILER) $(OBJPASDIR)/gettext.pp
  1978. varutils$(PPUEXT) : sysutils$(PPUEXT) $(OBJPASDIR)/cvarutil.inc $(OBJPASDIR)/varutils.inc \
  1979. $(OBJPASDIR)/varutilh.inc varutils.pp
  1980. $(COMPILER) -I$(OBJPASDIR) $(UNIXINC)/varutils.pp
  1981. types$(PPUEXT) : $(OBJPASDIR)/types.pp objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1982. $(COMPILER) $(OBJPASDIR)/types.pp
  1983. sysconst$(PPUEXT) : $(OBJPASDIR)/sysconst.pp objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1984. $(COMPILER) $(OBJPASDIR)/sysconst.pp
  1985. rtlconsts$(PPUEXT) : $(OBJPASDIR)/rtlconsts.pp objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1986. $(COMPILER) $(OBJPASDIR)/rtlconsts.pp
  1987. strutils$(PPUEXT) : $(OBJPASDIR)/strutils.pp objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
  1988. sysutils$(PPUEXT)
  1989. $(COMPILER) $(OBJPASDIR)/strutils.pp
  1990. variants$(PPUEXT) : $(INC)/variants.pp sysutils$(PPUEXT) sysconst$(PPUEXT) varutils$(PPUEXT) typinfo$(PPUEXT) rtlconsts$(PPUEXT)
  1991. $(COMPILER) -Fi$(INC) $(INC)/variants.pp
  1992. macpas$(PPUEXT) : $(INC)/macpas.pp $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT)
  1993. $(COMPILER) $(INC)/macpas.pp $(REDIR)
  1994. video$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT) $(INC)/video.inc $(INC)/videoh.inc $(UNIXINC)/video.pp baseunix$(PPUEXT) strings$(PPUEXT) terminfo$(PPUEXT) termio$(PPUEXT)
  1995. keyboard$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT) $(INC)/keyboard.inc $(INC)/keybrdh.inc $(UNIXINC)/keyboard.pp mouse$(PPUEXT) strings$(PPUEXT) terminfo$(PPUEXT) termio$(PPUEXT) baseunix$(PPUEXT)
  1996. matrix$(PPUEXT) : $(INC)/matrix.pp $(SYSTEMUNIT)$(PPUEXT)
  1997. cpu$(PPUEXT) : $(PROCINC)/cpu.pp $(SYSTEMUNIT)$(PPUEXT)
  1998. mmx$(PPUEXT) : $(PROCINC)/mmx.pp cpu$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1999. getopts$(PPUEXT) : $(INC)/getopts.pp $(SYSTEMUNIT)$(PPUEXT)
  2000. heaptrc$(PPUEXT) : $(INC)/heaptrc.pp $(SYSTEMUNIT)$(PPUEXT)
  2001. $(COMPILER) -Sg $(INC)/heaptrc.pp
  2002. lineinfo$(PPUEXT) : $(INC)/lineinfo.pp $(SYSTEMUNIT)$(PPUEXT) strings$(PPUEXT)
  2003. charset$(PPUEXT) : $(INC)/charset.pp objpas$(PPUEXT)
  2004. ucomplex$(PPUEXT) : $(INC)/ucomplex.pp math$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) math$(PPUEXT)
  2005. termio$(PPUEXT) : baseunix$(PPUEXT)
  2006. mouse$(PPUEXT) : baseunix$(PPUEXT) video$(PPUEXT)
  2007. dl$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT) unixtype$(PPUEXT)
  2008. sockets$(PPUEXT) : $(UNIXINC)/sockets.pp $(INC)/textrec.inc $(INC)/filerec.inc \
  2009. unix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) unixtype$(PPUEXT) baseunix$(PPUEXT) initc$(PPUEXT)
  2010. errors$(PPUEXT) : $(UNIXINC)/errors.pp strings$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) strings$(PPUEXT)
  2011. ipc$(PPUEXT) : $(UNIXINC)/ipc.pp unix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) baseunix$(PPUEXT) syscall$(PPUEXT)
  2012. terminfo$(PPUEXT) : terminfo.pp baseunix$(PPUEXT)
  2013. cmem$(PPUEXT) : $(INC)/cmem.pp $(SYSTEMUNIT)$(PPUEXT)
  2014. sysctl$(PPUEXT) : $(BSDINC)/sysctl.pp $(SYSTEMUNIT)$(PPUEXT)
  2015. cthreads$(PPUEXT) : $(UNIXINC)/cthreads.pp unix$(PPUEXT) sysutils$(PPUEXT)
  2016. initc$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT)
  2017. console$(PPUEXT) : baseunix$(PPUEXT) termio$(PPUEXT)
  2018. ctypes$(PPUEXT) : $(INC)/ctypes.pp $(SYSTEMUNIT)$(PPUEXT)
  2019. cwstring$(PPUEXT) : $(UNIXINC)/cwstring.pp $(SYSTEMUNIT)$(PPUEXT) sysutils$(PPUEXT) baseunix$(PPUEXT) unix$(PPUEXT) unixtype$(PPUEXT) ctypes$(PPUEXT)
  2020. fpmkunit$(PPUEXT) : $(COMMON)/fpmkunit.pp classes$(PPUEXT)