Merge branch 'release-2.140.136'
[feisty_meow.git] / scripts / clam / cpp / variables.def
index 9ab02a8702ce9832d4e8f45504a12ef22bacc647..0ba91e04f275e15e85c5aefeb91236f5226f3563 100644 (file)
@@ -21,74 +21,6 @@ include variables.def
 
 ###############################################################################
 
-#no # set the repository directory if it is still set to the base version.
-#ifeq "$(FEISTY_MEOW_APEX)" ""
-#  ifeq "$(OP_SYSTEM)" "UNIX"
-#    export FEISTY_MEOW_APEX = $(HOME)/hoople
-#  endif
-#  ifeq "$(OP_SYSTEM)" "WIN32"
-#    export FEISTY_MEOW_APEX = l:
-#  endif
-#endif
-
-#export CLAM_BINARIES = $(CLAM_SCRIPTS)/../bin
-
-###############################################################################
-
-# BASE_CPU is a flag that distinguishes the type of processor, if necessary.
-export BASE_CPU
-#BASE_CPU := m68k = motorola 68000 series | m68340 = motorola 68340
-#    | x86 = intel x86 | ppc = power pc | arm = ARM core
-
-# set the CPU to a default if it has not been set previously.
-ifeq "$(BASE_CPU)" ""
-#  ifneq "$(OP_SYSTEM)" "WIN32"
-    BASE_CPU := $(shell machine 2>/dev/null || arch 2>/dev/null || uname -m 2>/dev/null || echo i686)
-#  endif
-
-#  ifeq "$(BASE_CPU)" ""
-#    BASE_CPU := $(shell uname -m)
-#    BASE_CPU := $(shell arch)
-#    ifeq "$(BASE_CPU)" ""
-#      # failed to get the cpu type.
-#      BASE_CPU := x86
-#    endif
-#  endif
-endif
-
-# COMPILER is a flag that specifies the compiler that will be used to build
-# code.  It is mainly used within CLAM itself for determining the proper
-# compiler flags.
-export COMPILER
-#COMPILER := GNU_LINUX | GNU_ARM_LINUX | GNU_DARWIN | GNU_WINDOWS | VISUAL_CPP
-
-# choose a default compiler if none was specified.
-ifeq "$(COMPILER)" ""
-  ifeq "$(OP_SYSTEM)" "UNIX"
-    ifeq "$(OS_SUBCLASS)" "darwin"
-      COMPILER := GNU_DARWIN
-    else
-      COMPILER := GNU_LINUX
-    endif
-  endif
-  ifeq "$(OP_SYSTEM)" "WIN32"
-#    COMPILER := GNU_WINDOWS
-    COMPILER := VISUAL_CPP
-  endif
-  ifeq "$(COMPILER)" ""
-    # if we get into this case, we have no idea how to set the default
-    # compiler.  you may need to change the above logic for guessing it
-    # anyhow.  but we will go with our favorite default.
-    COMPILER := GNU_LINUX
-  endif
-endif
-
-# COMPILER_VERSION specifies the version of a particular compiler, if this is
-# needed to distinguish how the code is built.
-export COMPILER_VERSION
-
-###############################################################################
-
 # "TYPE" is the kind of product being generated by this project.  this is
 # used to decide where to put the final products of compilation.  this is a
 # variable in the user makefile.
@@ -198,9 +130,9 @@ export OUTPUT_ROOT = $(CLAM_TMP)/objects
 # "CPU_BUILD_DIR" distinguishes object directories by including the CPU
 # name and the type of build.
 ifneq "$(DEBUG)" ""
-  CPU_BUILD_DIR = $(BASE_CPU)_$(PLATFORM_ADD_IN)dbg
+  CPU_BUILD_DIR = $(CLAM_BASE_CPU)_$(PLATFORM_ADD_IN)dbg
 else
-  CPU_BUILD_DIR = $(BASE_CPU)_$(PLATFORM_ADD_IN)rel
+  CPU_BUILD_DIR = $(CLAM_BASE_CPU)_$(PLATFORM_ADD_IN)rel
 endif
 
 # "BASE_OUTPUT_PATH" is the parent directory of objects for this type of
@@ -208,7 +140,7 @@ endif
 export BASE_OUTPUT_PATH = $(OUTPUT_ROOT)/$(CPU_BUILD_DIR)
 
 # special case when doing arm-linux builds
-ifeq "$(COMPILER)" "GNU_ARM_LINUX"
+ifeq "$(CLAM_COMPILER)" "GNU_ARM_LINUX"
   export TARGETS_STORE = $(FEISTY_MEOW_APEX)/$(CPU_BUILD_DIR)
   # special output directory for firmware does not include CPU name because
   #  the repository already include the CPU name
@@ -228,21 +160,9 @@ export DYNAMIC_LIBRARY_DIR = $(TARGETS_STORE)
 export STATIC_LIBRARY_DIR = $(TARGETS_STORE)
 
 # "HEADER_SEARCH_PATH" is where the class interface files are to be found.
