|
@@ -4,9 +4,9 @@
|
|
|
|
|
|
[osdetect]
|
|
|
#####################################################################
|
|
|
-# Autodetect OS (Linux or Dos or Windows NT or OS/2)
|
|
|
+# Autodetect source OS (Linux or Dos or Windows NT or OS/2 or other)
|
|
|
# define inUnix when running under Unix like environment
|
|
|
-# (Linux,FreeBSD,NetBSD,Darwin,Cygwin)
|
|
|
+# (Linux,FreeBSD,NetBSD,OpenBSD,Darwin,Cygwin)
|
|
|
# define inWinNT when running under WinNT
|
|
|
# define inOS2 when running under OS/2
|
|
|
# define inCygwin when running under Cygwin32
|
|
@@ -26,7 +26,7 @@ endif
|
|
|
# Add path were make is located
|
|
|
SEARCHPATH+=$(patsubst %/,%,$(subst \,/,$(dir $(MAKE))))
|
|
|
|
|
|
-# Search for PWD and determine also if we are under linux
|
|
|
+# Search for PWD
|
|
|
PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
|
|
|
ifeq ($(PWD),)
|
|
|
PWD:=$(strip $(wildcard $(addsuffix /pwd,$(SEARCHPATH))))
|
|
@@ -57,23 +57,6 @@ inCygWin=1
|
|
|
endif
|
|
|
endif
|
|
|
|
|
|
-# Detect BSD, since BSD uses a slightly different directory hierarchy.
|
|
|
-# Note that maybe Linux Slackware users would also like this, since
|
|
|
-# Slackwares hierachy is closer to BSD than other unices IIRC.
|
|
|
-
|
|
|
-ifeq ($(OS_TARGET),freebsd)
|
|
|
-BSDhier=1
|
|
|
-endif
|
|
|
-ifeq ($(OS_TARGET),netbsd)
|
|
|
-BSDhier=1
|
|
|
-endif
|
|
|
-ifeq ($(OS_TARGET),openbsd)
|
|
|
-BSDhier=1
|
|
|
-endif
|
|
|
-ifeq ($(OS_TARGET),darwin)
|
|
|
-BSDhier=1
|
|
|
-endif
|
|
|
-
|
|
|
# The extension of batch files / scripts
|
|
|
ifdef inUnix
|
|
|
SRCBATCHEXT=.sh
|
|
@@ -235,6 +218,26 @@ $(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake fir
|
|
|
endif
|
|
|
endif
|
|
|
|
|
|
+
|
|
|
+# Detect BSD, since BSD uses a slightly different directory hierarchy.
|
|
|
+ifeq ($(OS_TARGET),freebsd)
|
|
|
+BSDhier=1
|
|
|
+endif
|
|
|
+ifeq ($(OS_TARGET),netbsd)
|
|
|
+BSDhier=1
|
|
|
+endif
|
|
|
+ifeq ($(OS_TARGET),openbsd)
|
|
|
+BSDhier=1
|
|
|
+endif
|
|
|
+ifeq ($(OS_TARGET),darwin)
|
|
|
+BSDhier=1
|
|
|
+endif
|
|
|
+
|
|
|
+# Detect Linux, will also use its own directory hierarchy.
|
|
|
+ifeq ($(OS_TARGET),linux)
|
|
|
+linuxHier=1
|
|
|
+endif
|
|
|
+
|
|
|
export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE CROSSCOMPILE
|
|
|
|
|
|
|
|
@@ -545,8 +548,12 @@ ifdef UNIXINSTALLDIR
|
|
|
ifdef BSDhier
|
|
|
SRCPREFIXDIR=share/src
|
|
|
else
|
|
|
+ifdef linuxHier
|
|
|
+SRCPREFIXDIR=share/src
|
|
|
+else
|
|
|
SRCPREFIXDIR=src
|
|
|
endif
|
|
|
+endif
|
|
|
ifdef INSTALL_FPCPACKAGE
|
|
|
ifdef INSTALL_FPCSUBDIR
|
|
|
INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
|
|
@@ -575,8 +582,12 @@ ifdef UNIXINSTALLDIR
|
|
|
ifdef BSDhier
|
|
|
DOCPREFIXDIR=share/doc
|
|
|
else
|
|
|
+ifdef linuxHier
|
|
|
+DOCPREFIXDIR=share/doc
|
|
|
+else
|
|
|
DOCPREFIXDIR=doc
|
|
|
endif
|
|
|
+endif
|
|
|
ifdef INSTALL_FPCPACKAGE
|
|
|
INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
|
|
|
else
|
|
@@ -596,16 +607,28 @@ endif
|
|
|
ifndef INSTALL_EXAMPLEDIR
|
|
|
ifdef UNIXINSTALLDIR
|
|
|
ifdef INSTALL_FPCPACKAGE
|
|
|
+
|
|
|
ifdef BSDhier
|
|
|
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
|
|
|
else
|
|
|
+ifdef linuxHier
|
|
|
+INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
|
|
|
+else
|
|
|
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
|
|
|
endif
|
|
|
+endif
|
|
|
+
|
|
|
else
|
|
|
+
|
|
|
ifdef BSDhier
|
|
|
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
|
|
|
else
|
|
|
+ifdef linuxHier
|
|
|
+INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
|
|
|
+else
|
|
|
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
|
|
|
+endif
|
|
|
+
|
|
|
endif
|
|
|
endif
|
|
|
else
|