aboutsummaryrefslogtreecommitdiff
path: root/externals
diff options
context:
space:
mode:
authorThomas Grill <xovo@users.sourceforge.net>2004-12-19 05:04:19 +0000
committerThomas Grill <xovo@users.sourceforge.net>2004-12-19 05:04:19 +0000
commit48c6d0ca4c82a190683380e45821159636080e51 (patch)
tree26f5606b683c0aa998ce68d1670fb5a528755c65 /externals
parentf90c5622c0eb6fbecb35e2d1f9d4f37963d29f89 (diff)
simplified make system
updated make system svn path=/trunk/; revision=2412
Diffstat (limited to 'externals')
-rw-r--r--externals/grill/flext/build/bmake-sub.mak25
-rw-r--r--externals/grill/flext/build/bmake.mak87
-rw-r--r--externals/grill/flext/build/build-bcc.bat3
-rw-r--r--externals/grill/flext/build/build-cygwin.sh3
-rw-r--r--externals/grill/flext/build/build-gcc.sh3
-rw-r--r--externals/grill/flext/build/build-mingw.bat3
-rw-r--r--externals/grill/flext/build/build-msvc.bat3
-rw-r--r--externals/grill/flext/build/gnumake-sub.mak26
-rw-r--r--externals/grill/flext/build/gnumake.mak117
-rw-r--r--externals/grill/flext/build/lnx/make-gcc.inc (renamed from externals/grill/flext/build/make-lnx-gen-gcc.inc)0
-rw-r--r--externals/grill/flext/build/lnx/pd/config-gcc.def (renamed from externals/grill/flext/build/config-lnx-pd-gcc.def)0
-rw-r--r--externals/grill/flext/build/lnx/pd/make-gcc.inc (renamed from externals/grill/flext/build/make-lnx-pd-gcc.inc)0
-rw-r--r--externals/grill/flext/build/mac/make-gcc.inc (renamed from externals/grill/flext/build/make-mac-gen-gcc.inc)0
-rw-r--r--externals/grill/flext/build/mac/pd/config-gcc.def (renamed from externals/grill/flext/build/config-mac-pd-gcc.def)0
-rw-r--r--externals/grill/flext/build/mac/pd/make-gcc.inc (renamed from externals/grill/flext/build/make-mac-pd-gcc.inc)0
-rw-r--r--externals/grill/flext/build/make-win-msvc.inc22
-rw-r--r--externals/grill/flext/build/nmake-sub.mak24
-rw-r--r--externals/grill/flext/build/nmake.mak83
-rw-r--r--externals/grill/flext/build/win/make-bcc.inc (renamed from externals/grill/flext/build/make-win-gen-bcc.inc)6
-rw-r--r--externals/grill/flext/build/win/make-cygwin.inc (renamed from externals/grill/flext/build/make-win-gen-cygwin.inc)0
-rw-r--r--externals/grill/flext/build/win/make-mingw.inc (renamed from externals/grill/flext/build/make-win-gen-mingw.inc)9
-rw-r--r--externals/grill/flext/build/win/make-msvc.inc (renamed from externals/grill/flext/build/make-win-gen-msvc.inc)0
-rw-r--r--externals/grill/flext/build/win/max/config-mingw.def (renamed from externals/grill/flext/build/config-win-max-mingw.def)0
-rw-r--r--externals/grill/flext/build/win/max/config-msvc.def (renamed from externals/grill/flext/build/config-win-max-msvc.def)0
-rw-r--r--externals/grill/flext/build/win/max/make-mingw.inc (renamed from externals/grill/flext/build/make-win-max-mingw.inc)0
-rw-r--r--externals/grill/flext/build/win/max/make-msvc.inc (renamed from externals/grill/flext/build/make-win-max-msvc.inc)0
-rw-r--r--externals/grill/flext/build/win/pd/config-bcc.def (renamed from externals/grill/flext/build/config-win-pd-bcc.def)0
-rw-r--r--externals/grill/flext/build/win/pd/config-cygwin.def (renamed from externals/grill/flext/build/config-win-pd-cygwin.def)0
-rw-r--r--externals/grill/flext/build/win/pd/config-mingw.def (renamed from externals/grill/flext/build/config-win-pd-mingw.def)0
-rw-r--r--externals/grill/flext/build/win/pd/config-msvc.def (renamed from externals/grill/flext/build/config-win-pd-msvc.def)0
-rw-r--r--externals/grill/flext/build/win/pd/make-bcc.inc (renamed from externals/grill/flext/build/make-win-pd-bcc.inc)0
-rw-r--r--externals/grill/flext/build/win/pd/make-cygwin.inc (renamed from externals/grill/flext/build/make-win-pd-cygwin.inc)0
-rw-r--r--externals/grill/flext/build/win/pd/make-mingw.inc (renamed from externals/grill/flext/build/make-win-pd-mingw.inc)0
-rw-r--r--externals/grill/flext/build/win/pd/make-msvc.inc (renamed from externals/grill/flext/build/make-win-pd-msvc.inc)0
-rw-r--r--externals/grill/flext/buildext.bat41
-rw-r--r--externals/grill/flext/buildext.sh33
36 files changed, 395 insertions, 93 deletions
diff --git a/externals/grill/flext/build/bmake-sub.mak b/externals/grill/flext/build/bmake-sub.mak
new file mode 100644
index 00000000..bf9fc6c5
--- /dev/null
+++ b/externals/grill/flext/build/bmake-sub.mak
@@ -0,0 +1,25 @@
+!include $(BUILDPATH)config-$(PLATFORM)-$(RTSYS)-$(COMPILER).txt
+
+###############################
+
+# these are project specific
+
+# package info
+!include build\package.txt
+
+# special package settings
+!ifdef USRCONFIG
+!include $(USRCONFIG)
+!endif
+
+# package specific make stuff
+!ifdef USRMAKE
+!include $(USRMAKE)
+!endif
+
+##############################
+
+# platform-specific make stuff
+!include $(BUILDPATH)$(PLATFORM)\$(RTSYS)\make-$(COMPILER).inc
+# general make stuff
+!include $(BUILDPATH)$(PLATFORM)\make-$(COMPILER).inc
diff --git a/externals/grill/flext/build/bmake.mak b/externals/grill/flext/build/bmake.mak
index 5ee54fbb..1a3fc47d 100644
--- a/externals/grill/flext/build/bmake.mak
+++ b/externals/grill/flext/build/bmake.mak
@@ -1,29 +1,78 @@
-# PLATFORM - win
+# required settings:
+#
+# PLATFORM - win/mac/lnx
# RTSYS - pd/max
-# COMPILER - bcc
+# COMPILER - msvc/gcc/mingw/cygwin
+# BUILDPATH including trailing \
-# this should be improved
-BUILDPATH=..\flext\build
+# package info
+!include build\package.txt
-# general settings
-!include $(BUILDPATH)\config-$(PLATFORM)-$(RTSYS)-$(COMPILER).txt
+SYSCONFIG=$(BUILDPATH)config-$(PLATFORM)-$(RTSYS)-$(COMPILER).txt
+SYSDEFAULT=$(BUILDPATH)$(PLATFORM)\$(RTSYS)\config-$(COMPILER).def
-###############################
-# these are project specific
+OPTIONS=-f $(BUILDPATH)bmake-sub.mak -N \
+ PLATFORM=$(PLATFORM) RTSYS=$(RTSYS) COMPILER=$(COMPILER) \
+ BUILDPATH=$(BUILDPATH)
-# special package settings
-!include config-$(PLATFORM)-$(COMPILER).txt
+!ifdef HAVECONFIG
+USRCONFIG=config.txt
+USRDEFAULT=build\config-$(PLATFORM).def
+OPTIONS=$(OPTIONS) USRCONFIG=$(USRCONFIG)
+!endif
-# package specific make stuff
-!include makefile-$(PLATFORM)-$(COMPILER).txt
+!ifdef HAVEMAKE
+USRMAKE=build\makefile-$(PLATFORM)-$(COMPILER).inc
+OPTIONS=$(OPTIONS) USRMAKE=$(USRMAKE)
+!endif
-# package info
-!include make-files.txt
-##############################
+all: config
+ $(MAKE) $(OPTIONS) all
+
+all-debug: config
+ $(MAKE) $(OPTIONS) DEBUG=1 $@
+
+all-shared: config
+ $(MAKE) $(OPTIONS) SHARED=1 $@
+
+all-shared-debug: config
+ $(MAKE) $(OPTIONS) SHARED=1 DEBUG=1 $@
+
+clean install:
+ $(MAKE) $(OPTIONS) $@
+
+
+config: $(USRMAKE) $(SYSCONFIG) $(USRCONFIG)
+
+
+.precious: $(SYSCONFIG) $(USRCONFIG)
+
+$(SYSCONFIG): $(SYSDEFAULT)
+ @copy $** $@
+ @echo -------------------------------------------------------------------------
+ @echo A default system configuration file has been created.
+ @echo Please edit $(SYSCONFIG)
+ @echo to match your platform and start again.
+ @echo -------------------------------------------------------------------------
+ @exit 1
+
+!ifdef HAVECONFIG
+$(USRCONFIG): $(USRDEFAULT)
+ @copy $** $@
+ @echo -------------------------------------------------------------------------
+ @echo A default package configuration file has been created.
+ @echo Please edit $(USRCONFIG) and start again.
+ @echo -------------------------------------------------------------------------
+ @exit 1
+!endif
-# platform-specific make stuff
-!include $(BUILDPATH)\make-$(PLATFORM)-$(RTSYS)-$(COMPILER).inc
-# general make stuff
-!include $(BUILDPATH)\make-$(PLATFORM)-gen-$(COMPILER).inc
+!ifdef HAVEMAKE
+$(USRMAKE):
+ @echo -------------------------------------------------------------------------
+ @echo Your combination of platform, system and compiler is not supported yet.
+ @echo Required file: $(USRMAKE)
+ @echo -------------------------------------------------------------------------
+ @exit 1
+!endif
diff --git a/externals/grill/flext/build/build-bcc.bat b/externals/grill/flext/build/build-bcc.bat
new file mode 100644
index 00000000..00e48b72
--- /dev/null
+++ b/externals/grill/flext/build/build-bcc.bat
@@ -0,0 +1,3 @@
+@set build=%~dp0
+
+make -f %build%bmake.mak -N PLATFORM=%1 RTSYS=%2 COMPILER=bcc BUILDPATH=%build% %3 %4 %5 %6 %7 %8 %9
diff --git a/externals/grill/flext/build/build-cygwin.sh b/externals/grill/flext/build/build-cygwin.sh
new file mode 100644
index 00000000..df3b4f7b
--- /dev/null
+++ b/externals/grill/flext/build/build-cygwin.sh
@@ -0,0 +1,3 @@
+build=${0%/*}/
+
+make -f ${build}gnumake.mak PLATFORM=$1 RTSYS=$2 COMPILER=cygwin BUILDPATH=${build} $3 $4 $5 $6 $7 $8 $9
diff --git a/externals/grill/flext/build/build-gcc.sh b/externals/grill/flext/build/build-gcc.sh
new file mode 100644
index 00000000..3fffd918
--- /dev/null
+++ b/externals/grill/flext/build/build-gcc.sh
@@ -0,0 +1,3 @@
+build=${0%/*}/
+
+make -f ${build}gnumake.mak PLATFORM=$1 RTSYS=$2 COMPILER=gcc BUILDPATH=${build} $3 $4 $5 $6 $7 $8 $9
diff --git a/externals/grill/flext/build/build-mingw.bat b/externals/grill/flext/build/build-mingw.bat
new file mode 100644
index 00000000..2c946bff
--- /dev/null
+++ b/externals/grill/flext/build/build-mingw.bat
@@ -0,0 +1,3 @@
+@set build=%~dp0
+
+mingw32-make -f %build%gnumake.mak PLATFORM=%1 RTSYS=%2 COMPILER=mingw BUILDPATH=%build% %3 %4 %5 %6 %7 %8 %9
diff --git a/externals/grill/flext/build/build-msvc.bat b/externals/grill/flext/build/build-msvc.bat
new file mode 100644
index 00000000..c50ed8e9
--- /dev/null
+++ b/externals/grill/flext/build/build-msvc.bat
@@ -0,0 +1,3 @@
+@set build=%~dp0
+
+nmake -f %build%nmake.mak PLATFORM=%1 RTSYS=%2 COMPILER=msvc BUILDPATH=%build% %3 %4 %5 %6 %7 %8 %9
diff --git a/externals/grill/flext/build/gnumake-sub.mak b/externals/grill/flext/build/gnumake-sub.mak
new file mode 100644
index 00000000..c4b1f0cf
--- /dev/null
+++ b/externals/grill/flext/build/gnumake-sub.mak
@@ -0,0 +1,26 @@
+# system settings
+include $(BUILDPATH)config-$(PLATFORM)-$(RTSYS)-$(COMPILER).txt
+
+###############################
+
+# these are project specific
+
+# package info
+include build/package.txt
+
+# special settings
+ifdef USRCONFIG
+include $(USRCONFIG)
+endif
+
+# package specific make stuff
+ifdef USRMAKE
+include $(USRMAKE)
+endif
+
+##############################
+
+# platform-specific make stuff
+include $(BUILDPATH)$(PLATFORM)/$(RTSYS)/make-$(COMPILER).inc
+# general make stuff
+include $(BUILDPATH)$(PLATFORM)/make-$(COMPILER).inc
diff --git a/externals/grill/flext/build/gnumake.mak b/externals/grill/flext/build/gnumake.mak
index 9754633d..48283692 100644
--- a/externals/grill/flext/build/gnumake.mak
+++ b/externals/grill/flext/build/gnumake.mak
@@ -1,28 +1,89 @@
-# PLATFORM - win/mac/lnx
-# RTSYS - pd/max
-# COMPILER - msvc/gcc/mingw/cygwin
-
-# this should be improved
-BUILDPATH=../flext/build
-
-include $(BUILDPATH)/config-$(PLATFORM)-$(RTSYS)-$(COMPILER).txt
-
-###############################
-
-# these are project specific
-
-# special settings
-include config-$(PLATFORM)-$(COMPILER).txt
-
-# package specific make stuff
-include makefile-$(PLATFORM)-$(COMPILER).txt
-
-# package info
-include make-files.txt
-
-##############################
-
-# platform-specific make stuff
-include $(BUILDPATH)/make-$(PLATFORM)-$(RTSYS)-$(COMPILER).inc
-# general make stuff
-include $(BUILDPATH)/make-$(PLATFORM)-gen-$(COMPILER).inc
+# required settings:
+#
+# PLATFORM - win/mac/lnx
+# RTSYS - pd/max
+# COMPILER - msvc/gcc/mingw/cygwin
+# BUILDPATH including trailing /
+
+# package info
+include build/package.txt
+
+
+ifeq ($(PLATFORM),win)
+ # substitute eventual \ by /
+ UBUILDPATH=$(subst \,/,$(BUILDPATH))
+else
+ UBUILDPATH=$(BUILDPATH)
+endif
+
+
+SYSCONFIG=$(UBUILDPATH)config-$(PLATFORM)-$(RTSYS)-$(COMPILER).txt
+SYSDEFAULT=$(UBUILDPATH)$(PLATFORM)/$(RTSYS)/config-$(COMPILER).def
+
+
+OPTIONS=-f $(UBUILDPATH)gnumake-sub.mak \
+ PLATFORM=$(PLATFORM) RTSYS=$(RTSYS) COMPILER=$(COMPILER) \
+ BUILDPATH=$(UBUILDPATH)
+
+
+ifdef HAVECONFIG
+USRCONFIG=config.txt
+USRDEFAULT=build/config-$(PLATFORM).def
+OPTIONS+=USRCONFIG=$(USRCONFIG)
+endif
+
+ifdef HAVEMAKE
+USRMAKE=build/makefile-$(PLATFORM)-$(COMPILER).inc
+OPTIONS+=USRMAKE=$(USRMAKE)
+endif
+
+
+all: config
+ $(MAKE) $(OPTIONS) all
+
+all-debug: config
+ $(MAKE) $(OPTIONS) DEBUG=1 $@
+
+all-shared: config
+ $(MAKE) $(OPTIONS) SHARED=1 $@
+
+all-shared-debug: config
+ $(MAKE) $(OPTIONS) SHARED=1 DEBUG=1 $@
+
+clean install:
+ $(MAKE) $(OPTIONS) $@
+
+
+config: $(USRMAKE) $(SYSCONFIG) $(USRCONFIG)
+
+
+.precious: $(SYSCONFIG) $(USRCONFIG)
+
+$(SYSCONFIG): $(SYSDEFAULT)
+ @cp $< $@
+ @echo -------------------------------------------------------------------------
+ @echo A default system configuration file has been created.
+ @echo Please edit $(SYSCONFIG)
+ @echo to match your platform and start again.
+ @echo -------------------------------------------------------------------------
+ @false
+
+ifdef HAVECONFIG
+$(USRCONFIG): $(USRDEFAULT)
+ @cp $< $@
+ @echo -------------------------------------------------------------------------
+ @echo A default package configuration file has been created.
+ @echo Please edit $(USRCONFIG) and start again.
+ @echo -------------------------------------------------------------------------
+ @false
+endif
+
+ifdef HAVEMAKE
+$(USRMAKE):
+ @echo -------------------------------------------------------------------------
+ @echo Your combination of platform, system and compiler is not supported yet.
+ @echo Required file: $(USRMAKE)
+ @echo -------------------------------------------------------------------------
+ @false
+endif
+
diff --git a/externals/grill/flext/build/make-lnx-gen-gcc.inc b/externals/grill/flext/build/lnx/make-gcc.inc
index 3c474864..3c474864 100644
--- a/externals/grill/flext/build/make-lnx-gen-gcc.inc
+++ b/externals/grill/flext/build/lnx/make-gcc.inc
diff --git a/externals/grill/flext/build/config-lnx-pd-gcc.def b/externals/grill/flext/build/lnx/pd/config-gcc.def
index 56ddc5d8..56ddc5d8 100644
--- a/externals/grill/flext/build/config-lnx-pd-gcc.def
+++ b/externals/grill/flext/build/lnx/pd/config-gcc.def
diff --git a/externals/grill/flext/build/make-lnx-pd-gcc.inc b/externals/grill/flext/build/lnx/pd/make-gcc.inc
index 2db3fe3d..2db3fe3d 100644
--- a/externals/grill/flext/build/make-lnx-pd-gcc.inc
+++ b/externals/grill/flext/build/lnx/pd/make-gcc.inc
diff --git a/externals/grill/flext/build/make-mac-gen-gcc.inc b/externals/grill/flext/build/mac/make-gcc.inc
index ffb49720..ffb49720 100644
--- a/externals/grill/flext/build/make-mac-gen-gcc.inc
+++ b/externals/grill/flext/build/mac/make-gcc.inc
diff --git a/externals/grill/flext/build/config-mac-pd-gcc.def b/externals/grill/flext/build/mac/pd/config-gcc.def
index 6409e901..6409e901 100644
--- a/externals/grill/flext/build/config-mac-pd-gcc.def
+++ b/externals/grill/flext/build/mac/pd/config-gcc.def
diff --git a/externals/grill/flext/build/make-mac-pd-gcc.inc b/externals/grill/flext/build/mac/pd/make-gcc.inc
index 560c6ebb..560c6ebb 100644
--- a/externals/grill/flext/build/make-mac-pd-gcc.inc
+++ b/externals/grill/flext/build/mac/pd/make-gcc.inc
diff --git a/externals/grill/flext/build/make-win-msvc.inc b/externals/grill/flext/build/make-win-msvc.inc
deleted file mode 100644
index 56b4deee..00000000
--- a/externals/grill/flext/build/make-win-msvc.inc
+++ /dev/null
@@ -1,22 +0,0 @@
-!ifdef $(MAX)
-# Max/MSP
-!include config-pd-msvc.txt
-!include makefile-msvc.txt
-!include ..\flext\build\make-win-max-msvc.inc
-
-!elseifdef $(PD)
-# PD
-!include config-pd-msvc.txt
-!include makefile-msvc.txt
-!include ..\flext\build\make-win-pd-msvc.inc
-
-!else
-!error Platform not supported
-!endif
-
-# all the source files from the package
-!include make-files.txt
-
-# now build
-!include ..\flext\build\make-win-gen-msvc.inc
-
diff --git a/externals/grill/flext/build/nmake-sub.mak b/externals/grill/flext/build/nmake-sub.mak
new file mode 100644
index 00000000..75f8ea9e
--- /dev/null
+++ b/externals/grill/flext/build/nmake-sub.mak
@@ -0,0 +1,24 @@
+# general settings
+!include $(BUILDPATH)config-$(PLATFORM)-$(RTSYS)-$(COMPILER).txt
+
+##############################
+
+# package info
+!include build/package.txt
+
+# special package settings
+!ifdef USRCONFIG
+!include $(USRCONFIG)
+!endif
+
+# package specific make stuff
+!ifdef USRMAKE
+!include $(USRMAKE)
+!endif
+
+##############################
+
+# platform-specific make stuff
+!include $(BUILDPATH)$(PLATFORM)\$(RTSYS)\make-$(COMPILER).inc
+# general make stuff
+!include $(BUILDPATH)$(PLATFORM)\make-$(COMPILER).inc
diff --git a/externals/grill/flext/build/nmake.mak b/externals/grill/flext/build/nmake.mak
index c8c599f1..35b3de0c 100644
--- a/externals/grill/flext/build/nmake.mak
+++ b/externals/grill/flext/build/nmake.mak
@@ -1,30 +1,79 @@
+# required settings:
+#
# PLATFORM - win/mac/lnx
# RTSYS - pd/max
# COMPILER - msvc/gcc/mingw/cygwin
+# BUILDPATH including trailing \
-# general settings
-!include config-$(PLATFORM)-$(RTSYS)-$(COMPILER).txt
+# package info
+!include build\package.txt
+
+SYSCONFIG=$(BUILDPATH)config-$(PLATFORM)-$(RTSYS)-$(COMPILER).txt
+SYSDEFAULT=$(BUILDPATH)$(PLATFORM)\$(RTSYS)\config-$(COMPILER).def
-###############################
-# these are project specific
+OPTIONS=-f $(BUILDPATH)nmake-sub.mak \
+ PLATFORM=$(PLATFORM) RTSYS=$(RTSYS) COMPILER=$(COMPILER) \
+ BUILDPATH=$(BUILDPATH)
-# special package settings
-!if exist(config-$(PLATFORM)-$(COMPILER).txt)
-!include config-$(PLATFORM)-$(COMPILER).txt
+
+!ifdef HAVECONFIG
+USRCONFIG=config.txt
+USRDEFAULT=build\config-$(PLATFORM).def
+OPTIONS=$(OPTIONS) USRCONFIG=$(USRCONFIG)
!endif
-# package specific make stuff
-!if exist(makefile-$(PLATFORM)-$(COMPILER).txt)
-!include makefile-$(PLATFORM)-$(COMPILER).txt
+!ifdef HAVEMAKE
+USRMAKE=build\makefile-$(PLATFORM)-$(COMPILER).inc
+OPTIONS=$(OPTIONS) USRMAKE=$(USRMAKE)
!endif
-# package info
-!include make-files.txt
-##############################
+all: config
+ $(MAKE) $(OPTIONS) all
+
+all-debug: config
+ $(MAKE) $(OPTIONS) DEBUG=1 $@
+
+all-shared: config
+ $(MAKE) $(OPTIONS) SHARED=1 $@
+
+all-shared-debug: config
+ $(MAKE) $(OPTIONS) SHARED=1 DEBUG=1 $@
+
+clean install:
+ $(MAKE) $(OPTIONS) $@
-# platform-specific make stuff
-!include make-$(PLATFORM)-$(RTSYS)-$(COMPILER).inc
-# general make stuff
-!include make-$(PLATFORM)-gen-$(COMPILER).inc
+
+config: $(USRMAKE) $(SYSCONFIG) $(USRCONFIG)
+
+
+.precious: $(SYSCONFIG) $(USRCONFIG)
+
+$(SYSCONFIG): $(SYSDEFAULT)
+ @copy $** $@
+ @echo -------------------------------------------------------------------------
+ @echo A default system configuration file has been created.
+ @echo Please edit $(SYSCONFIG)
+ @echo to match your platform and start again.
+ @echo -------------------------------------------------------------------------
+ @exit 1
+
+!ifdef HAVECONFIG
+$(USRCONFIG): $(USRDEFAULT)
+ @copy $** $@
+ @echo -------------------------------------------------------------------------
+ @echo A default package configuration file has been created.
+ @echo Please edit $(USRCONFIG) and start again.
+ @echo -------------------------------------------------------------------------
+ @exit 1
+!endif
+
+!ifdef HAVEMAKE
+$(USRMAKE):
+ @echo -------------------------------------------------------------------------
+ @echo Your combination of platform, system and compiler is not supported yet.
+ @echo Required file: $(USRMAKE)
+ @echo -------------------------------------------------------------------------
+ @exit 1
+!endif
diff --git a/externals/grill/flext/build/make-win-gen-bcc.inc b/externals/grill/flext/build/win/make-bcc.inc
index b9fcabec..2ef1acfc 100644
--- a/externals/grill/flext/build/make-win-gen-bcc.inc
+++ b/externals/grill/flext/build/win/make-bcc.inc
@@ -72,12 +72,14 @@ $(TARGET) :: $(OBJS)
ilink32 $(LDFLAGS) $(LIBPATH) $** ,..\$<,,$(LIBS),$(NAME).def
cd ..
+$(INSTPATH):
+ -mkdir $@
+
# remove build
clean:
-del /q $(OUTPATH) > nul
-rmdir $(OUTPATH) > nul
# install build
-install:
- @-if not exist $(INSTPATH) mkdir $(INSTPATH)
+install: $(INSTPATH) $(TARGET)
copy $(TARGET) $(INSTPATH) > nul
diff --git a/externals/grill/flext/build/make-win-gen-cygwin.inc b/externals/grill/flext/build/win/make-cygwin.inc
index 3c474864..3c474864 100644
--- a/externals/grill/flext/build/make-win-gen-cygwin.inc
+++ b/externals/grill/flext/build/win/make-cygwin.inc
diff --git a/externals/grill/flext/build/make-win-gen-mingw.inc b/externals/grill/flext/build/win/make-mingw.inc
index 50d3c25c..3c4e4b1d 100644
--- a/externals/grill/flext/build/make-win-gen-mingw.inc
+++ b/externals/grill/flext/build/win/make-mingw.inc
@@ -44,7 +44,7 @@ all: $(OUTPATH) $(TARGET)
# touch $@
$(OUTPATH):
- mkdir $(OUTPATH)
+ -mkdir $(subst /,\,$@)
$(OUTPATH)/%.opp : $(SRCDIR)/%.cpp
$(CXX) -c $(CFLAGS) $(DEFS) $(INCPATH) $< -o $@
@@ -54,16 +54,15 @@ $(OUTPATH)/%.o : $(SRCDIR)/%.c
$(TARGET) : $(COBJS) $(CPPOBJS)
$(CXX) $(LDFLAGS) $(LIBPATH) -o $@ $^ $(LIBS)
- chmod 755 $@
$(INSTPATH):
- mkdir $(INSTPATH)
+ -mkdir $(subst /,\,$@)
install:: $(INSTPATH)
install:: $(TARGET)
- $(CP) $^ $(INSTPATH)
+ copy $(subst /,\,$^ $(INSTPATH))
.PHONY: clean
clean:
- $(RM) $(COBJS) $(CPPOBJS) $(TARGET)
+ -del $(subst /,\,$(COBJS) $(CPPOBJS) $(TARGET))
diff --git a/externals/grill/flext/build/make-win-gen-msvc.inc b/externals/grill/flext/build/win/make-msvc.inc
index 1fc06c8f..1fc06c8f 100644
--- a/externals/grill/flext/build/make-win-gen-msvc.inc
+++ b/externals/grill/flext/build/win/make-msvc.inc
diff --git a/externals/grill/flext/build/config-win-max-mingw.def b/externals/grill/flext/build/win/max/config-mingw.def
index d6bbd4dc..d6bbd4dc 100644
--- a/externals/grill/flext/build/config-win-max-mingw.def
+++ b/externals/grill/flext/build/win/max/config-mingw.def
diff --git a/externals/grill/flext/build/config-win-max-msvc.def b/externals/grill/flext/build/win/max/config-msvc.def
index a7db2d2c..a7db2d2c 100644
--- a/externals/grill/flext/build/config-win-max-msvc.def
+++ b/externals/grill/flext/build/win/max/config-msvc.def
diff --git a/externals/grill/flext/build/make-win-max-mingw.inc b/externals/grill/flext/build/win/max/make-mingw.inc
index c34825f8..c34825f8 100644
--- a/externals/grill/flext/build/make-win-max-mingw.inc
+++ b/externals/grill/flext/build/win/max/make-mingw.inc
diff --git a/externals/grill/flext/build/make-win-max-msvc.inc b/externals/grill/flext/build/win/max/make-msvc.inc
index 636029fa..636029fa 100644
--- a/externals/grill/flext/build/make-win-max-msvc.inc
+++ b/externals/grill/flext/build/win/max/make-msvc.inc
diff --git a/externals/grill/flext/build/config-win-pd-bcc.def b/externals/grill/flext/build/win/pd/config-bcc.def
index b93cece3..b93cece3 100644
--- a/externals/grill/flext/build/config-win-pd-bcc.def
+++ b/externals/grill/flext/build/win/pd/config-bcc.def
diff --git a/externals/grill/flext/build/config-win-pd-cygwin.def b/externals/grill/flext/build/win/pd/config-cygwin.def
index 1c92fe66..1c92fe66 100644
--- a/externals/grill/flext/build/config-win-pd-cygwin.def
+++ b/externals/grill/flext/build/win/pd/config-cygwin.def
diff --git a/externals/grill/flext/build/config-win-pd-mingw.def b/externals/grill/flext/build/win/pd/config-mingw.def
index a721d45d..a721d45d 100644
--- a/externals/grill/flext/build/config-win-pd-mingw.def
+++ b/externals/grill/flext/build/win/pd/config-mingw.def
diff --git a/externals/grill/flext/build/config-win-pd-msvc.def b/externals/grill/flext/build/win/pd/config-msvc.def
index aa4c5feb..aa4c5feb 100644
--- a/externals/grill/flext/build/config-win-pd-msvc.def
+++ b/externals/grill/flext/build/win/pd/config-msvc.def
diff --git a/externals/grill/flext/build/make-win-pd-bcc.inc b/externals/grill/flext/build/win/pd/make-bcc.inc
index bcc062eb..bcc062eb 100644
--- a/externals/grill/flext/build/make-win-pd-bcc.inc
+++ b/externals/grill/flext/build/win/pd/make-bcc.inc
diff --git a/externals/grill/flext/build/make-win-pd-cygwin.inc b/externals/grill/flext/build/win/pd/make-cygwin.inc
index e8913af7..e8913af7 100644
--- a/externals/grill/flext/build/make-win-pd-cygwin.inc
+++ b/externals/grill/flext/build/win/pd/make-cygwin.inc
diff --git a/externals/grill/flext/build/make-win-pd-mingw.inc b/externals/grill/flext/build/win/pd/make-mingw.inc
index a49e5b7a..a49e5b7a 100644
--- a/externals/grill/flext/build/make-win-pd-mingw.inc
+++ b/externals/grill/flext/build/win/pd/make-mingw.inc
diff --git a/externals/grill/flext/build/make-win-pd-msvc.inc b/externals/grill/flext/build/win/pd/make-msvc.inc
index cec66266..cec66266 100644
--- a/externals/grill/flext/build/make-win-pd-msvc.inc
+++ b/externals/grill/flext/build/win/pd/make-msvc.inc
diff --git a/externals/grill/flext/buildext.bat b/externals/grill/flext/buildext.bat
new file mode 100644
index 00000000..0fcd07b8
--- /dev/null
+++ b/externals/grill/flext/buildext.bat
@@ -0,0 +1,41 @@
+@set flext=%~dp0
+
+@rem Arguments:
+@rem %1 - platform (win/lnx/mac)
+@rem %2 - system (pd/max)
+@rem %3 - compiler (msvc/gcc/mingw/cygwin/bcc/icc)
+@rem %4 - target (all/all-debug/all-shared/all-shared-debug/clean/install)
+
+@set platform=%1
+@set rtsys=%2
+@set compiler=%3
+@set target=%4
+
+@rem --- The subbatch knowns which make utility to use ---
+@set subbatch=%flext%build\build-%compiler%.bat
+
+@if "%platform%"=="" goto syntax
+@if "%rtsys%"=="" goto syntax
+@if "%compiler%"=="" goto syntax
+
+@if not exist %subbatch% goto syntax
+
+@call %subpatch% %subbatch% %platform% %rtsys% %target% %5 %6 %7 %8 %9
+
+@goto end
+
+@rem -----------------------------------------
+:syntax
+
+@echo .
+@echo SYNTAX: buildext [platform] [system] [compiler] {target}
+@echo platform ... win / lnx / mac
+@echo system ... pd / max
+@echo compiler ... msvc / gcc / mingw / cygwin / bcc / icc
+@echo target ... all (default) / all-debug / all-shared / all-shared-debug /
+@echo clean / install
+@echo .
+@echo Please make sure that your make program and compiler can be accessed with the
+@echo system path and that all relevant environment variables are properly set.
+
+:end
diff --git a/externals/grill/flext/buildext.sh b/externals/grill/flext/buildext.sh
new file mode 100644
index 00000000..9f5f8480
--- /dev/null
+++ b/externals/grill/flext/buildext.sh
@@ -0,0 +1,33 @@
+flext=${0%/*}/
+
+# Arguments:
+# $1 - platform (win/lnx/mac)
+# $2 - system (pd/max)
+# $3 - compiler (msvc/gcc/mingw/cygwin/bcc/icc)
+# $4 - target (all/all-debug/all-shared/all-shared-debug/clean/install)
+
+platform=$1
+rtsys=$2
+compiler=$3
+target=$4
+
+# --- The subbatch knowns which make utility to use ---
+subbatch=${flext}build/build-${compiler}.sh
+
+if
+ [ -n "$platform" -a -n "$rtsys" -a -n "$compiler" -a -f $subbatch ]
+then
+ sh $subbatch $platform $rtsys $target $5 $6 $7 $8 $9
+else
+ echo
+ echo SYNTAX: buildext [platform] [system] [compiler] {target}
+ echo platform ... win / lnx / mac
+ echo system ..... pd / max
+ echo compiler ... msvc / gcc / mingw / cygwin / bcc / icc
+ echo target ..... all \(default\) / all-debug / all-shared / all-shared-debug /
+ echo ............ clean / install
+ echo
+ echo Please make sure that your make program and compiler can be accessed with the
+ echo system path and that all relevant environment variables are properly set.
+fi
+