-# we add the generated store folder for the build version file.
-HEADER_SEARCH_PATH = $(FEISTY_MEOW_GENERATED_STORE)/versions
-
-# "HOOPLE_HEADERS" are locations where the HOOPLE headers can be found.
-ifeq "$(HOOPLE_HEADERS)" ""
-#seems like some of this is redundant with earlier 3rdparty exploring.
-  LOCUS_LIBRARY_HEADERS = $(shell bash -c '\
-    if [ -d "$(FEISTY_MEOW_APEX)/nucleus" ]; then \
-      echo "$(FEISTY_MEOW_APEX)/nucleus" "$(FEISTY_MEOW_APEX)/octopi" "$(FEISTY_MEOW_APEX)/graphiq" ; \
-    else \
-      echo ""; \
-    fi | tr "\\\\" / | sed -e "s/\([a-zA-Z]\):\/\([^ ]*\)/\/cygdrive\/\1\/\2/g" ')
-    # above assumes cygwin support for windows!  was assuming msys support.
-  HOOPLE_HEADERS := $(shell $(FIND) $(LOCUS_LIBRARY_HEADERS) -mindepth 1 -maxdepth 1 -type d )
-endif
+# the generated store folder is added to access the build version file.
+# the binaries are added to access the system_helper.h file.
+HEADER_SEARCH_PATH = $(FEISTY_MEOW_GENERATED_STORE)/versions $(FEISTY_MEOW_BINARIES)
 
 # "LOCAL_HEADERS" are overrides that go first in the header search path.
 LOCAL_HEADERS = $(THIRD_PARTY_DIR)
@@ -403,9 +323,12 @@ LIBRARY_PATH_FLAG = -L
 # The name of the library creator tool.
 #LIBRARY_TOOL =
 
-# the root name of the version file.  This is currently irrelevant on
-# non-win32 platforms.
-VERSION_RC_ROOT = $(shell $(SHELL) $(CLAM_SCRIPTS)/cpp/rc_name.sh)
+ifeq "$(OPERATING_SYSTEM)" "WIN32"
+  # the root name of the version file.  This is currently irrelevant on
+  # non-windoze platforms.
+  #CLAM_VERSION_RC_ROOT = $(shell $(SHELL) $(CLAM_SCRIPTS)/cpp/rc_name.sh)
+  #hmmm: also currently irrelevant since we are only doing static builds.
+endif
 
 ifneq "$(CONSOLE_MODE)" ""
   # this definition can be used to signal different behavior when the app is
@@ -417,42 +340,34 @@ endif
 ###############################################################################
 
 # Operating system dependent flags.
+# (not so OS dependent with move to only gnu compilation...)
 
-ifeq "$(OP_SYSTEM)" "UNIX"
-  LIB_ENDING = .a
-  DYNLIB_ENDING = .so
-endif
-ifeq "$(OP_SYSTEM)" "WIN32"
-  ifeq "$(COMPILER)" "VISUAL_CPP"
-    LIB_ENDING = .lib
-    DYNLIB_ENDING = .dll
-  else
-    LIB_ENDING = .a
-    DYNLIB_ENDING = .so
-  endif
-endif
+LIB_ENDING = .a
+DYNLIB_ENDING = .so
 
 ###############################################################################
 
 # Compiler Dependent Flags
 #
-# "COMPILER_ROOT_DIR" is the top-level for the C++ compiler location.
-export COMPILER_ROOT_DIR
+# "CLAM_COMPILER_ROOT_DIR" is the top-level for the C++ compiler location.
 # "COMPILER_HEADER_DIR" is where the compiler headers are.
-export COMPILER_HEADER_DIR
 # "COMPILER_LIBRARY_DIR" is where archived libraries are.
 # "CC" is the name of the C++ compiler to be used.
+export COMPILER_HEADER_DIR
 
 # These flags may be useful across multiple compilers.
 #
-# SSL brings in the OpenSSL libraries.
-USE_SSL=
+# "USE_SSL" brings in the OpenSSL libraries.
+#USE_SSL =
+
+# "USE_CURL" provides access to the curl library.
+#USE_CURL =
 
-# CURL provides access to the curl library.
-USE_CURL=
+# "USE_WXWIDGETS" enables wxwidget library support.
+#USE_WXWIDGETS =
 
-# Enables wxwidget library support.
-USE_WXWIDGETS=
+# "USE_XWIN" specifies that this project needs X window system support.
+#USE_XWIN =
 
 ifneq "$(OMIT_VERSIONS)" ""
   DEFINITIONS += NO_VERSION
@@ -462,29 +377,24 @@ endif
 # compiler specific section below.
 ############################################################################
 
-ifeq "$(COMPILER)" "GNU_LINUX"
+ifeq "$(CLAM_COMPILER)" "GNU_LINUX"
   # Unix GNU compiler...
   CC = g++
-  COMPILER_ROOT_DIR = /
   PLATFORM_ADD_IN = linux_
-  ARCHITECTURE = $(shell machine 2>/dev/null || arch 2>/dev/null || echo i686)
-
-  export COMPILER_VERSION = $(shell $(SHELL) $(CLAM_SCRIPTS)/cpp/get_version.sh $(COMPILER) $(COMPILER_ROOT_DIR) )
-
   DEFINITIONS += _FILE_OFFSET_BITS=64 
 
   DEPENDENCY_DEFINITIONS += NO_VERSION
