[PD-cvs] externals/grill/flext/buildsys bmake-flext.inc,NONE,1.1 bmake-sub.mak,NONE,1.1 bmake.mak,NONE,1.1 build-bcc.bat,NONE,1.1 build-cygwin.sh,NONE,1.1 build-gcc.sh,NONE,1.1 build-mingw.bat,NONE,1.1 build-msvc.bat,NONE,1.1 gnumake-flext.inc,NONE,1.1 gnumake-sub.mak,NONE,1.1 gnumake.mak,NONE,1.1 nmake-flext.inc,NONE,1.1 nmake-sub.mak,NONE,1.1 nmake.mak,NONE,1.1

Thomas Grill xovo at users.sourceforge.net
Mon Dec 20 06:06:18 CET 2004


Update of /cvsroot/pure-data/externals/grill/flext/buildsys
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16508/buildsys

Added Files:
	bmake-flext.inc bmake-sub.mak bmake.mak build-bcc.bat 
	build-cygwin.sh build-gcc.sh build-mingw.bat build-msvc.bat 
	gnumake-flext.inc gnumake-sub.mak gnumake.mak nmake-flext.inc 
	nmake-sub.mak nmake.mak 
Log Message:
simplified make system
updated make system for BCC
updated make system
updated build system


--- NEW FILE: build-bcc.bat ---
@set build=%~dp0

make -f %build%bmake.mak -N PLATFORM=%1 RTSYS=%2 COMPILER=bcc BUILDPATH=%build% %3 %4 %5 %6 %7 %8 %9

--- NEW FILE: bmake.mak ---
# required settings:
#
# PLATFORM - win/mac/lnx
# RTSYS - pd/max
# COMPILER - msvc/gcc/mingw/cygwin
# BUILDPATH including trailing \

# package info
USRINFO=package.txt

!include $(USRINFO)


SYSCONFIG=$(BUILDPATH)config-$(PLATFORM)-$(RTSYS)-$(COMPILER).txt
SYSDEFAULT=$(BUILDPATH)$(PLATFORM)\$(RTSYS)\config-$(COMPILER).def


OPTIONS=-f $(BUILDPATH)bmake-sub.mak -N \
	PLATFORM=$(PLATFORM) RTSYS=$(RTSYS) COMPILER=$(COMPILER) \
	BUILDPATH=$(BUILDPATH) USRINFO=$(USRINFO)


!ifdef BUILDDIR
USRCONFIG=config.txt
USRDEFAULT=$(BUILDDIR)\config-$(PLATFORM).def

USRMAKE=$(BUILDDIR)\makefile-$(PLATFORM)-$(COMPILER).inc

OPTIONS=$(OPTIONS) USRCONFIG=$(USRCONFIG) USRMAKE=$(USRMAKE)
!endif


!ifdef FLEXTBUILD
all: flext
!else
all: build-sr

shared: build-tr
!endif

flext: flext-release flext-debug

flext-release: build-dr build-tr build-sr

flext-debug: build-dd build-td build-sd

install: install-dr install-tr install-sr install-dd install-td install-sd

clean: clean-dr clean-tr clean-sr clean-dd clean-td clean-sd


build-sr: config
	$(MAKE) $(OPTIONS) _all_

build-sd: config
	$(MAKE) $(OPTIONS) DEBUG=1 _all_

build-tr: config
	$(MAKE) $(OPTIONS) THREADED=1 _all_

build-td: config
	$(MAKE) $(OPTIONS) THREADED=1 DEBUG=1 _all_

build-dr: config
	$(MAKE) $(OPTIONS) SHARED=1 _all_

build-dd: config
	$(MAKE) $(OPTIONS) SHARED=1 DEBUG=1 _all_


install-sr:
	$(MAKE) $(OPTIONS) _install_

install-sd:
	$(MAKE) $(OPTIONS) DEBUG=1 _install_

install-tr:
	$(MAKE) $(OPTIONS) THREADED=1 _install_

install-td:
	$(MAKE) $(OPTIONS) THREADED=1 DEBUG=1 _install_

install-dr:
	$(MAKE) $(OPTIONS) SHARED=1 _install_

install-dd:
	$(MAKE) $(OPTIONS) SHARED=1 DEBUG=1 _install_


