Update of /cvsroot/pure-data/externals/grill/flext/buildsys In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12682/buildsys
Modified Files: bmake-ext.inc bmake-flext.inc bmake-sub.mak bmake.inc bmake.mak build-cygwin.sh build-gcc.sh gnumake-sub.mak gnumake.inc gnumake.mak nmake-sub.mak nmake.inc nmake.mak targets-ext.inc targets-flext.inc targets.inc Added Files: readme.txt Log Message: made default configurations generic two more flext tutorials fixes for Max headers cleanups updated build system updated tutorials revised the documentation updated for OSX upgraded version number
Index: bmake-ext.inc =================================================================== RCS file: /cvsroot/pure-data/externals/grill/flext/buildsys/bmake-ext.inc,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** bmake-ext.inc 3 Jan 2005 05:00:26 -0000 1.1 --- bmake-ext.inc 5 Jan 2005 05:04:08 -0000 1.2 *************** *** 1 **** ! OUTNAME=$(NAME) --- 1 ---- ! OUTNAME=$(NAME)
Index: bmake.mak =================================================================== RCS file: /cvsroot/pure-data/externals/grill/flext/buildsys/bmake.mak,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** bmake.mak 4 Jan 2005 04:58:52 -0000 1.3 --- bmake.mak 5 Jan 2005 05:04:08 -0000 1.4 *************** *** 13,17 **** --- 13,19 ---- !endif
+ !if "$(PKGINFO)" != "" !include $(PKGINFO) + !endif
############################################### *************** *** 32,42 **** ##############################
! !ifndef TARGETMODE ! TARGETMODE=$(BUILDMODE) ! !endif
! !ifndef TARGETTYPE ! TARGETTYPE=$(BUILDTYPE) ! !endif
############################################### --- 34,44 ---- ##############################
! #!ifndef TARGETMODE ! #TARGETMODE=$(BUILDMODE) ! #!endif
! #!ifndef TARGETTYPE ! #TARGETTYPE=$(BUILDTYPE) ! #!endif
###############################################
Index: bmake.inc =================================================================== RCS file: /cvsroot/pure-data/externals/grill/flext/buildsys/bmake.inc,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** bmake.inc 3 Jan 2005 05:00:26 -0000 1.1 --- bmake.inc 5 Jan 2005 05:04:08 -0000 1.2 *************** *** 1,55 **** ! ############################################## ! # 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 ! ! ############################################## ! # 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)_sd ! !else ! FLEXTNAME=flext-$(RTSYS)_s ! !endif ! !endif ! ! !endif # SHARED ! ! ############################################## ! # product name and folder ! ############################################## ! ! OUTNAME=$(NAME) ! OUTSUB=$(TARGETMODE)-$(TARGETTYPE) --- 1,59 ---- ! ############################################## ! # 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 ! ! ############################################## ! # 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)_sd ! !else ! FLEXTNAME=flext-$(RTSYS)_s ! !endif ! !endif ! ! !endif # SHARED ! ! ############################################## ! # product name and folder ! ############################################## ! ! !ifndef SRCDIR ! SRCDIR=. ! !endif ! ! OUTNAME=$(NAME) ! OUTSUB=$(TARGETMODE)-$(TARGETTYPE)
Index: build-cygwin.sh =================================================================== RCS file: /cvsroot/pure-data/externals/grill/flext/buildsys/build-cygwin.sh,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** build-cygwin.sh 20 Dec 2004 05:06:16 -0000 1.1 --- build-cygwin.sh 5 Jan 2005 05:04:08 -0000 1.2 *************** *** 1,2 **** --- 1,4 ---- + #! /bin/bash + build=${0%/*}/
Index: gnumake-sub.mak =================================================================== RCS file: /cvsroot/pure-data/externals/grill/flext/buildsys/gnumake-sub.mak,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** gnumake-sub.mak 4 Jan 2005 04:58:52 -0000 1.3 --- gnumake-sub.mak 5 Jan 2005 05:04:08 -0000 1.4 *************** *** 19,61 ****
############################## - - ifndef TARGETMODE - ifdef DEBUG - TARGETMODE=debug - else - TARGETMODE=release - endif - endif - - ifndef TARGETTYPE - ifdef SHARED - TARGETTYPE=shared - else - ifdef THREADED - TARGETTYPE=multi - else - TARGETTYPE=single - endif - endif - endif - - ############################## # flext-specific definitions
- include $(BUILDPATH)gnumake-$(BUILDCLASS).inc - include $(BUILDPATH)gnumake.inc
############################## # platform-specific make stuff
- include $(BUILDPATH)$(PLATFORM)/$(RTSYS)/gnumake-$(COMPILER)-$(BUILDCLASS).inc - include $(BUILDPATH)$(PLATFORM)/$(RTSYS)/gnumake-$(COMPILER).inc
############################## # general make stuff
- include $(BUILDPATH)$(PLATFORM)/gnumake-$(COMPILER)-$(BUILDCLASS).inc - include $(BUILDPATH)$(PLATFORM)/gnumake-$(COMPILER).inc --- 19,39 ----
############################## # flext-specific definitions
include $(BUILDPATH)gnumake.inc
+ include $(BUILDPATH)gnumake-$(BUILDCLASS).inc + ############################## # platform-specific make stuff
include $(BUILDPATH)$(PLATFORM)/$(RTSYS)/gnumake-$(COMPILER).inc
+ include $(BUILDPATH)$(PLATFORM)/$(RTSYS)/gnumake-$(COMPILER)-$(BUILDCLASS).inc + ############################## # general make stuff
include $(BUILDPATH)$(PLATFORM)/gnumake-$(COMPILER).inc + + include $(BUILDPATH)$(PLATFORM)/gnumake-$(COMPILER)-$(BUILDCLASS).inc
Index: targets-flext.inc =================================================================== RCS file: /cvsroot/pure-data/externals/grill/flext/buildsys/targets-flext.inc,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** targets-flext.inc 3 Jan 2005 05:00:26 -0000 1.1 --- targets-flext.inc 5 Jan 2005 05:04:08 -0000 1.2 *************** *** 1,29 **** build-default-default: build-all-all
install-default-default: install-all-all
! clean-default-default: clean-all-all
! ###################################################
! build-all-all: build-release-all build-debug-all
! build-release-all: build-release-single build-release-multi build-release-shared
! build-debug-all: build-debug-single build-debug-multi build-debug-shared
! ###################################################
! install-all-all: install-release-all install-debug-all
- install-release-all: install-release-single install-release-multi install-release-shared
! install-debug-all: install-debug-single install-debug-multi install-debug-shared
! ###################################################
! clean-all-all: clean-release-all clean-debug-all
! clean-release-all: clean-release-single clean-release-multi clean-release-shared
- clean-debug-all: clean-debug-single clean-debug-multi clean-debug-shared --- 1,50 ---- build-default-default: build-all-all
+ build-all-default: build-all-all + + build-release-default: build-release-all + + build-debug-default: build-debug-all + + build-default-all: build-all-all + + build-default-single: build-all-single + + build-default-multi: build-all-multi + + build-default-shared: build-all-shared + + install-default-default: install-all-all
! install-all-default: install-all-all
! install-release-default: install-release-all
! install-debug-default: install-debug-all
! install-default-all: install-all-all
! install-default-single: install-all-single
! install-default-multi: install-all-multi
! install-default-shared: install-all-shared
! clean-default-default: clean-all-all
! clean-all-default: clean-all-all
! clean-release-default: clean-release-all
! clean-debug-default: clean-debug-all ! ! clean-default-all: clean-all-all ! ! clean-default-single: clean-all-single ! ! clean-default-multi: clean-all-multi ! ! clean-default-shared: clean-all-shared
Index: bmake-flext.inc =================================================================== RCS file: /cvsroot/pure-data/externals/grill/flext/buildsys/bmake-flext.inc,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** bmake-flext.inc 3 Jan 2005 05:00:26 -0000 1.2 --- bmake-flext.inc 5 Jan 2005 05:04:08 -0000 1.3 *************** *** 1,3 **** ! DEFS=$(DEFS) /DFLEXT_EXPORTS ! ! OUTNAME=$(FLEXTNAME) --- 1,3 ---- ! DEFS=$(DEFS) /DFLEXT_EXPORTS ! ! OUTNAME=$(FLEXTNAME)
Index: nmake-sub.mak =================================================================== RCS file: /cvsroot/pure-data/externals/grill/flext/buildsys/nmake-sub.mak,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** nmake-sub.mak 4 Jan 2005 04:58:52 -0000 1.3 --- nmake-sub.mak 5 Jan 2005 05:04:08 -0000 1.4 *************** *** 19,61 ****
############################## - - !ifndef TARGETMODE - !ifdef DEBUG - TARGETMODE=debug - !else - TARGETMODE=release - !endif - !endif - - !ifndef TARGETTYPE - !ifdef SHARED - TARGETTYPE=shared - !else - !ifdef THREADED - TARGETTYPE=multi - !else - TARGETTYPE=single - !endif - !endif - !endif - - ############################## # flext-specific definitions
- !include $(BUILDPATH)nmake-$(BUILDCLASS).inc - !include $(BUILDPATH)nmake.inc
############################## # platform-specific make stuff
- !include $(BUILDPATH)$(PLATFORM)$(RTSYS)\nmake-$(COMPILER)-$(BUILDCLASS).inc - !include $(BUILDPATH)$(PLATFORM)$(RTSYS)\nmake-$(COMPILER).inc
############################## # general make stuff
- !include $(BUILDPATH)$(PLATFORM)\nmake-$(COMPILER)-$(BUILDCLASS).inc - !include $(BUILDPATH)$(PLATFORM)\nmake-$(COMPILER).inc --- 19,39 ----
############################## # flext-specific definitions
!include $(BUILDPATH)nmake.inc
+ !include $(BUILDPATH)nmake-$(BUILDCLASS).inc + ############################## # platform-specific make stuff
!include $(BUILDPATH)$(PLATFORM)$(RTSYS)\nmake-$(COMPILER).inc
+ !include $(BUILDPATH)$(PLATFORM)$(RTSYS)\nmake-$(COMPILER)-$(BUILDCLASS).inc + ############################## # general make stuff
!include $(BUILDPATH)$(PLATFORM)\nmake-$(COMPILER).inc + + !include $(BUILDPATH)$(PLATFORM)\nmake-$(COMPILER)-$(BUILDCLASS).inc
Index: nmake.mak =================================================================== RCS file: /cvsroot/pure-data/externals/grill/flext/buildsys/nmake.mak,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** nmake.mak 4 Jan 2005 04:58:52 -0000 1.3 --- nmake.mak 5 Jan 2005 05:04:08 -0000 1.4 *************** *** 13,17 **** --- 13,19 ---- !endif
+ !if "$(PKGINFO)" != "" !include $(PKGINFO) + !endif
############################################### *************** *** 32,42 **** ##############################
! !ifndef TARGETMODE ! TARGETMODE=$(BUILDMODE) ! !endif
! !ifndef TARGETTYPE ! TARGETTYPE=$(BUILDTYPE) ! !endif
############################################### --- 34,44 ---- ##############################
! #!ifndef TARGETMODE ! #TARGETMODE=$(BUILDMODE) ! #!endif
! #!ifndef TARGETTYPE ! #TARGETTYPE=$(BUILDTYPE) ! #!endif
###############################################
Index: targets.inc =================================================================== RCS file: /cvsroot/pure-data/externals/grill/flext/buildsys/targets.inc,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** targets.inc 3 Jan 2005 05:00:26 -0000 1.1 --- targets.inc 5 Jan 2005 05:04:08 -0000 1.2 *************** *** 7,75 **** ###########################################################
! build-default-default: build-$(TARGETMODE)-$(TARGETTYPE)
! install-default-default: install-$(TARGETMODE)-$(TARGETTYPE)
! clean-default-default: clean-$(TARGETMODE)-$(TARGETTYPE)
###########################################################
build-release-single: config ! $(MAKE) $(OPTIONS) _build_
build-debug-single: config ! $(MAKE) $(OPTIONS) DEBUG=1 _build_
build-release-multi: config ! $(MAKE) $(OPTIONS) THREADED=1 _build_
build-debug-multi: config ! $(MAKE) $(OPTIONS) THREADED=1 DEBUG=1 _build_
build-release-shared: config ! $(MAKE) $(OPTIONS) SHARED=1 _build_
build-debug-shared: config ! $(MAKE) $(OPTIONS) SHARED=1 DEBUG=1 _build_
###########################################################
! install-release-single: ! $(MAKE) $(OPTIONS) _install_
! install-debug-single: ! $(MAKE) $(OPTIONS) DEBUG=1 _install_
! install-release-multi: ! $(MAKE) $(OPTIONS) THREADED=1 _install_
! install-debug-multi: ! $(MAKE) $(OPTIONS) THREADED=1 DEBUG=1 _install_
! install-release-shared: ! $(MAKE) $(OPTIONS) SHARED=1 _install_
! install-debug-shared: ! $(MAKE) $(OPTIONS) SHARED=1 DEBUG=1 _install_
###########################################################
! clean-release-single: ! $(MAKE) $(OPTIONS) _clean_
! clean-debug-single: ! $(MAKE) $(OPTIONS) DEBUG=1 _clean_
! clean-release-multi: ! $(MAKE) $(OPTIONS) THREADED=1 _clean_
! clean-debug-multi: ! $(MAKE) $(OPTIONS) THREADED=1 DEBUG=1 _clean_
! clean-release-shared: ! $(MAKE) $(OPTIONS) SHARED=1 _clean_
! clean-debug-shared: ! $(MAKE) $(OPTIONS) SHARED=1 DEBUG=1 _clean_
########################################################### --- 7,109 ---- ###########################################################
! build-all-all: build-release-all build-debug-all
! build-release-all: build-release-single build-release-multi build-release-shared
! build-debug-all: build-debug-single build-debug-multi build-debug-shared ! ! build-all-single: build-release-single build-debug-single ! ! build-all-multi: build-release-multi build-debug-multi ! ! build-all-shared: build-release-shared build-debug-shared ! ! ################################################### ! ! install-all-all: install-release-all install-debug-all ! ! install-release-all: install-release-single install-release-multi install-release-shared ! ! install-debug-all: install-debug-single install-debug-multi install-debug-shared ! ! install-all-single: install-release-single install-debug-single ! ! install-all-multi: install-release-multi install-debug-multi ! ! install-all-shared: install-release-shared install-debug-shared ! ! ################################################### ! ! clean-all-all: clean-release-all clean-debug-all ! ! clean-release-all: clean-release-single clean-release-multi clean-release-shared ! ! clean-debug-all: clean-debug-single clean-debug-multi clean-debug-shared ! ! clean-all-single: clean-release-single clean-debug-single ! ! clean-all-multi: clean-release-multi clean-debug-multi ! ! clean-all-shared: clean-release-shared clean-debug-shared
###########################################################
build-release-single: config ! $(MAKE) $(OPTIONS) TARGETMODE=release TARGETTYPE=single _build_
build-debug-single: config ! $(MAKE) $(OPTIONS) TARGETMODE=debug TARGETTYPE=single DEBUG=1 _build_
build-release-multi: config ! $(MAKE) $(OPTIONS) TARGETMODE=release TARGETTYPE=multi THREADED=1 _build_
build-debug-multi: config ! $(MAKE) $(OPTIONS) TARGETMODE=debug TARGETTYPE=multi THREADED=1 DEBUG=1 _build_
build-release-shared: config ! $(MAKE) $(OPTIONS) TARGETMODE=release TARGETTYPE=shared SHARED=1 _build_
build-debug-shared: config ! $(MAKE) $(OPTIONS) TARGETMODE=debug TARGETTYPE=shared SHARED=1 DEBUG=1 _build_
###########################################################
! install-release-single: config ! $(MAKE) $(OPTIONS) TARGETMODE=release TARGETTYPE=single _install_
! install-debug-single: config ! $(MAKE) $(OPTIONS) TARGETMODE=debug TARGETTYPE=single DEBUG=1 _install_
! install-release-multi: config ! $(MAKE) $(OPTIONS) TARGETMODE=release TARGETTYPE=multi THREADED=1 _install_
! install-debug-multi: config ! $(MAKE) $(OPTIONS) TARGETMODE=debug TARGETTYPE=multi THREADED=1 DEBUG=1 _install_
! install-release-shared: config ! $(MAKE) $(OPTIONS) TARGETMODE=release TARGETTYPE=shared SHARED=1 _install_
! install-debug-shared: config ! $(MAKE) $(OPTIONS) TARGETMODE=debug TARGETTYPE=shared SHARED=1 DEBUG=1 _install_
###########################################################
! clean-release-single: config ! $(MAKE) $(OPTIONS) TARGETMODE=release TARGETTYPE=single _clean_
! clean-debug-single: config ! $(MAKE) $(OPTIONS) TARGETMODE=debug TARGETTYPE=single DEBUG=1 _clean_
! clean-release-multi: config ! $(MAKE) $(OPTIONS) TARGETMODE=release TARGETTYPE=multi THREADED=1 _clean_
! clean-debug-multi: config ! $(MAKE) $(OPTIONS) TARGETMODE=debug TARGETTYPE=multi THREADED=1 DEBUG=1 _clean_
! clean-release-shared: config ! $(MAKE) $(OPTIONS) TARGETMODE=release TARGETTYPE=shared SHARED=1 _clean_
! clean-debug-shared: config ! $(MAKE) $(OPTIONS) TARGETMODE=debug TARGETTYPE=shared SHARED=1 DEBUG=1 _clean_
###########################################################
Index: bmake-sub.mak =================================================================== RCS file: /cvsroot/pure-data/externals/grill/flext/buildsys/bmake-sub.mak,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** bmake-sub.mak 4 Jan 2005 04:58:52 -0000 1.3 --- bmake-sub.mak 5 Jan 2005 05:04:08 -0000 1.4 *************** *** 19,61 ****
############################## - - !ifndef TARGETMODE - !ifdef DEBUG - TARGETMODE=debug - !else - TARGETMODE=release - !endif - !endif - - !ifndef TARGETTYPE - !ifdef SHARED - TARGETTYPE=shared - !else - !ifdef THREADED - TARGETTYPE=multi - !else - TARGETTYPE=single - !endif - !endif - !endif - - ############################## # flext-specific make stuff
- !include $(BUILDPATH)bmake-$(BUILDCLASS).inc - !include $(BUILDPATH)bmake.inc
############################## # platform-specific make stuff
- !include $(BUILDPATH)$(PLATFORM)$(RTSYS)\bmake-$(COMPILER)-$(BUILDCLASS).inc - !include $(BUILDPATH)$(PLATFORM)$(RTSYS)\bmake-$(COMPILER).inc
############################## # general make stuff
- !include $(BUILDPATH)$(PLATFORM)\bmake-$(COMPILER)-$(BUILDCLASS).inc - !include $(BUILDPATH)$(PLATFORM)\bmake-$(COMPILER).inc --- 19,39 ----
############################## # flext-specific make stuff
!include $(BUILDPATH)bmake.inc
+ !include $(BUILDPATH)bmake-$(BUILDCLASS).inc + ############################## # platform-specific make stuff
!include $(BUILDPATH)$(PLATFORM)$(RTSYS)\bmake-$(COMPILER).inc
+ !include $(BUILDPATH)$(PLATFORM)$(RTSYS)\bmake-$(COMPILER)-$(BUILDCLASS).inc + ############################## # general make stuff
!include $(BUILDPATH)$(PLATFORM)\bmake-$(COMPILER).inc + + !include $(BUILDPATH)$(PLATFORM)\bmake-$(COMPILER)-$(BUILDCLASS).inc
Index: targets-ext.inc =================================================================== RCS file: /cvsroot/pure-data/externals/grill/flext/buildsys/targets-ext.inc,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** targets-ext.inc 3 Jan 2005 05:00:26 -0000 1.1 --- targets-ext.inc 5 Jan 2005 05:04:08 -0000 1.2 *************** *** 0 **** --- 1,49 ---- + build-default-default: build-$(BUILDMODE)-$(BUILDTYPE) + + build-all-default: build-all-$(BUILDTYPE) + + build-release-default: build-release-$(BUILDTYPE) + + build-debug-default: build-debug-$(BUILDTYPE) + + build-default-all: build-$(BUILDMODE)-all + + build-default-single: build-$(BUILDMODE)-single + + build-default-multi: build-$(BUILDMODE)-multi + + build-default-shared: build-$(BUILDMODE)-shared + + + install-default-default: install-$(BUILDMODE)-$(BUILDTYPE) + + install-all-default: install-all-$(BUILDTYPE) + + install-release-default: install-release-$(BUILDTYPE) + + install-debug-default: install-debug-$(BUILDTYPE) + + install-default-all: install-$(BUILDMODE)-all + + install-default-single: install-$(BUILDMODE)-single + + install-default-multi: install-$(BUILDMODE)-multi + + install-default-shared: install-$(BUILDMODE)-shared + + + clean-default-default: clean-$(BUILDMODE)-$(BUILDTYPE) + + clean-all-default: clean-all-$(BUILDTYPE) + + clean-release-default: clean-release-$(BUILDTYPE) + + clean-debug-default: clean-debug-$(BUILDTYPE) + + clean-default-all: clean-$(BUILDMODE)-all + + clean-default-single: clean-$(BUILDMODE)-single + + clean-default-multi: clean-$(BUILDMODE)-multi + + clean-default-shared: clean-$(BUILDMODE)-shared
Index: gnumake.mak =================================================================== RCS file: /cvsroot/pure-data/externals/grill/flext/buildsys/gnumake.mak,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** gnumake.mak 4 Jan 2005 04:58:52 -0000 1.3 --- gnumake.mak 5 Jan 2005 05:04:08 -0000 1.4 *************** *** 13,17 **** --- 13,19 ---- endif
+ ifneq ($(PKGINFO),) include $(PKGINFO) + endif
############################################### *************** *** 32,42 **** ##############################
! ifndef TARGETMODE ! TARGETMODE=$(BUILDMODE) ! endif
! ifndef TARGETTYPE ! TARGETTYPE=$(BUILDTYPE) ! endif
############################################### --- 34,44 ---- ##############################
! #ifndef TARGETMODE ! #TARGETMODE=$(BUILDMODE) ! #endif
! #ifndef TARGETTYPE ! #TARGETTYPE=$(BUILDTYPE) ! #endif
###############################################
Index: nmake.inc =================================================================== RCS file: /cvsroot/pure-data/externals/grill/flext/buildsys/nmake.inc,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** nmake.inc 3 Jan 2005 05:00:26 -0000 1.1 --- nmake.inc 5 Jan 2005 05:04:08 -0000 1.2 *************** *** 50,52 **** --- 50,56 ---- ##############################################
+ !ifndef SRCDIR + SRCDIR=. + !endif + OUTSUB=$(TARGETMODE)-$(TARGETTYPE)
Index: build-gcc.sh =================================================================== RCS file: /cvsroot/pure-data/externals/grill/flext/buildsys/build-gcc.sh,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** build-gcc.sh 20 Dec 2004 05:06:16 -0000 1.1 --- build-gcc.sh 5 Jan 2005 05:04:08 -0000 1.2 *************** *** 1,2 **** --- 1,4 ---- + #! /bin/bash + build=${0%/*}/
--- NEW FILE: readme.txt --- flext - C++ layer for Max/MSP and pd (pure data) externals
Copyright (c) 2001-2005 Thomas Grill (gr@grrrr.org) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution.
----------------------------------------------------------------------------
At the moment this is more like a sketchboard, but i'll promise to bring some order into it some fine day in the not too distant future.
----------------------------------------------------------------------------
Build scripts =============
Depending on platform the build process is run with build.sh or build.bat
Arguments: PLATFORM SYSTEM COMPILER {TARGET} {definitions}
PLATFORM: win / lnx / mac SYSTEM: pd / max COMPILER: msvc / gcc / mingw / cygwin / bcc / icc
TARGET: (default is all) all, build - build package in default style install - install package clean - clean build products
config - test if configuration needs refreshing
or build-MODE-TYPE install-MODE-TYPE clean-MODE-TYPE
with MODE: default, all, release, debug TYPE: default, all, single, multi, shared
Additional definitions can be passed to the make program like "PKGINFO=info.txt" (defines new filename for package information) or "PKGINFO=" (package information will be skipped - only for config target)
For more macro names, see below
For each of the supported combinations of PLATFORM, SYSTEM and COMPILER a MAKE program has been chosen, normally the one that comes with the compiler.
For gcc it is GNU make (gnumake) For msvc it is Microsoft make (nmake) For bcc it is Borland make (bmake)
Package info (package.txt) ==========================
Package information contains vital information for the build process. Obligatory are only:
NAME: resulting filename of the build product SRCS: list of source files
Normally also used are:
HDRS: used header files, which SRCS files are dependent upon SRCDIR: source folder (relative to project folder), default is .
Other settings:
PRECOMPILE: prefix header file (in SRCDIR) for all source files, will be precompiled if supported by the compiler
BUILDCLASS: can currently be flext or ext, default is ext. flext will build the flext system ext will build a flext-based external
BUILDMODE: release or debug, default is release if release, optimization flags will be used if debug, debug information will be generated
BUILDTYPE: single, multi or shared, default is single if single, it will be linked against the single-threaded static flext library if multi, it will be linked against the multi-threaded static flext library if shared, it will be linked against the shared flext library
BUILDDIR: relative folder with additional build settings
Additional build settings (BUILDDIR) ====================================
If BUILDDIR is defined, all PLATFORM-SYSTEM-COMPILER combinations to support must are mirrored by the respective .def and .inc files in the BUILDDIR.
config-PLATFORM.def files (e.g. config-lnx.def) :
These files can contain additional macro definitions, that are private to the project. The definitions should be strictly in the form SETTING=value, without any make-specific macros etc. The .def files work as templates that get copied to a user-editable config.txt file when the build process is first started.
MAKE-PLATFORM-COMPILER.inc files (e.g. gnumake-lnx-gcc.inc or nmake-win-msvc.inc):
These files (which are no considered to be edited by the user) can contain specific modifications to compiler flags, include file paths etc.
For gnumake this would e.g. be INCPATH += -I/usr/local/include/python2.3
for nmake or bmake e.g. INCPATH = $(INCPATH) -I"c:\program files\Python2.3\include"
Structure of build system =========================
The build system has several levels of information, which are evaluated in the following order (see also buildsys/MAKE-sub.mak)
Project level: - PKGINFO file (e.g. package.txt) - USRCONFIG file (e.g. config.txt) - USRMAKE file (e.g. build/gnumake-lnx-gcc.inc)
General definitions (in buildsys):
- MAKE.inc (e.g. buildsys/gnumake.inc) contains evaluation of flext library name, build directory etc. - MAKE-BUILDCLASS.inc (e.g. buildsys/gnumake-ext.inc) contains some more flag settings
Real-time-system-dependent definitions (in buildsys/PLATFORM/SYSTEM):
- MAKE-COMPILER.inc (e.g. buildsys/lnx/pd/gnumake-gcc.inc) contains general real-time-system dependent info (e.g. paths, FLEXT_SYS setting) - MAKE-COMPILER-BUILDCLASS.inc (e.g. buildsys/lnx/pd/gnumake-gcc-ext.inc) contains specific real-time-system dependent info (e.g. extension of binary)
Platform-dependent definitions (in buildsys/PLATFORM):
- MAKE-COMPILER.inc (e.g. buildsys/lnx/gnumake-gcc.inc) contains general platform-specific flags - MAKE-COMPILER-BUILDCLASS.inc (e.g. buildsys/lnx/gnumake-gcc-ext.inc) contains the actual make targets (_build_,_clean_ and _install_)
Macro names ===============
PKGINFO - filename for package information (must reside in project folder)
CFLAGS - compiler flags LDFLAGS - linker flags
INCPATH - include file path (must come with e.g. -I ) LIBPATH - library path (must come with e.g. -L )
LIBS - libraries to link in (must come with e.g. -l )
Index: gnumake.inc =================================================================== RCS file: /cvsroot/pure-data/externals/grill/flext/buildsys/gnumake.inc,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** gnumake.inc 3 Jan 2005 05:00:26 -0000 1.1 --- gnumake.inc 5 Jan 2005 05:04:08 -0000 1.2 *************** *** 52,54 **** --- 52,58 ---- ##############################################
+ ifndef SRCDIR + SRCDIR=. + endif + OUTSUB=$(TARGETMODE)-$(TARGETTYPE)