-  DEPENDENCY_ADDITIONS = -X/usr/include -X/usr/include/c++/$(COMPILER_VERSION) -X/usr/include/c++/$(COMPILER_VERSION)/tr1 -X/usr/local/include -X/usr/include/linux -X/usr/include/wx-2.8 -X/usr/lib/gcc/i586-suse-linux/$(COMPILER_VERSION)/include -X/usr/lib/gcc/i486-linux-gnu/$(COMPILER_VERSION)/include -X/usr/lib/gcc/i686-linux-gnu/$(COMPILER_VERSION)/include -X/usr/lib/gcc/x86_64-linux-gnu/$(COMPILER_VERION)/include -X/usr/include/x86_64-linux-gnu -X/usr/include/i386-linux-gnu
-
-  # "USE_XWIN" specifies that this project needs X window system support.
-  #USE_XWIN =
+#hmmm: uggh, can we clean up this huge list of dep adds somehow?
+  DEPENDENCY_ADDITIONS = -X/usr/include -X/usr/include/c++/$(CLAM_COMPILER_VERSION) -X/usr/include/c++/$(CLAM_COMPILER_VERSION)/tr1 -X/usr/local/include -X/usr/include/linux -X/usr/include/wx-2.8 -X/usr/lib/gcc/i586-suse-linux/$(CLAM_COMPILER_VERSION)/include -X/usr/lib/gcc/i486-linux-gnu/$(CLAM_COMPILER_VERSION)/include -X/usr/lib/gcc/i686-linux-gnu/$(CLAM_COMPILER_VERSION)/include -X/usr/lib/gcc/x86_64-linux-gnu/$(COMPILER_VERION)/include -X/usr/include/x86_64-linux-gnu -X/usr/include/i386-linux-gnu
 
-  ifeq "x86_64" "$(ARCHITECTURE)"
-    COMPILER_LIBRARY_DIR = /lib64 /usr/lib64 /usr/local/lib64
-  else
-    COMPILER_LIBRARY_DIR = /lib /usr/lib /usr/local/lib
-  endif
+#  ifeq "x86_64" "$(CLAM_BASE_CPU)"
+#    COMPILER_LIBRARY_DIR = /lib64 /usr/lib64 /usr/local/lib64
+#  else
+#    COMPILER_LIBRARY_DIR = /lib /usr/lib /usr/local/lib
+#  endif
   DEFINITIONS += __LINUX__ linux __linux__ UNIX unix __UNIX__ __USE_GNU 
+
+#hmmm: move to an x win enabling area.
   # X Window System not enabled by default.
   #DEFINITIONS += __XWINDOWS__ 
 
@@ -498,6 +408,8 @@ ifeq "$(COMPILER)" "GNU_LINUX"
     # space on end is significant.
   LINKER_OUTPUT_FLAG = -o 
   LINK_TOOL = g++
+
+  COMPILER_FLAGS += -shared-libgcc -fPIC  
   # compiler flags for gcc:
   # -finline-functions: inline functions as needed.
   # -fPIC: generate position independent code.
@@ -508,8 +420,6 @@ ifeq "$(COMPILER)" "GNU_LINUX"
   # -shared-libgcc: use the shared library version of compiler libraries.
   # -fno-exceptions: do not support exception handling and stack unwinding.
 
-  COMPILER_FLAGS += -shared-libgcc -fPIC  
-
   ifeq "$(DEBUG)" ""
 #    COMPILER_FLAGS += -finline-functions 
   endif
@@ -546,24 +456,71 @@ endif
 
 ############################################################################
 
-ifeq "$(COMPILER)" "GNU_ARM_LINUX"
+ifeq "$(CLAM_COMPILER)" "GNU_DARWIN"
+  # Darwin kernel GNU compiler...  really more general macos (MacOS) here these days.
+  CC = g++
+  PLATFORM_ADD_IN = darwin
+  DEFINITIONS += _FILE_OFFSET_BITS=64 
+
+  DEPENDENCY_DEFINITIONS += NO_VERSION
+#  DEPENDENCY_ADDITIONS = -X/usr/include -X/usr/include/c++/$(CLAM_COMPILER_VERSION) -X/usr/include/c++/$(CLAM_COMPILER_VERSION)/tr1 -X/usr/local/include -X/usr/include/linux -X/usr/include/wx-2.8 -X/usr/lib/gcc/i586-suse-linux/$(CLAM_COMPILER_VERSION)/include -X/usr/lib/gcc/i486-linux-gnu/$(CLAM_COMPILER_VERSION)/include
+  DEPENDENCY_ADDITIONS = -X/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include
+
+  COMPILER_HEADER_DIR := /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include
+#/usr/local/include /usr/include 
+#old /System/Library/Frameworks/Foundation.framework/Versions/C/Headers
+#/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include
+#/Library/Developer/CommandLineTools/usr/include
+
+#  ifeq "x86_64" "$(CLAM_BASE_CPU)"
+#    COMPILER_LIBRARY_DIR = /lib64 /usr/lib64 /usr/local/lib64
+#  else
+#    COMPILER_LIBRARY_DIR = /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib
+##/usr/lib /usr/local/lib
+#  endif
+
+  DEFINITIONS += UNIX unix __UNIX__ __USE_GNU 
+
+  LIBRARY_TOOL = ar
+  LIB_PREFIX = lib
+  # special flags for getting rid of warnings on fd_set.
+  LOAD_FLAG_PREFIX=-Wl,-U,___darwin_check_fd_set_overflow
+
+  CREATE_LIBRARY_FLAG += -r 
+    # space on end is significant.
+  LINKER_OUTPUT_FLAG = -o 
+  LINK_TOOL = g++
+
+  # mac specific flags
+  COMPILER_FLAGS += -Wno-nullability-completeness
+#trying this one again, which had been turned off.
+  COMPILER_FLAGS += -fgnu-runtime
+
+  ifneq "$(DEBUG)" ""
+    # add in debugging flags.
+#    COMPILER_FLAGS += -g3 -O0
+  endif
+endif
+
+############################################################################
+
+ifeq "$(CLAM_COMPILER)" "GNU_ARM_LINUX"
   # ARM-linux GNU compiler...