clean-sr:
	$(MAKE) $(OPTIONS) _clean_

clean-sd:
	$(MAKE) $(OPTIONS) DEBUG=1 _clean_

clean-tr:
	$(MAKE) $(OPTIONS) THREADED=1 _clean_

clean-td:
	$(MAKE) $(OPTIONS) THREADED=1 DEBUG=1 _clean_

clean-dr:
	$(MAKE) $(OPTIONS) SHARED=1 _clean_

clean-dd:
	$(MAKE) $(OPTIONS) SHARED=1 DEBUG=1 _clean_


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 BUILDDIR
$(USRCONFIG): $(USRDEFAULT)
	@copy $** $@
	@echo -------------------------------------------------------------------------
	@echo A default package configuration file has been created.
	@echo Please edit $(USRCONFIG) and start again.
	@echo -------------------------------------------------------------------------
	@exit 1

$(USRDEFAULT) $(USRMAKE):
	@echo -------------------------------------------------------------------------
	@echo Your combination of platform, system and compiler is not supported yet.
	@echo Required files: 
	@echo $(USRDEFAULT)
	@echo and
	@echo $(USRMAKE)
	@echo -------------------------------------------------------------------------
	@exit 1
!endif

--- NEW FILE: gnumake-flext.inc ---
##############################################
# flext defines
##############################################

ifdef SHARED
# --- shared ---
DEFS+=-DFLEXT_SHARED

else
ifdef THREADED
# --- static multi-threaded ---
DEFS+=-DFLEXT_THREADS

else 
# --- static single-threaded ---

endif
endif


ifdef FLEXTBUILD
DEFS+=-DFLEXT_EXPORTS
endif

##############################################
# name of flext library
##############################################

ifdef SHARED

ifdef DEBUG
FLEXTNAME=flext-$(RTSYS)_d
else
FLEXTNAME=flext-$(RTSYS)
endif

else

ifdef THREADED
ifdef DEBUG
FLEXTNAME=flext-$(RTSYS)_td
else
FLEXTNAME=flext-$(RTSYS)_t
endif
else
ifdef DEBUG
FLEXTNAME=flext-$(RTSYS)_d
else
FLEXTNAME=flext-$(RTSYS)
endif
endif

endif # SHARED

##############################################
# build subdirectories
##############################################

ifdef FLEXTBUILD

ifdef SHARED

ifdef DEBUG
OUTSUB=dd
else
OUTSUB=dr
endif

else # SHARED

ifdef THREADED
ifdef DEBUG
OUTSUB=td
else
OUTSUB=tr
endif
else
ifdef DEBUG
OUTSUB=sd
else
OUTSUB=sr
endif
endif

endif # SHARED

else # FLEXTBUILD
OUTSUB=.
endif # FLEXTBUILD

