aboutsummaryrefslogtreecommitdiff
path: root/externals/grill/flext/build.txt
diff options
context:
space:
mode:
authorThomas Grill <xovo@users.sourceforge.net>2005-01-05 05:04:55 +0000
committerThomas Grill <xovo@users.sourceforge.net>2005-01-05 05:04:55 +0000
commitb1d0383c31cc936710fb9099f6d9e86e7eeae569 (patch)
tree6b885467b10f0a29d58893a031ea10251369f37a /externals/grill/flext/build.txt
parent011a5b60d4992b2325219865ee7ffca9741a1155 (diff)
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 svn path=/trunk/; revision=2465
Diffstat (limited to 'externals/grill/flext/build.txt')
-rw-r--r--externals/grill/flext/build.txt171
1 files changed, 171 insertions, 0 deletions
diff --git a/externals/grill/flext/build.txt b/externals/grill/flext/build.txt
new file mode 100644
index 00000000..9cce87af
--- /dev/null
+++ b/externals/grill/flext/build.txt
@@ -0,0 +1,171 @@
+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.
+
+----------------------------------------------------------------------------
+
+This document consists of the following parts:
+
+1) Using the flext build system
+1.1) Building flext
+1.2) Building externals
+
+2) Using autoconf
+
+3) Other ways to compile flext and flext-based externals
+
+----------------------------------------------------------------------------
+
+1) Using the flext build system
+===============================
+
+flext provides a universal build system which supports
+
+- various operating systems
+ Windows (win)
+ Linux (lnx)
+ MacOSX (mac)
+- various real-time systems
+ Pure Data (pd)
+ Max/MSP (max)
+- various make programs
+ GNU make (gnumake)
+ Microsoft nmake (nmake)
+ Borland make (bmake)
+- various compilers
+ Microsoft Visual C/C++ 6.0 or .NET 2002/2003 (msvc)
+ GNU gcc 2.95 and above (gcc,cygwin,mingw)
+ Borland bcc32 (bcc)
+
+Useful combinations of the above are
+
+win pd msvc, using nmake
+win pd cygwin, using gnumake
+win pd mingw, using gnumake
+win max msvc, using nmake
+win pd bcc, using bmake
+mac pd gcc, using gnumake
+mac max gcc, using gnumake - Mach-O externals only (Max 4.5 upwards)
+
+
+There are two central scripts in the flext folder which invoke the building process:
+- build.sh for bash shells (Linux, MacOSX, cygwin)
+- build.bat for the Windows command prompt
+
+A project needs to provide some information in order to be built properly.
+By default, this resides in a file called package.txt
+
+
+Please note, that the build system is shell-oriented, which means, that you'll have
+to launch a command prompt (cmd.exe under Windows) and probably also set some
+environment variables for your development system (e.g. run vcvars32.bat for Microsoft Visual Studio)
+
+By invoking one of the build scripts (e.g. with "bash build.sh" under unix,
+or just "build" unter Windows) you'll get some lines of help.
+Operating System, real-time system and compiler need to be provided as arguments.
+
+
+See buildsys/readme.txt for developer-centered information.
+
+
+1.1) Building flext
+===================
+
+Flext can build itself using the build system.
+From the flext main directory, run the build script
+
+e.g. under Windows
+ build win pd msvc
+or under unix with
+ bash build.sh lnx pd gcc
+
+When you run it for the first time, one or more configuration files will be created
+from templates - you will get a message on the console.
+You should edit the files to adapt it to your system.
+
+Then install flext with (under Windows)
+ build win pd msvc install
+or (under unix)
+ bash build.sh lnx pd gcc install
+
+
+1.2) Building externals
+=======================
+
+The flext build system can be used to compile flext-based externals or also
+native PD and Max/MSP externals, provided there is a package.txt file in the project folder.
+
+In the shell, change to the project folder.
+Then, simply run the flext build script,
+
+e.g. under Windows
+ ..\flext\build win pd msvc
+Then install your newly built external with
+ ..\flext\build win pd msvc install
+
+or under unix with
+ bash ../flext/build.sh lnx pd gcc
+Then install your external with
+ bash ../flext/build.sh lnx pd gcc install
+
+
+----------------------------------------------------------------------------
+
+2) Using autoconf
+=================
+
+Thanks to Tim Blechmann, flext can also be built using autoconf.
+This only works under unix shells.
+
+When starting from a fresh cvs-based copy of flext first run
+./bootstrap.sh
+
+then you can run
+./configure --help
+to get a page of options.
+
+You need to pass the path to the PD source files to the ./configure script, e.g. with
+./configure --with-sysdir=/usr/local/src/pd/src
+
+Then build flext with
+make
+and install it with
+su -c "make install"
+
+----------------------------------------------------------------------------
+
+3) Other ways to compile flext and flext-based externals
+========================================================
+
+- Windows - Microsoft Visual Studio projects (.vcproj files)
+
+Please have a look at the projects delivered with flext and flext-based externals.
+
+
+- MacOSX - Apple Xcode projects (.xcode bundles)
+
+Please have a look at the projects delivered with flext and flext-based externals.
+
+
+- MacOSX - Metrowerks Codewarrior (.mcp files)
+
+You should have the following "Source Trees" (CW preferences, not project specific!) defined:
+"OS X Volume" - Pointing to your OSX boot drive
+"flext" - Pointing to the flext main directory
+"Cycling74 OSX" - Pointing to the SDK for Max/MSP - the path should end with /c74support
+
+With your project using flext use the prefix file "flcwmax-x.h" or,
+alternatively "flcwmax-x-thr.h" for threading support.
+
+
+- MacOS9 - Metrowerks Codewarrior (.mcp files)
+
+You should have the following "Source Trees" (CW preferences, not project specific!) defined:
+"flext" - Pointing to the flext main directory
+"Cycling74" - Pointing to the Cycling 74 SDK
+"MP SDK" - Pointing to the Multiprocessing SDK (for threading support)
+
+With your project using flext use the prefix file "flcwmax.h" or,
+alternatively "flcwmax-thr.h" for threading support.