-  COMPILER_ROOT_DIR = /usr/local/arm-linux
-  CC = $(COMPILER_ROOT_DIR)/bin/g++
-  PLATFORM_ADD_IN = linux_
 
-  export COMPILER_VERSION = $(shell $(SHELL) $(CLAM_SCRIPTS)/cpp/get_version.sh $(COMPILER) $(COMPILER_ROOT_DIR) )
+##  CLAM_COMPILER_ROOT_DIR = /usr/local/arm-linux
+#hmmm: the above is the one we may need to integrate into build_variables.sh
 
+  CC = $(CLAM_COMPILER_ROOT_DIR)/bin/g++
+  PLATFORM_ADD_IN = linux_
   SNAPGEAR_ROOT_DIR = $(HOME)/snapgear
-
   DEPENDENCY_DEFINITIONS += NO_VERSION
 
   COMPILER_HEADER_DIR = $(SNAPGEAR_ROOT_DIR)/linux-2.4.x/include
 #  COMPILER_HEADER_DIR += $(SNAPGEAR_ROOT_DIR)/include 
-  COMPILER_HEADER_DIR += $(COMPILER_ROOT_DIR)/include $(COMPILER_ROOT_DIR)/lib 
+  COMPILER_HEADER_DIR += $(CLAM_COMPILER_ROOT_DIR)/include $(CLAM_COMPILER_ROOT_DIR)/lib 
   COMPILER_HEADER_DIR += /usr/local/lib/gcc-lib/arm-linux/3.3.2/include
   
-  COMPILER_LIBRARY_DIR = $(SNAPGEAR_ROOT_DIR)/lib $(COMPILER_ROOT_DIR)/lib/be
+  COMPILER_LIBRARY_DIR = $(SNAPGEAR_ROOT_DIR)/lib $(CLAM_COMPILER_ROOT_DIR)/lib/be
 
   DEFINITIONS += linux __linux__ unix UNIX __UNIX__ __LINUX__ 
 
@@ -572,12 +529,12 @@ ifeq "$(COMPILER)" "GNU_ARM_LINUX"
     COMPILER_FLAGS += -Wall -Werror
   endif
 
-  LIBRARY_TOOL = $(COMPILER_ROOT_DIR)/bin/ar
+  LIBRARY_TOOL = $(CLAM_COMPILER_ROOT_DIR)/bin/ar
   LIB_PREFIX = lib
   CREATE_LIBRARY_FLAG += -r 
     # space on end is significant.
   
-  LINK_TOOL = $(COMPILER_ROOT_DIR)/bin/g++
+  LINK_TOOL = $(CLAM_COMPILER_ROOT_DIR)/bin/g++
   LINKER_OUTPUT_FLAG = -o
   EXE_FLAGS = -mbig-endian
   LOAD_FLAG_PREFIX += -v -mbig-endian
@@ -592,32 +549,23 @@ endif
 
 ############################################################################
 
-ifeq "$(COMPILER)" "GNU_WINDOWS"
+ifeq "$(CLAM_COMPILER)" "GNU_WINDOWS"
   # GNU compiler for MS Windoze...
   CC = g++
-  ifeq "$(COMPILER_ROOT_DIR)" ""
-    COMPILER_ROOT_DIR = $(CYGROOT)
-  endif
-
-  export COMPILER_VERSION = $(shell $(SHELL) $(CLAM_SCRIPTS)/cpp/get_version.sh $(COMPILER) $(COMPILER_ROOT_DIR) )
-
-  RC := $(COMPILER_ROOT_DIR)/bin/windres
+#  RC := $(CLAM_COMPILER_ROOT_DIR)/bin/windres
   PLATFORM_ADD_IN = w32_
 
-  COMPILER_HEADER_DIR = $(COMPILER_ROOT_DIR)/include $(COMPILER_ROOT_DIR)/include/c++/3.4.2 
-#$(COMPILER_ROOT_DIR)/lib/gcc/mingw32/3.4.2/include 
-###$(COMPILER_ROOT_DIR)/usr/include/mingw $(COMPILER_ROOT_DIR)/usr/include $(COMPILER_ROOT_DIR)/usr/include/w32api $(COMPILER_ROOT_DIR)/usr/include/extras
+  COMPILER_HEADER_DIR = $(CLAM_COMPILER_ROOT_DIR)/include $(CLAM_COMPILER_ROOT_DIR)/include/c++/3.4.2 
+#$(CLAM_COMPILER_ROOT_DIR)/lib/gcc/mingw32/3.4.2/include 
+###$(CLAM_COMPILER_ROOT_DIR)/usr/include/mingw $(CLAM_COMPILER_ROOT_DIR)/usr/include $(CLAM_COMPILER_ROOT_DIR)/usr/include/w32api $(CLAM_COMPILER_ROOT_DIR)/usr/include/extras
 
-  COMPILER_LIBRARY_DIR = $(COMPILER_ROOT_DIR)/lib
-  DEFINITIONS += __GNU_WINDOWS__ _Windows _WINDOWS WIN32 __WIN32__ __FLAT__ VC_EXTRALEAN WIN32_LEAN_AND_MEAN ATL_NO_LEAN_AND_MEAN _WIN32 __USE_W32_SOCKETS
-#__cplusplus 
-#__USE_GNU 
+  COMPILER_LIBRARY_DIR = $(CLAM_COMPILER_ROOT_DIR)/lib
+  DEFINITIONS += __GNU_WINDOWS__ _Windows _WINDOWS WIN32 __WIN32__ __FLAT__ VC_EXTRALEAN WIN32_LEAN_AND_MEAN ATL_NO_LEAN_AND_MEAN _WIN32 
 
   LIBRARY_TOOL = ar
   LIBRARY_PATH_FLAG = -L 
   LIB_PREFIX = lib
   LIB_ENDING = .a