--- NEW FILE: build-cygwin.sh ---
build=${0%/*}/

make -f ${build}gnumake.mak PLATFORM=$1 RTSYS=$2 COMPILER=cygwin BUILDPATH=${build} $3 $4 $5 $6 $7 $8 $9

--- NEW FILE: gnumake-sub.mak ---
# system settings
include $(BUILDPATH)config-$(PLATFORM)-$(RTSYS)-$(COMPILER).txt

###############################

# these are project specific

# package info
include $(USRINFO)

# special settings
ifdef USRCONFIG
include $(USRCONFIG)
endif

# package specific make stuff
ifdef USRMAKE
include $(USRMAKE)
endif

##############################

# flext-specific make stuff
include $(BUILDPATH)gnumake-flext.inc

# platform-specific make stuff
include $(BUILDPATH)$(PLATFORM)/$(RTSYS)/make-$(COMPILER).inc
# general make stuff
include $(BUILDPATH)$(PLATFORM)/make-$(COMPILER).inc

--- NEW FILE: build-mingw.bat ---
@set build=%~dp0

mingw32-make -f %build%gnumake.mak PLATFORM=%1 RTSYS=%2 COMPILER=mingw BUILDPATH=%build% %3 %4 %5 %6 %7 %8 %9

--- NEW FILE: bmake-sub.mak ---
!include $(BUILDPATH)config-$(PLATFORM)-$(RTSYS)-$(COMPILER).txt

###############################

# these are project specific

# package info
!include $(USRINFO)

# special package settings
!ifdef USRCONFIG
!include $(USRCONFIG)
!endif

# package specific make stuff
!ifdef USRMAKE
!include $(USRMAKE)
!endif

##############################

# flext-specific make stuff
!include $(BUILDPATH)bmake-flext.inc

# platform-specific make stuff
!include $(BUILDPATH)$(PLATFORM)\$(RTSYS)\make-$(COMPILER).inc
# general make stuff
!include $(BUILDPATH)$(PLATFORM)\make-$(COMPILER).inc

--- NEW FILE: build-msvc.bat ---
@set build=%~dp0

nmake -f %build%nmake.mak PLATFORM=%1 RTSYS=%2 COMPILER=msvc BUILDPATH=%build% %3 %4 %5 %6 %7 %8 %9

--- NEW FILE: nmake-sub.mak ---
# general settings
!include $(BUILDPATH)config-$(PLATFORM)-$(RTSYS)-$(COMPILER).txt

##############################

# package info
!include $(USRINFO)

# special package settings
!ifdef USRCONFIG
!include $(USRCONFIG)
!endif

# package specific make stuff
!ifdef USRMAKE
!include $(USRMAKE)
!endif

##############################

# flext-specific make stuff
!include $(BUILDPATH)nmake-flext.inc

# platform-specific make stuff
!include $(BUILDPATH)$(PLATFORM)\$(RTSYS)\make-$(COMPILER).inc
# general make stuff
!include $(BUILDPATH)$(PLATFORM)\make-$(COMPILER).inc

--- NEW FILE: nmake-flext.inc ---
##############################################
# flext defines
##############################################

!ifdef SHARED
# --- shared ---
DEFS=$(DEFS) /DFLEXT_SHARED

!elseifdef THREADED
# --- static multi-threaded ---
DEFS=$(DEFS) /DFLEXT_THREADS

!else 
# --- static single-threaded ---

!endif


!ifdef FLEXTBUILD
DEFS=$(DEFS) /DFLEXT_EXPORTS
!endif

##############################################
# name of flext library
##############################################

!ifdef SHARED

!ifdef DEBUG
FLEXTNAME=flext-$(RTSYS)_d
!else
FLEXTNAME=flext-$(RTSYS)
!endif

!else

!ifdef THREADED
!ifdef DEBUG
FLEXTNAME=flext-$(RTSYS)_td
!else
FLEXTNAME=flext-$(RTSYS)_t
!endif
!else
!ifdef DEBUG
FLEXTNAME=flext-$(RTSYS)_d
!else
FLEXTNAME=flext-$(RTSYS)
!endif
!endif

!endif # SHARED

##############################################
# build subdirectories
##############################################

!ifdef FLEXTBUILD

!ifdef SHARED

!ifdef DEBUG
OUTSUB=dd
!else
OUTSUB=dr
!endif

!else # SHARED

!ifdef THREADED
!ifdef DEBUG
OUTSUB=td
!else
OUTSUB=tr
!endif
!else
!ifdef DEBUG
OUTSUB=sd
!else
OUTSUB=sr
!endif
!endif

!endif # SHARED

!else # FLEXTBUILD
OUTSUB=.
!endif # FLEXTBUILD


--- NEW FILE: bmake-flext.inc ---
##############################################
# flext defines
##############################################

!ifdef SHARED
# --- shared ---
DEFS=$(DEFS) /DFLEXT_SHARED

!else
!ifdef THREADED
# --- static multi-threaded ---
DEFS=$(DEFS) /DFLEXT_THREADS

!else 
# --- static single-threaded ---

!endif
!endif


!ifdef FLEXTBUILD
DEFS=$(DEFS) /DFLEXT_EXPORTS
!endif

##############################################
# name of flext library
##############################################

!ifdef SHARED

!ifdef DEBUG
FLEXTNAME=flext-$(RTSYS)_d
!else
FLEXTNAME=flext-$(RTSYS)
!endif

!else

!ifdef THREADED
!ifdef DEBUG
FLEXTNAME=flext-$(RTSYS)_td
!else
FLEXTNAME=flext-$(RTSYS)_t
!endif
!else
!ifdef DEBUG
FLEXTNAME=flext-$(RTSYS)_d
!else
FLEXTNAME=flext-$(RTSYS)
!endif
!endif

!endif # SHARED

##############################################
# build subdirectories
##############################################

!ifdef FLEXTBUILD

!ifdef SHARED

!ifdef DEBUG
OUTSUB=dd
!else
OUTSUB=dr
!endif

!else # SHARED

!ifdef THREADED
!ifdef DEBUG
OUTSUB=td
!else
OUTSUB=tr
!endif
!else
!ifdef DEBUG
OUTSUB=sd
!else
OUTSUB=sr
!endif
!endif

!endif # SHARED

!else # FLEXTBUILD
OUTSUB=.
!endif # FLEXTBUILD


--- NEW FILE: gnumake.mak ---
# required settings:
#
# PLATFORM - win/mac/lnx
# RTSYS - pd/max
# COMPILER - msvc/gcc/mingw/cygwin
# BUILDPATH including trailing /

# package info
USRINFO=package.txt

include $(USRINFO)


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) USRINFO=$(USRINFO)


ifdef BUILDDIR
USRCONFIG=config.txt
USRDEFAULT=$(BUILDDIR)/config-$(PLATFORM).def

USRMAKE=$(BUILDDIR)/makefile-$(PLATFORM)-$(COMPILER).inc

OPTIONS+=USRCONFIG=$(USRCONFIG) USRMAKE=$(USRMAKE)
endif


ifdef FLEXTBUILD
all: flext
else
all: build-sr

shared: build-tr
endif

flext: flext-release flext-debug

flext-release: build-dr build-tr build-sr

flext-debug: build-dd build-td build-sd

install: install-dr install-tr install-sr install-dd install-td install-sd

clean: clean-dr clean-tr clean-sr clean-dd clean-td clean-sd


build-sr: config
	$(MAKE) $(OPTIONS) _all_

build-sd: config
	$(MAKE) $(OPTIONS) DEBUG=1 _all_

build-tr: config
	$(MAKE) $(OPTIONS) THREADED=1 _all_

build-td: config
	$(MAKE) $(OPTIONS) THREADED=1 DEBUG=1 _all_

build-dr: config
	$(MAKE) $(OPTIONS) SHARED=1 _all_

build-dd: config
	$(MAKE) $(OPTIONS) SHARED=1 DEBUG=1 _all_


install-sr:
	$(MAKE) $(OPTIONS) _install_

install-sd:
	$(MAKE) $(OPTIONS) DEBUG=1 _install_

install-tr:
	$(MAKE) $(OPTIONS) THREADED=1 _install_

install-td:
	$(MAKE) $(OPTIONS) THREADED=1 DEBUG=1 _install_

install-dr:
	$(MAKE) $(OPTIONS) SHARED=1 _install_

install-dd:
	$(MAKE) $(OPTIONS) SHARED=1 DEBUG=1 _install_


clean-sr:
	$(MAKE) $(OPTIONS) _clean_

clean-sd:
	$(MAKE) $(OPTIONS) DEBUG=1 _clean_

clean-tr:
	$(MAKE) $(OPTIONS) THREADED=1 _clean_

clean-td:
	$(MAKE) $(OPTIONS) THREADED=1 DEBUG=1 _clean_

clean-dr:
	$(MAKE) $(OPTIONS) SHARED=1 _clean_

clean-dd:
	$(MAKE) $(OPTIONS) SHARED=1 DEBUG=1 _clean_



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, then start again.
	@echo -------------------------------------------------------------------------
	@false

ifdef BUILDDIR	
$(USRCONFIG): $(USRDEFAULT)
	@cp $< $@
	@echo -------------------------------------------------------------------------
	@echo A default package configuration file has been created.
	@echo Please edit $(USRCONFIG), then start again.
	@echo -------------------------------------------------------------------------
	@false

$(USRDEFAULT) $(USRMAKE):
	@echo -------------------------------------------------------------------------
	@echo Your combination of platform, system and compiler is not supported yet.
	@echo Required files: 
	@echo $(USRDEFAULT)
	@echo and
	@echo $(USRMAKE)
	@echo -------------------------------------------------------------------------
	@false
endif

--- NEW FILE: build-gcc.sh ---
build=${0%/*}/

make -f ${build}gnumake.mak PLATFORM=$1 RTSYS=$2 COMPILER=gcc BUILDPATH=${build} $3 $4 $5 $6 $7 $8 $9

--- NEW FILE: nmake.mak ---
# required settings:
#
# PLATFORM - win/mac/lnx
# RTSYS - pd/max
# COMPILER - msvc/gcc/mingw/cygwin
# BUILDPATH including trailing \

# package info
USRINFO=package.txt

!include $(USRINFO)


SYSCONFIG=$(BUILDPATH)config-$(PLATFORM)-$(RTSYS)-$(COMPILER).txt
SYSDEFAULT=$(BUILDPATH)$(PLATFORM)\$(RTSYS)\config-$(COMPILER).def


OPTIONS=-f $(BUILDPATH)nmake-sub.mak \
	PLATFORM=$(PLATFORM) RTSYS=$(RTSYS) COMPILER=$(COMPILER) \
	BUILDPATH=$(BUILDPATH) USRINFO=$(USRINFO)


!ifdef BUILDDIR
USRCONFIG=config.txt
USRDEFAULT=$(BUILDDIR)\config-$(PLATFORM).def

USRMAKE=$(BUILDDIR)\makefile-$(PLATFORM)-$(COMPILER).inc

OPTIONS=$(OPTIONS) USRCONFIG=$(USRCONFIG) USRMAKE=$(USRMAKE)
!endif


!ifdef FLEXTBUILD
all: flext
!else
all: build-sr

shared: build-tr
!endif

flext: flext-release flext-debug

flext-release: build-dr build-tr build-sr

flext-debug: build-dd build-td build-sd

install: install-dr install-tr install-sr install-dd install-td install-sd

clean: clean-dr clean-tr clean-sr clean-dd clean-td clean-sd


build-sr: config
	$(MAKE) $(OPTIONS) _all_

build-sd: config
	$(MAKE) $(OPTIONS) DEBUG=1 _all_

build-tr: config
	$(MAKE) $(OPTIONS) THREADED=1 _all_

build-td: config
	$(MAKE) $(OPTIONS) THREADED=1 DEBUG=1 _all_

build-dr: config
	$(MAKE) $(OPTIONS) SHARED=1 _all_

build-dd: config
	$(MAKE) $(OPTIONS) SHARED=1 DEBUG=1 _all_


install-sr:
	$(MAKE) $(OPTIONS) _install_

install-sd:
	$(MAKE) $(OPTIONS) DEBUG=1 _install_

install-tr:
	$(MAKE) $(OPTIONS) THREADED=1 _install_

install-td:
	$(MAKE) $(OPTIONS) THREADED=1 DEBUG=1 _install_

install-dr:
	$(MAKE) $(OPTIONS) SHARED=1 _install_

install-dd:
	$(MAKE) $(OPTIONS) SHARED=1 DEBUG=1 _install_


clean-sr:
	$(MAKE) $(OPTIONS) _clean_

clean-sd:
	$(MAKE) $(OPTIONS) DEBUG=1 _clean_

clean-tr:
	$(MAKE) $(OPTIONS) THREADED=1 _clean_

clean-td:
	$(MAKE) $(OPTIONS) THREADED=1 DEBUG=1 _clean_

clean-dr:
	$(MAKE) $(OPTIONS) SHARED=1 _clean_

clean-dd:
	$(MAKE) $(OPTIONS) SHARED=1 DEBUG=1 _clean_



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 BUILDDIR
$(USRCONFIG): $(USRDEFAULT)
	@copy $** $@
	@echo -------------------------------------------------------------------------
	@echo A default package configuration file has been created.
	@echo Please edit $(USRCONFIG) and start again.
	@echo -------------------------------------------------------------------------
	@exit 1

$(USRDEFAULT) $(USRMAKE):
	@echo -------------------------------------------------------------------------
	@echo Your combination of platform, system and compiler is not supported yet.
	@echo Required files: 
	@echo $(USRDEFAULT)
	@echo and
	@echo $(USRMAKE)
	@echo -------------------------------------------------------------------------
	@exit 1
!endif





More information about the Pd-cvs mailing list