ENH: clean things up a bit

This commit is contained in:
Bill Hoffman 2000-08-31 06:36:18 -04:00
parent dbad2a6901
commit e644c825fb
2 changed files with 58 additions and 29 deletions

View File

@ -14,8 +14,6 @@ CXX = @CXX@
CXXFLAGS = @ITK_SHLIB_CFLAGS@ @EXTRA_GCC_FLAG@ @ITK_TEMPLATE_FLAGS@
USER_CFLAGS = @CFLAGS@
USER_CXXFLAGS = @CXXFLAGS@
X_EXTRA_LIBS = @X_EXTRA_LIBS@
X_PRE_LIBS = @X_PRE_LIBS@
@ -83,27 +81,32 @@ INSTALL = @INSTALL@
LIB_INSTALL_DIR = $(INSTALL_ROOT)$(exec_prefix)/lib
BIN_INSTALL_DIR = $(INSTALL_ROOT)$(exec_prefix)/bin
# set up the path to the rulesgen program
CMAKE = @CMAKE_OBJ_DIR@/CMake/Source/CMakeBuildTargets
KIT_OBJ = ${SRC_OBJ} ${EXTRA_KIT_OBJ}
BUILD_LIB_FILE = lib${ME}${ITK_LIB_EXT}
# ***** BEGIN VARIBLES THAT CAN BE OVERRIDDEN IN CMakeLocal.make.in **************
# leave this as a place holder for users to add compile flags
LOCAL_CXXFLAGS =
LOCAL_CFLAGS =
LOCAL_BUILD_TARGETS =
LOCAL_LINK_FLAGS =
USER_CFLAGS = @CFLAGS@
USER_CXXFLAGS = @CXXFLAGS@
# Add the compiler include flags
# right now we include vxl and Common and the config directories
# ***** END VARIBLES THAT CAN BE OVERRIDDEN IN CMakeLocal.make.in **************
# compile line flags
INCLUDE_FLAGS = -I. \
-I${CONFIG_DIR}/Code/Insight3DParty/vxl \
-I${CONFIG_DIR} \
-I${topdir}/Code/Common \
-I${topdir}/Code/Insight3DParty/vxl
CXX_FLAGS = ${CPPFLAGS} ${LOCAL_CXXFLAGS} ${CXXFLAGS} \
CXX_FLAGS = ${CPPFLAGS} ${USER_CXXFLAGS} ${CXXFLAGS} \
${KIT_FLAGS} ${INCLUDE_FLAGS}
CC_FLAGS = ${CPPFLAGS} ${LOCAL_CFLAGS} ${CFLAGS}
CC_FLAGS = ${CPPFLAGS} ${USER_CFLAGS} ${CFLAGS}
# set up the path to the rulesgen program
CMAKE = @CMAKE_OBJ_DIR@/CMake/Source/CMakeBuildTargets
KIT_OBJ = ${SRC_OBJ}
BUILD_LIB_FILE = lib${ME}${ITK_LIB_EXT}

58
README
View File

@ -1,20 +1,6 @@
CMakeMaster.make -> main file to be included by makefiles
CMakeVariables.make -> all make varibles are set in this file
CMakeRules.make -> All build rules are here
CMakeLocal.make -> Place for hand configuration
CMakeLists.txt -> File in each directory that contains classes, exe, etc
CMakeTargets.make -> generated rules for make style build
Windows / Visual Studio 6.0
CMakeSetup.exe -> window MFC based GUI for configure on windows
CMakeSetupCMD.exe -> windows command line version of CMakeConfigure
Unix
configure -> run on unix to configure for build
CMakeBuildTargets -> Unix program to read CMakeLists.txt and generate CMakeTargets.make
CMakeLists.txt:
CMakeLists.txt -> File in each directory that contains classes, exe, etc
CMakeLists.txt contains the following:
WIN32_CLASSES =
UNIX_CLASSES =
ABSTRACT_CLASSES =
@ -25,6 +11,46 @@ BEGIN MAKE VERBATIM
... # copy stuff into CMakeTargets.make directly
END MAKE VERBATIM
TEMPLATE_INSTANCE_DIR =
Windows / Visual Studio 6.0 programs
CMakeSetup.exe -> window MFC based GUI for configure on windows
CMakeSetupCMD.exe -> windows command line version of CMakeConfigure
To Build on Windows:
load CMake/Source/CMakeSetup.dsw
Build it
Run it
Specify paths
Load ITK.dsw
Build Common, Numerics, then any of the many executables, or do a Batch build
with debug only.
Unix scripts and programs:
configure -> run on unix to configure for build
CMakeBuildTargets -> Unix program to read CMakeLists.txt and generate CMakeTargets.make
makefile fragments:
CMakeMaster.make -> main file to be included by makefiles
CMakeVariables.make -> all make varibles are set in this file
CMakeRules.make -> All build rules are here
CMakeLocal.make -> Place for hand configuration
CMakeTargets.make -> generated rules for make style build
MakefileTemplate.make -> master makefile template used by configure to generate Makefiles
Unix install:
In place:
./configure
make
Other directory:
mkdir Insight-build
cd Insight-build
../Insight/configure
make
TODO:
Fix cmUnixMakefile.cxx and cmDSPMakefile.cxx
to read libraries and -I stuff from a config file