-#  LOAD_FLAG_PREFIX += -lpthread
   LOAD_FLAG_PREFIX += -mwindows
   CREATE_LIBRARY_FLAG += -r 
     # space on end is significant.
@@ -626,366 +574,9 @@ ifeq "$(COMPILER)" "GNU_WINDOWS"
   MIDL = midl -Oicf $(MIDL_DEFS) $(HEADER_SEARCH_PATH:%=-I% ) $(DEFINITIONS:%=-D% )
   MIDL_DEFS = -no_robust
   # some lovely definitions used by some of the mfc and other ms code.
-  DEPENDENCY_DEFINITIONS += __cplusplus __MINGW32__ _WIN32 _CHAR_UNSIGNED M_I86 _M_I86 _M_IX86=500 _WIN32_WINNT=0x501 __RPC_WIN32__ __RPCNDR_H_VERSION__ __RPCPROXY_H_VERSION__ TARGET_IS_NT40_OR_LATER PGM_SETCHILD _MFC_VER=0x0600
-
-endif
-
-############################################################################
-
-ifeq "$(COMPILER)" "VISUAL_CPP"
-  # microsoft visual c++ 4.x, 5.x or 6.x.
-
-  PLATFORM_ADD_IN = w32_
+  DEPENDENCY_DEFINITIONS += __cplusplus __MINGW32__ _WIN32 _CHAR_UNSIGNED M_I86 _M_I86 _M_IX86=500 _WIN32_WINNT=0x501 __RPC_WIN32__ __RPCNDR_H_VERSION__ __RPCPROXY_H_VERSION__ TARGET_IS_NT40_OR_LATER PGM_SETCHILD 
+#hmmm: yuck; re-evaluate need for the above dep defs.
 
