Browse Source

ENH: clean things up a bit

Bill Hoffman 25 years ago
parent
commit
e644c825fb
2 changed files with 58 additions and 29 deletions
  1. 16 13
      CMakeVariables.make.in
  2. 42 16
      README

+ 16 - 13
CMakeVariables.make.in

@@ -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}

+ 42 - 16
README

@@ -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
+
+