MS build config updates, suppress warning C4344
This commit is contained in:
@ -3,8 +3,7 @@
|
||||
# National Laboratory.
|
||||
# Copyright (c) 2002 The Regents of the University of California, as
|
||||
# Operator of Los Alamos National Laboratory.
|
||||
# EPICS BASE Versions 3.13.7
|
||||
# and higher are distributed subject to a Software License Agreement found
|
||||
# EPICS BASE is distributed subject to a Software License Agreement found
|
||||
# in file LICENSE that is included with this distribution.
|
||||
#*************************************************************************
|
||||
# Cross compiler default definitions
|
||||
@ -27,6 +26,6 @@ CROSS_LDFLAGS = $(addprefix -L,$(GNU_TARGET_LIB_DIR))
|
||||
CMPLR_PREFIX_CROSS=$(addsuffix -,$(GNU_TARGET))
|
||||
CMPLR_PREFIX=$(CMPLR_PREFIX_$(BUILD_CLASS))
|
||||
|
||||
# All cross builds use the gnu compiler
|
||||
# Cross builds usually use the gnu compiler
|
||||
include $(CONFIG)/CONFIG.gnuCommon
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
# CONFIG.win32-x86-debug.Common
|
||||
#
|
||||
# Definitions for win32-x86 debug with debug compiler flags
|
||||
# Sites may override these definitions in CONFIG_SITE.win32-x86-debug.Common
|
||||
# Definitions for win32-x86-debug host arch
|
||||
# Override these definitions in CONFIG_SITE.win32-x86-debug.Common
|
||||
#-------------------------------------------------------
|
||||
|
||||
#Include definitions common to win32-x86 hosts
|
||||
|
@ -1,9 +1,12 @@
|
||||
# CONFIG.win32-x86-debug.win32-x86-debug
|
||||
#
|
||||
# Definitions for win32-x86 debug compiler host - win32-x86 debug compiler target builds
|
||||
# Sites may override these definitions in CONFIG_SITE.win32-x86-debug.win32-x86-debug
|
||||
# Definitions for win32-x86-debug host - win32-x86-debug target build
|
||||
# Override these definitions in CONFIG_SITE.win32-x86-debug.win32-x86-debug
|
||||
#-------------------------------------------------------
|
||||
|
||||
#Include definitions common to win32-x86 builds
|
||||
include $(CONFIG)/os/CONFIG.win32-x86.win32-x86
|
||||
-include $(CONFIG)/os/CONFIG_SITE.win32-x86.win32-x86
|
||||
|
||||
# Override CONFIG_SITE settings:
|
||||
HOST_OPT=NO
|
||||
|
@ -1,10 +1,13 @@
|
||||
# CONFIG.win32-x86-static.win32-x86.static
|
||||
#
|
||||
# Definitions for win32-x86-static target archs when host arch is win32-x86-static
|
||||
# Sites may override these definitions in CONFIG_SITE.win32-x86-static.win32-x86-static
|
||||
# Definitions for win32-x86-static host - win32-x86-static target build
|
||||
# Override these definitions in CONFIG_SITE.win32-x86-static.win32-x86-static
|
||||
#-------------------------------------------------------
|
||||
|
||||
#Include definitions common to win32-x86 builds
|
||||
include $(CONFIG)/os/CONFIG.win32-x86.win32-x86
|
||||
-include $(CONFIG)/os/CONFIG_SITE.win32-x86.win32-x86
|
||||
|
||||
# Override CONFIG_SITE settings:
|
||||
SHARED_LIBRARIES = NO
|
||||
STATIC_BUILD = YES
|
||||
|
@ -1,7 +1,7 @@
|
||||
# CONFIG.win32-x86.Common
|
||||
#
|
||||
# Definitions for win32-x86 host archs
|
||||
# Sites may override these definitions in CONFIG_SITE.win32-x86.Common
|
||||
# Override these definitions in CONFIG_SITE.win32-x86.Common
|
||||
#-------------------------------------------------------
|
||||
|
||||
CP = $(PERL) -MExtUtils::Command -e cp
|
||||
|
@ -1,7 +1,7 @@
|
||||
# CONFIG.win32-x86.win32-x86
|
||||
#
|
||||
# Definitions for win32-x86 target archs when host arch is win32-x86
|
||||
# Sites may override these definitions in CONFIG_SITE.win32-x86.win32-x86
|
||||
# Definitions for win32-x86 host - win32-x86 target build
|
||||
# Override these definitions in CONFIG_SITE.win32-x86.win32-x86
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Win32 valid build types and include directory suffixes
|
||||
@ -28,16 +28,21 @@ BAFCMD = bscmake /nologo /o $@
|
||||
# Configure OS vendor C compiler
|
||||
CC = cl
|
||||
|
||||
# Override CONFIG.gnuCommon for cross builds.
|
||||
# Override CONFIG.gnuCommon settings for cross builds.
|
||||
GNU = NO
|
||||
HDEPENDS_METHOD = CMD
|
||||
|
||||
# Compiler flags for C files (C++ is below)
|
||||
|
||||
#
|
||||
# /W<N> use warning level N
|
||||
# (maximum (lint type) warnings at level 4)
|
||||
# /w44355 set "'this' used in the base initializer list" to be level 4
|
||||
WARN_CFLAGS_YES = /W3 /w44355
|
||||
WARN_CFLAGS_NO = /W1
|
||||
# /W<d> display warnings at level d
|
||||
# /W4 is for maximum (lint type) warnings
|
||||
# /W3 is for production quality warnings
|
||||
# /W2 displays significant warnings
|
||||
# /W1 is the default and shows severe warnings only
|
||||
# /w<d><n> Set warning C<n> to be shown at level <d>
|
||||
WARN_CFLAGS_YES = /W3
|
||||
WARN_CFLAGS_NO = /W1
|
||||
|
||||
#
|
||||
# /Ox maximum optimizations
|
||||
@ -78,9 +83,7 @@ STATIC_CFLAGS_YES= /MT$(VISC_STATIC_CFLAGS_DEBUG) $(VISC_DLL)
|
||||
STATIC_CFLAGS_NO= /MD$(VISC_STATIC_CFLAGS_DEBUG) $(VISC_DLL)
|
||||
|
||||
# OS vendor c preprocessor
|
||||
CPP = cl /C /E
|
||||
#GNU c preprocessor
|
||||
#CPP = gcc -x c -E
|
||||
CPP = cl /nologo /C /E
|
||||
|
||||
# Configure OS vendor C++ compiler
|
||||
#
|
||||
@ -99,12 +102,20 @@ CCC = cl /nologo /EHsc /GR
|
||||
CODE_CPPFLAGS += /nologo /D__STDC__=0
|
||||
CODE_CPPFLAGS += /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE
|
||||
|
||||
|
||||
# Compiler flags for C++ files
|
||||
|
||||
#
|
||||
# /W<N> use warning level N
|
||||
# (maximum lint level warnings at level 4)
|
||||
# /w44355 set "'this' used in the base initializer list" to be level 4
|
||||
WARN_CXXFLAGS_YES = /W3 /w44355
|
||||
WARN_CXXFLAGS_NO = /W1
|
||||
# /W<d> display warnings at level d
|
||||
# /W4 is for maximum (lint type) warnings
|
||||
# /W3 is for production quality warnings
|
||||
# /W2 displays significant warnings
|
||||
# /W1 is the default and shows severe warnings only
|
||||
# /w<d><n> Set warning C<n> to be shown at level <d>
|
||||
# /w44355 "'this' used in the base initializer list"
|
||||
# /w44344 "behavior change: use of explicit template arguments results in ..."
|
||||
WARN_CXXFLAGS_YES = /W3 /w44355 /w44344
|
||||
WARN_CXXFLAGS_NO = /W1
|
||||
|
||||
#
|
||||
# /Ox maximum optimizations
|
||||
|
@ -1,17 +1,15 @@
|
||||
# CONFIG.win32-x86.win32-x86-debug
|
||||
#
|
||||
# Definitions for win32-x86 host - win32-x86-debug target build
|
||||
# Sites may override these definitions in CONFIG_SITE.win32-x86.win32-x86-debug
|
||||
# Override these definitions in CONFIG_SITE.win32-x86.win32-x86-debug
|
||||
#-------------------------------------------------------
|
||||
|
||||
-include $(CONFIG)/os/CONFIG.Common.win32-x86
|
||||
-include $(CONFIG)/os/CONFIG.win32-x86.win32-x86
|
||||
-include $(CONFIG)/os/CONFIG_SITE.Common.win32-x86
|
||||
#Include definitions common to win32-x86 builds
|
||||
include $(CONFIG)/os/CONFIG.win32-x86.win32-x86
|
||||
-include $(CONFIG)/os/CONFIG_SITE.win32-x86.win32-x86
|
||||
|
||||
GNU = NO
|
||||
|
||||
HDEPENDS_METHOD = CMD
|
||||
# Override CONFIG.CrossCommon settings:
|
||||
BUILD_CLASS = HOST
|
||||
|
||||
# Override CONFIG_SITE settings:
|
||||
HOST_OPT = NO
|
||||
|
@ -1,11 +1,16 @@
|
||||
# CONFIG.win32-x86.win32-x86-static
|
||||
#
|
||||
# Definitions for win32-x86-static target archs when host arch is win32-x86
|
||||
# Sites may override these definitions in CONFIG_SITE.win32-x86.win32-x86-static
|
||||
# Definitions for win32-x86 host - win32-x86-static target build
|
||||
# Override these definitions in CONFIG_SITE.win32-x86.win32-x86-static
|
||||
#-------------------------------------------------------
|
||||
|
||||
#Include definitions common to win32-x86 builds
|
||||
include $(CONFIG)/os/CONFIG.win32-x86.win32-x86
|
||||
-include $(CONFIG)/os/CONFIG_SITE.win32-x86.win32-x86
|
||||
|
||||
# Override CONFIG.CrossCommon settings:
|
||||
BUILD_CLASS = HOST
|
||||
|
||||
# Override CONFIG_SITE settings:
|
||||
SHARED_LIBRARIES = NO
|
||||
STATIC_BUILD = YES
|
||||
|
@ -1,25 +0,0 @@
|
||||
# CONFIG.win-x86.windows-x64
|
||||
#
|
||||
# Definitions for windows-x64 target archs when host arch is win32-x86
|
||||
# Sites may override these definitions in CONFIG_SITE.win32-x86.windows-x64
|
||||
#-------------------------------------------------------
|
||||
|
||||
-include $(CONFIG)/os/CONFIG.Common.win32-x86
|
||||
-include $(CONFIG)/os/CONFIG.win32-x86.win32-x86
|
||||
|
||||
ARCH_DEP_CPPFLAGS += /favor:blend
|
||||
#ARCH_DEP_CPPFLAGS += /Wp64
|
||||
|
||||
# /favor:blend both AMD64 and INTEL64 This is the default
|
||||
# /favor:AMD64
|
||||
# /favor:INTEL64 (new value)
|
||||
# /favor:EN64T (old value)
|
||||
|
||||
OPT_LDFLAGS += /MACHINE:X64
|
||||
|
||||
# /MACHINE:X64
|
||||
# /MACHINE:IA64 (Itanium)
|
||||
# /MACHINE:X86
|
||||
|
||||
#The following option does not work
|
||||
#ARCH_DEP_CPPFLAGS += /env x64
|
@ -1,7 +1,7 @@
|
||||
# CONFIG.windows-x64-debug.Common
|
||||
#
|
||||
# Definitions for windows-x64 debug with debug compiler flags
|
||||
# Sites may override these definitions in CONFIG_SITE.windows-x64-debug.Common
|
||||
# Definitions for windows-x64-debug host arch
|
||||
# Override these definitions in CONFIG_SITE.windows-x64-debug.Common
|
||||
#-------------------------------------------------------
|
||||
|
||||
#Include definitions common to windows-x64 hosts
|
||||
|
@ -1,8 +1,9 @@
|
||||
# CONFIG.windows-x64-static.Common
|
||||
#
|
||||
# Definitions for windows-x64-static host archs
|
||||
# Sites may override these definitions in CONFIG_SITE.windows-x64-static.Common
|
||||
# Override these definitions in CONFIG_SITE.windows-x64-static.Common
|
||||
#-------------------------------------------------------
|
||||
|
||||
#Include definitions common to windows-x64 hosts
|
||||
include $(CONFIG)/os/CONFIG.windows-x64.Common
|
||||
|
||||
|
@ -1,10 +1,12 @@
|
||||
# CONFIG.windows-x64-static.windows-x64-static
|
||||
#
|
||||
# Definitions for windows-x64-static target archs when host arch is windows-x64-static
|
||||
# Sites may override these definitions in CONFIG_SITE.windows-x64-static.windows-x64-static
|
||||
# Definitions for windows-x64-static host - windows-x64-static target build
|
||||
# Override these definitions in CONFIG_SITE.windows-x64-static.windows-x64-static
|
||||
#-------------------------------------------------------
|
||||
|
||||
#Include definitions common to windows-x64 builds
|
||||
include $(CONFIG)/os/CONFIG.windows-x64.windows-x64
|
||||
|
||||
# Override CONFIG_SITE settings:
|
||||
SHARED_LIBRARIES = NO
|
||||
STATIC_BUILD= YES
|
||||
|
@ -1,10 +1,9 @@
|
||||
# CONFIG.windows-x64.Common
|
||||
#
|
||||
# Definitions for windows-x64 host archs
|
||||
# Sites may override these definitions in CONFIG_SITE.windows-x64.Common
|
||||
# Definitions for windows-x64 host arch
|
||||
# Override these definitions in CONFIG_SITE.windows-x64.Common
|
||||
#-------------------------------------------------------
|
||||
|
||||
-include $(CONFIG)/os/CONFIG.win32-x86.Common
|
||||
|
||||
WIND_HOST_TYPE = x86-win32
|
||||
#Include definitions common to win32-x86 hosts
|
||||
include $(CONFIG)/os/CONFIG.win32-x86.Common
|
||||
|
||||
|
@ -1,21 +1,21 @@
|
||||
# CONFIG.windows-x64.windows-x64
|
||||
#
|
||||
# Definitions for windows-x64 target archs when host arch is windows-x64
|
||||
# Sites may override these definitions in CONFIG_SITE.windows-x64.windows-x64
|
||||
# Definitions for windows-x64 host - windows-x64 target build
|
||||
# Override these definitions in CONFIG_SITE.windows-x64.windows-x64
|
||||
#-------------------------------------------------------
|
||||
|
||||
-include $(CONFIG)/os/CONFIG.win32-x86.win32-x86
|
||||
#Include definitions common to win32-x86 builds
|
||||
include $(CONFIG)/os/CONFIG.win32-x86.win32-x86
|
||||
-include $(CONFIG)/os/CONFIG_SITE.win32-x86.win32-x86
|
||||
|
||||
# Modify CONFIG.win32-x86.win32-x86 settings:
|
||||
ARCH_DEP_CPPFLAGS += /favor:blend
|
||||
#ARCH_DEP_CPPFLAGS += /Wp64
|
||||
|
||||
# /favor:blend both AMD64 and INTEL64
|
||||
# /favor:AMD64
|
||||
# /favor:INTEL64 (new value)
|
||||
# /favor:EN64T (old value)
|
||||
|
||||
OPT_LDFLAGS += /MACHINE:X64
|
||||
|
||||
# /MACHINE:X64
|
||||
# /MACHINE:IA64 (Itanium)
|
||||
# /MACHINE:X86
|
||||
|
@ -1,9 +1,14 @@
|
||||
# CONFIG.windows-x64.windows-x64-debug
|
||||
#
|
||||
# Definitions for windows-x64 compiler host - windows-x64 debug compiler target builds
|
||||
# Sites may override these definitions in CONFIG_SITE.windows-x64.windows-x64-debug
|
||||
# Definitions for windows-x64 host - windows-x64-debug target build
|
||||
# Override these definitions in CONFIG_SITE.windows-x64.windows-x64-debug
|
||||
#-------------------------------------------------------
|
||||
|
||||
#Include definitions common to windows-x64 builds
|
||||
include $(CONFIG)/os/CONFIG.windows-x64.windows-x64
|
||||
|
||||
# Override CONFIG.CrossCommon settings:
|
||||
BUILD_CLASS = HOST
|
||||
|
||||
# Override CONFIG_SITE settings:
|
||||
HOST_OPT=NO
|
||||
|
@ -1,11 +1,15 @@
|
||||
# CONFIG.windows-x86.windows-x86-static
|
||||
# CONFIG.windows-x64.windows-x64-static
|
||||
#
|
||||
# Definitions for windows-x64-static target archs when host arch is windows-x64
|
||||
# Sites may override these definitions in CONFIG_SITE.windows-x64.windows-x64-static
|
||||
# Definitions for windows-x64 host - windows-x64-static target build
|
||||
# Override these definitions in CONFIG_SITE.windows-x64.windows-x64-static
|
||||
#-------------------------------------------------------
|
||||
|
||||
#Include definitions common to windows-x64 builds
|
||||
include $(CONFIG)/os/CONFIG.windows-x64.windows-x64
|
||||
|
||||
# Override CONFIG.CrossCommon settings:
|
||||
BUILD_CLASS = HOST
|
||||
|
||||
# Override CONFIG_SITE settings:
|
||||
SHARED_LIBRARIES = NO
|
||||
STATIC_BUILD = YES
|
||||
|
@ -1,16 +0,0 @@
|
||||
|
||||
# If you have Visual C++ 6.0, uncomment the following override lines
|
||||
# This will to eliminate warnings about unknown options /GL, /LTCG, and /w44355.
|
||||
#OPT_CFLAGS_YES = /Ox
|
||||
#OPT_CXXFLAGS_YES = /Ox
|
||||
#OPT_CFLAGS_NO = /Zi
|
||||
#OPT_CXXFLAGS_NO = /Zi
|
||||
#LINK_OPT_FLAGS_YES = /incremental:no /opt:ref /release $(PROD_VERSION:%=/version:%)
|
||||
#WARN_CFLAGS_YES = /W3
|
||||
#WARN_CXXFLAGS_YES = /W3
|
||||
|
||||
|
||||
# If you have Visual C++ 8.0 or 8.0 express, uncomment the following override.
|
||||
# This will eliminate warnings about /GX being deprecated.
|
||||
#CCC = cl /nologo /EHsc /GR
|
||||
|
@ -13,6 +13,22 @@
|
||||
|
||||
<!-- Insert new items immediately below here ... -->
|
||||
|
||||
<h3>Microsoft Visual Studio builds</h3>
|
||||
|
||||
<p>The build configuration files for builds using the Microsoft compilers have
|
||||
been updated, although there should be no noticable difference at most sites.
|
||||
One extra compiler warning is now being suppressed for C++ code, <tt>C4344:
|
||||
behavior change: use of explicit template arguments results in ...</tt> which is
|
||||
gratuitous and was appearing frequently in builds of the EPICS V4 modules.</p>
|
||||
|
||||
<p>Cross-builds of the windows-x64 target from a win32-x86 host have been
|
||||
removed as they don't actually work within the context of a single <tt>make</tt>
|
||||
run. Significant changes to the build configuration files would be necessary for
|
||||
these kinds of cross-builds to work properly, which could be done if someone
|
||||
needs them (email Andrew Johnson before working on this, and see
|
||||
<a href="http://stackoverflow.com/questions/5807647/how-do-you-compile-32-bit-and-64-bit-applications-at-the-same-time-in-visual-stu">
|
||||
this stack-overflow answer</a> for a starting point).</p>
|
||||
|
||||
<h3>Bazaar keywords such as 'Revision-Id' removed</h3>
|
||||
|
||||
<p>In preparation for moving to git in place of the Bazaar revision control
|
||||
|
Reference in New Issue
Block a user