-  TRIPART_VERSION =
-
-  CLEANUPS += $(PDB_DIR)/$(PROJECT)_bookkeeping.pdb 
-#hmmm: import libs for dynamic libraries on ms-win32 do not currently get
-#      cleaned up nicely.
-
-  # ensure that any setting for this is seen by sub-shells.
-  export WIN32_MANIFEST_FILE
-
-  # these define special characteristics for a program being built.
-  #   BASE is almost always defined and pulls in fundamental w32 support.
-  #   RPC supplies the remote procedure call libraries.
-  #   SECURITY links with the w32 security APIs.
-  #   CLR sets options that are appropriate for managed code.
-  VCPP_USE_BASE=true
-  VCPP_USE_RPC=
-  VCPP_USE_OLE=
-  VCPP_USE_SECURITY=
-  VCPP_USE_CLR=
-  VCPP_VISTA_ICON=
-
-  # the framework dir points at the .net framework to be used for compilation.
-  ifeq "$(FRAMEWORK_VERSION)" ""
-
-    # older .net 1.1.
-#    SHORT_FRAMEWORK_VERSION = 1.1
-#    FRAMEWORK_VERSION = $(SHORT_FRAMEWORK_VERSION).4322
-
-    # current .net 2.0.
-    SHORT_FRAMEWORK_VERSION = 2.0
-    FRAMEWORK_VERSION = $(SHORT_FRAMEWORK_VERSION).50727
-  endif
-  ifeq "$(FRAMEWORK_DIR)" ""
-    FRAMEWORK_DIR = $(subst \,/,$(WINDIR))/Microsoft.NET/Framework/v$(FRAMEWORK_VERSION)
-  endif
-
-  # calculate the visual studio root directory.
-  ifeq "$(VIS_STU_ROOT)" ""
-    export VIS_STU_ROOT := $(shell $(SHELL) $(CLAM_SCRIPTS)/cpp/ms_root_dir.sh )
-  endif
-  ifneq "$(VIS_STU_ROOT)" ""
-    export COMPILER_ROOT_DIR = $(VIS_STU_ROOT)/VC
-  endif
-  ifeq "$(COMPILER_ROOT_DIR)" ""
-    HOSEUP = $(shell echo The compiler directory is not set.  Please define the environment variable)
-    HOSEUP = $(shell echo VSxCOMNTOOLS (x=80, 90 or 100) to point at the folder where visual )
-    HOSEUP = $(shell echo Studio is installed.)
-    HOSEUP =
-  endif
-
-  # redo the compiler version with our new info.
-  export COMPILER_VERSION := $(shell $(SHELL) $(CLAM_SCRIPTS)/cpp/get_version.sh $(COMPILER) $(COMPILER_ROOT_DIR) )
-
-  # set up a directory for debugging files to be stored.  these are not
-  # moved with the postconditions--they are generated in place.
-  export PDB_DIR = $(TARGETS_STORE)
-
-  # set these way up here so we can override them later.
-  CC = $(BUILD_SCRIPTS_PATH)/wrapdoze.sh $(COMPILER_ROOT_DIR)/bin/cl.exe
-  LINK_TOOL = $(BUILD_SCRIPTS_PATH)/wrapdoze.sh $(COMPILER_ROOT_DIR)/bin/link.exe
-  LIBRARY_TOOL = $(BUILD_SCRIPTS_PATH)/wrapdoze.sh $(COMPILER_ROOT_DIR)/bin/lib
-
-  # This is needed to protect against the use of 64-bit time_t structure
-  # on windows.  We are casting to time_t from a 32-bit structure.
-  DEFINITIONS += _USE_32BIT_TIME_T
-
-  # vary the locations for compiler files based on the version.
-  ifeq "$(COMPILER_VERSION)" "6"
-    COMPILER_HEADER_DIR = $(COMPILER_ROOT_DIR)/include $(COMPILER_ROOT_DIR)/atl/include
-    COMPILER_LIBRARY_DIR = $(COMPILER_ROOT_DIR)/lib $(COMPILER_ROOT_DIR)/atl/lib
-    RC = $(BUILD_SCRIPTS_PATH)/wrapdoze.sh $(COMPILER_ROOT_DIR)/../common/msdev98/bin/rc
-  endif
-  ifeq "$(COMPILER_VERSION)" "7"
-    COMPILER_HEADER_DIR = $(COMPILER_ROOT_DIR)/include $(COMPILER_ROOT_DIR)/atlmfc/include $(COMPILER_ROOT_DIR)/platformsdk/include $(FRAMEWORK_DIR)
-    COMPILER_LIBRARY_DIR = $(COMPILER_ROOT_DIR)/lib $(COMPILER_ROOT_DIR)/atlmfc/lib $(COMPILER_ROOT_DIR)/platformsdk/lib
-    RC = $(BUILD_SCRIPTS_PATH)/wrapdoze.sh $(COMPILER_ROOT_DIR)/bin/rc
-    COMPILER_FLAGS += -Zc:forScope
-      # turn on proper loop scoping.
-  endif
-  ifeq "$(COMPILER_VERSION)" "8"
-    COMPILER_HEADER_DIR = $(COMPILER_ROOT_DIR)/include $(COMPILER_ROOT_DIR)/atlmfc/include $(COMPILER_ROOT_DIR)/platformsdk/include $(FRAMEWORK_DIR)
-    COMPILER_LIBRARY_DIR = $(COMPILER_ROOT_DIR)/lib $(COMPILER_ROOT_DIR)/atlmfc/lib $(COMPILER_ROOT_DIR)/platformsdk/lib
-    RC = $(BUILD_SCRIPTS_PATH)/wrapdoze.sh $(COMPILER_ROOT_DIR)/bin/rc
-    COMPILER_FLAGS += -Zc:forScope
-      # turn on proper loop scoping.
-    DEFINITIONS += _WIN32_WINNT=0x501 
-    DEPENDENCY_DEFINITIONS += _WIN32_WINNT=0x501 
-  endif
-#
-# ver 9 (vis stu 2008) is not in here but is probably similar to 8 or 10.
-#
-  ifeq "$(COMPILER_VERSION)" "10"
-    export PLATYPUS = $(WindowsSdkDir)
-    COMPILER_HEADER_DIR = $(COMPILER_ROOT_DIR)/include $(COMPILER_ROOT_DIR)/atlmfc/include $(PLATYPUS)/include
-## $(FRAMEWORK_DIR)
-    COMPILER_LIBRARY_DIR = $(COMPILER_ROOT_DIR)/lib $(COMPILER_ROOT_DIR)/atlmfc/lib $(PLATYPUS)/lib
-    DEFINITIONS += _WIN32_WINNT=0x501 
-    DEPENDENCY_DEFINITIONS += _WIN32_WINNT=0x501 
-    RC = $(BUILD_SCRIPTS_PATH)/wrapdoze.sh $(PLATYPUS)/bin/rc
-    COMPILER_FLAGS += -Zc:forScope
-      # turn on proper loop scoping.
-  endif
-  ifeq "$(COMPILER_HEADER_DIR)" ""
-    HOSEUP = $(shell echo The compiler version is not set.  Please define COMPILER_VERSION.)
-  endif
-  ifeq "$(COMPILER_HEADER_DIR)" ""
-    HOSEUP = $(shell echo The compiler version is not set.  Please define COMPILER_VERSION.)
-  endif
-  ifeq "$(COMPILER_HEADER_DIR)" "0"
-    HOSEUP = $(shell echo The compiler version is not set.  Please define COMPILER_VERSION.)
-  endif
-
-  # add in the mfc directories.
-  COMPILER_HEADER_DIR += $(COMPILER_ROOT_DIR)/mfc/include
-  COMPILER_LIBRARY_DIR += $(COMPILER_ROOT_DIR)/mfc/lib
-
-  DEFINITIONS += _Windows _WINDOWS WIN32 __WIN32__ __FLAT__ VC_EXTRALEAN WIN32_LEAN_AND_MEAN ATL_NO_LEAN_AND_MEAN 
-  DEF_FILE =
-  LOAD_FLAG_PREFIX = -subsystem:windows -machine:X86 -nologo
-  LOAD_FLAG_SUFFIX =
-
-  MIDL = "$(COMPILER_ROOT_DIR)/../Common7/Tools/Bin"/midl.exe -Oicf $(MIDL_DEFS) $(HEADER_SEARCH_PATH:%=-I% ) $(DEFINITIONS:%=-D% )
-  MIDL_DEFS = -no_robust
-
-  # additional definitions that get put on the command line for makedep.  these
-  # are needed since visual c++ defines them automatically.
-  DEPENDENCY_DEFINITIONS += __cplusplus _WIN32 _CHAR_UNSIGNED M_I86 _M_I86 _MSC_VER=1200 _M_IX86=500 __RPC_WIN32__ __RPCNDR_H_VERSION__ __RPCPROXY_H_VERSION__ TARGET_IS_NT40_OR_LATER PGM_SETCHILD _MFC_VER=0x0600
-
-  # set the flags used by visual c++.
-  CREATE_LIBRARY_FLAG = -out:
-  LIBRARY_NAME_FLAG =
-  LIBRARY_PATH_FLAG = -libpath:
-  LINKER_OPTION_SEPARATOR = -link
-  LINKER_OUTPUT_FLAG = -out:
-  OBJECT_NAME_FLAG = -Fo
-
-  # Add the extra files created by visual c++.
-#is this needed now that we whack whole output path?  CLEANUPS += $(OUTPUT_PATH)/*.*db
-
-  # compilation parameters for microsoft.
-  #   -c specifies compilation without linking.
-  #   -EHsc is the flag for turning on exception handling.
-  #   -FD is for getting the best dependency checking in visual studio.
-  #   -Fd[filename] names the program database (PDB) file used for debugging.
-  #   -Fp[filename] names the precompiled header file name.
-  #   -FR[filename] names the browser output path used for source analysis.
-  #   -Gd calling convention is cdecl.
-  #   -Gm enables minimal rebuild (only if source files changed).
-  #       Note!  as of Visual Studio 6 SP 3, minimal rebuild does not work
-  #       properly.  Do not use it unless you want inconsistent builds!
-  #   -GR enables run-time type identification (RTTI).
-  #   -GS enables buffer checking.
-  #   -GX turns on synchronous exception handling. (deprecated)
-  #   -Gz uses __stdcall calling convention.
-  #   -MD specifies multi-threaded DLL (MDd means debug).
-  #   -ML signifies uni-threaded executable (MLd means debug).
-  #   -MT indicates multi-threaded executable (MTd means debug)
-  #   -O is for optimization (1 small code, 2 fast code, d disabled).
-  #     do not use 1 or 2 though; they both include "global optimization",
-  #     which seems plagued with problems.  the specific optimizations are:
-  #       -Oa  assume no aliasing
-  #       -Obn  inline function expansion, where n is 1 (enable) or 0 (disable)
-  #       -Od  disable (for debug)
-  #       -Oi  generate intrinsic functions
-  #       -Og  global optimizations (flawed)
-  #       -Op  improve float consistency
-  #       -Os  favor small code
-  #       -Ot  favor fast code
-  #       -Ow  assume aliasing across function calls
-  #       -Ox  full optimization
-  #       -Oy  frame pointer optimization
-  #     -O1 has g s y b1 Gs Gf Gy
-  #     -O2 has g i t y b1 Gs Gf Gy
-  #   -TP C++ compilation.
-  #   -W sets the warning level (from 0 (least warnings) through 4 (loudest)).
-  #       -WX turns all warnings into errors.
-  #   -Yu[filename] uses a precompiled header file.
-  #   -YX turns on precompiled headers.  not used due to poor implementation.
-  #   -Zi generates debugging information into the PDB file.
-
-  # put the common flags into the compiler flags.
-  COMPILER_FLAGS += -nologo -Fd$(PDB_DIR)/$(PROJECT)_bookkeeping.pdb -GR -W3 -Zi -EHsc -GS -Gd 
-#-Wp64 
-
-  ifneq "$(DEBUG)" ""
-    # disable function inlining and optimizations for debug.
-    COMPILER_FLAGS += -Ob0 -Od
-  else
-    # enable function inlining for release only.
-    COMPILER_FLAGS += -Ob1
-
-    ifneq "$(OPTIMIZE)" ""
-      # add in fast code optimization.
-      COMPILER_FLAGS += -O2
-    else
-      # no optimizations.
-    endif
-
-  endif
-
-  # linking parameters for microsoft.
-  #   -dll specifies that a dynamic library is to be created.
-  #   -debug specifies that debugging information is to be included.
-  #   -map turns on the map file.
-  #   -warn sets the warning level, from 0 to 3, where 3 is the most verbose.
-  #   kernel32.lib is the kernel support.
-  #   user32.lib is the user level support.
-  #   gdi32.lib is the graphical device interface? support.
-  #   winspool.lib contains printer support.
-  #   comdlg32.lib provides the common dialogs.
-  #   advapi32.lib provides deeper win32 features, like registry, services, etc.
-  #   shell32.lib is ?
-  #   ole32.lib supplies OLE support.
-  #   oleaut32.lib is the OLE automation library.
-  #   uuid.lib has unique id management?
-  #   odbc32.lib provides ODBC data source functionality.
-  #   odbccp32.lib is something?
-  #   winmm.lib has the win32 multimedia support.
-  #   version.lib offers up splendid version services.
-
-  # check if profiling is to be enabled.
-  PROFILER_FLAG =
-  ifneq "$(PROFILE)" ""
-    PROFILER_FLAG = -profile
-  endif
-
-  LIBS_USED += htmlhelp.lib
-
-  # add the common linker flags.  the debugging flag is added because we
-  # want to be able to debug into release code, but since the pdb files
-  # are separate, we are not exposing ourselves when we do not include them.
-  LOAD_FLAG_PREFIX += $(PROFILER_FLAG) -debug -opt:ref -opt:icf 
-#-warn:3
-
-  # "USE_MFC" dictates whether mfc should be allowed in the application.
-  # the default is not to use MFC extension style dlls.  this can be turned
-  # on in the individual makefiles that require MFC.
-  #USE_MFC =
-
-  # the library creator gets a couple of flags.
-  LIBRARIAN_FLAGS += -nologo -machine:X86 -subsystem:windows
-
-  # now, vary the flag configuration based on the flags that have been set.
-
-####override for windows since things are broken with WinMain
-###export CONSOLE_MODE = true
-
-  ifneq "$(CONSOLE_MODE)" ""
-    # console type of applications are built using the static flag so that
-    # they are more redistributable.
-    DEFINITIONS += _CONSOLE
-    LOAD_FLAG_SUFFIX += -subsystem:console
-    LIBRARIAN_FLAGS += -subsystem:console
-  endif
-
-  # dynamically linked library or application flags.
-  ifneq "$(DEBUG)" ""
-    # debug.
-    DEFINITIONS += _DEBUG
-    COMPILER_FLAGS += -MDd
-  else
-    # release.
-    DEFINITIONS += NDEBUG
-    COMPILER_FLAGS += -MD
-    LOAD_FLAG_PREFIX += -map
-  endif
-
-  ifneq "$(STRICT_WARNINGS)" ""
-    COMPILER_FLAGS += -WX
-#would like to add W4 but that triggers warnings in microsoft headers.
-  endif
-
-endif
-
-############################################################################
-
-ifeq "$(COMPILER)" "GNU_DARWIN"
-  # Darwin kernel GNU compiler...  really more general macos (MacOS) here these days.
-  CC = g++
-  COMPILER_ROOT_DIR = /
-  PLATFORM_ADD_IN = darwin
-  ARCHITECTURE = $(shell machine 2>/dev/null || arch 2>/dev/null || echo i686)
-
-  export COMPILER_VERSION = $(shell $(SHELL) $(CLAM_SCRIPTS)/cpp/get_version.sh $(COMPILER) $(COMPILER_ROOT_DIR) )
-
-  DEFINITIONS += _FILE_OFFSET_BITS=64 
-
-  DEPENDENCY_DEFINITIONS += NO_VERSION
-#  DEPENDENCY_ADDITIONS = -X/usr/include -X/usr/include/c++/$(COMPILER_VERSION) -X/usr/include/c++/$(COMPILER_VERSION)/tr1 -X/usr/local/include -X/usr/include/linux -X/usr/include/wx-2.8 -X/usr/lib/gcc/i586-suse-linux/$(COMPILER_VERSION)/include -X/usr/lib/gcc/i486-linux-gnu/$(COMPILER_VERSION)/include
-  DEPENDENCY_ADDITIONS = -X/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include
-
-  COMPILER_HEADER_DIR := /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include
-#/usr/local/include /usr/include 
-#old /System/Library/Frameworks/Foundation.framework/Versions/C/Headers
-#/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include
-#/Library/Developer/CommandLineTools/usr/include
-
-  # "USE_XWIN" specifies that this project needs X window system support.
-  #USE_XWIN =
-
-#  ifeq "x86_64" "$(ARCHITECTURE)"
-#    COMPILER_LIBRARY_DIR = /lib64 /usr/lib64 /usr/local/lib64
-#  else
-    COMPILER_LIBRARY_DIR = /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib
-#/usr/lib /usr/local/lib
-#  endif
-
-#  DEFINITIONS += __LINUX__ linux __linux__ UNIX unix __UNIX__ __USE_GNU 
-  DEFINITIONS += UNIX unix __UNIX__ __USE_GNU 
-  # X Window System not enabled by default.
-  #DEFINITIONS += __XWINDOWS__ 
-
-  LIBRARY_TOOL = ar
-  LIB_PREFIX = lib
-#  LOAD_FLAG_PREFIX += -Xlinker 
-#mac has no o3???
-#-O3 
-  # special flags for getting rid of warnings on fd_set.
-  LOAD_FLAG_PREFIX=-Wl,-U,___darwin_check_fd_set_overflow
-
-# -Xlinker --print-map : shows what went in and why.
-# -Xlinker -O3 : linker optimization
-  CREATE_LIBRARY_FLAG += -r 
-    # space on end is significant.
-  LINKER_OUTPUT_FLAG = -o 
-  LINK_TOOL = g++
-#  COMPILER_FLAGS += -shared-libgcc -fPIC  
-#old: -Wl,-export-dynamic
-#  ifeq "$(DEBUG)" ""
-#    COMPILER_FLAGS += -finline-functions 
-#  endif
-#  ifneq "$(STRICT_WARNINGS)" ""
-#    COMPILER_FLAGS += -Wall -Werror -Wextra -pedantic-errors -Wno-long-long
-#  endif
-#  LIBS_USED += dl pthread rt 
-#mac no like these libs
-     # dl=dynamic library.
-     # pthread=thread libraries.
-     # rt=real time libraries for shared memory.
-
-  # mac specific flags
-  COMPILER_FLAGS += -Wno-nullability-completeness
-#trying this one again, which had been turned off.
-  COMPILER_FLAGS += -fgnu-runtime
-
-  ifneq "$(DEBUG)" ""
-    # add in debugging flags.
-#    COMPILER_FLAGS += -g3 -O0
-  endif
 endif
 
 ############################################################################
@@ -993,7 +584,7 @@ endif
 # these activities are done after the compiler specific stuff.
 
 # add a definition for programs to be able to differentiate the versions.
-DEFINITIONS += COMPILER_VERSION=$(COMPILER_VERSION)
+DEFINITIONS += CLAM_COMPILER_VERSION=$(CLAM_COMPILER_VERSION)
 
 # set a variable that scripts can use to get most of the definitions.
 export VARIABLE_DEFINITION_SET := $(DEFINITIONS)