From 75ce98125baa42cb8f5a64c1329f946061a28c9b Mon Sep 17 00:00:00 2001 From: lloyd Date: Fri, 13 Nov 2009 23:35:16 +0000 Subject: Use GCC 4.5 snapshot for C++0x build --- src/build-data/cc/gcc.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/build-data/cc/gcc.txt') diff --git a/src/build-data/cc/gcc.txt b/src/build-data/cc/gcc.txt index c4b5b9fbc..82c1a983d 100644 --- a/src/build-data/cc/gcc.txt +++ b/src/build-data/cc/gcc.txt @@ -1,6 +1,6 @@ macro_name "GCC" -binary_name "g++-4.4.1" +binary_name "g++-4.5-20091112" compiler_has_tr1 yes -- cgit v1.2.3 From 5ef971f34aced376e385a7ac301e0db96fbef0d4 Mon Sep 17 00:00:00 2001 From: lloyd Date: Fri, 13 Nov 2009 23:38:01 +0000 Subject: Remove TR1 hooks - can be assumed to exist under a C++0x compiler --- configure.py | 44 ++++++-------------------------------------- src/build-data/cc/gcc.txt | 2 -- src/build-data/cc/icc.txt | 2 -- src/cert/cvc/info.txt | 2 -- src/math/gfpmath/info.txt | 4 +--- 5 files changed, 7 insertions(+), 47 deletions(-) (limited to 'src/build-data/cc/gcc.txt') diff --git a/configure.py b/configure.py index 5e2e4004d..d48396c8a 100755 --- a/configure.py +++ b/configure.py @@ -174,10 +174,6 @@ def process_command_line(args): default=False, action='store_true', help='enable Boost.Python wrapper') - build_group.add_option('--with-tr1-implementation', metavar='WHICH', - dest='with_tr1', default=None, - help='enable TR1 (options: none, system, boost)') - build_group.add_option('--with-build-dir', metavar='DIR', default='', help='setup the build in DIR') @@ -368,7 +364,6 @@ class ModuleInfo(object): { 'load_on': 'auto', 'define': None, 'modset': None, - 'uses_tr1': 'false', 'need_isa': None, 'note': '', 'mp_bits': 0 }) @@ -399,11 +394,6 @@ class ModuleInfo(object): self.mp_bits = int(self.mp_bits) - if self.uses_tr1 == 'yes': - self.uses_tr1 = True - else: - self.uses_tr1 = False - def compatible_cpu(self, archinfo, options): arch_name = archinfo.basename @@ -423,9 +413,7 @@ class ModuleInfo(object): def compatible_os(self, os): return self.os == [] or os in self.os - def compatible_compiler(self, cc, with_tr1): - if self.uses_tr1 and with_tr1 not in ['boost', 'system']: - return False + def compatible_compiler(self, cc): return self.cc == [] or cc in self.cc def dependencies(self): @@ -538,8 +526,7 @@ class CompilerInfo(object): 'dll_import_flags': '', 'dll_export_flags': '', 'ar_command': None, - 'makefile_style': '', - 'compiler_has_tr1': False, + 'makefile_style': '' }) self.so_link_flags = force_to_dict(self.so_link_flags) @@ -617,19 +604,8 @@ class CompilerInfo(object): """ Return defines for build.h """ - def defines(self, with_tr1): - - def tr1_macro(): - if with_tr1: - if with_tr1 == 'boost': - return ['USE_BOOST_TR1'] - elif with_tr1 == 'system': - return ['USE_STD_TR1'] - elif self.compiler_has_tr1: - return ['USE_STD_TR1'] - return [] - - return ['BUILD_COMPILER_IS_' + self.macro_name] + tr1_macro() + def defines(self): + return ['BUILD_COMPILER_IS_' + self.macro_name] class OsInfo(object): def __init__(self, infofile): @@ -843,8 +819,7 @@ def create_template_vars(build_config, options, modules, cc, arch, osinfo): 'target_os_defines': make_cpp_macros(osinfo.defines()), - 'target_compiler_defines': make_cpp_macros( - cc.defines(options.with_tr1)), + 'target_compiler_defines': make_cpp_macros(cc.defines()), 'target_cpu_defines': make_cpp_macros(arch.defines(options)), @@ -920,8 +895,7 @@ def choose_modules_to_use(modules, archinfo, options): cannot_use_because(modname, 'CPU incompatible') elif not module.compatible_os(options.os): cannot_use_because(modname, 'OS incompatible') - elif not module.compatible_compiler(options.compiler, - options.with_tr1): + elif not module.compatible_compiler(options.compiler): cannot_use_because(modname, 'compiler incompatible') else: @@ -1220,12 +1194,6 @@ def main(argv = None): logging.info('Setting -fpermissive to work around gcc bug') options.extra_flags = ' -fpermissive' - if options.with_tr1 == None: - if ccinfo[options.compiler].compiler_has_tr1: - options.with_tr1 = 'system' - else: - options.with_tr1 = 'none' - modules_to_use = choose_modules_to_use(modules, archinfo[options.arch], options) diff --git a/src/build-data/cc/gcc.txt b/src/build-data/cc/gcc.txt index 82c1a983d..d1b76edec 100644 --- a/src/build-data/cc/gcc.txt +++ b/src/build-data/cc/gcc.txt @@ -2,8 +2,6 @@ macro_name "GCC" binary_name "g++-4.5-20091112" -compiler_has_tr1 yes - compile_option "-c " output_to_option "-o " add_include_dir_option "-I" diff --git a/src/build-data/cc/icc.txt b/src/build-data/cc/icc.txt index b5cad542c..7187cae56 100644 --- a/src/build-data/cc/icc.txt +++ b/src/build-data/cc/icc.txt @@ -2,8 +2,6 @@ macro_name "INTEL" binary_name "icpc" -compiler_has_tr1 yes - compile_option "-c " output_to_option "-o " add_include_dir_option "-I" diff --git a/src/cert/cvc/info.txt b/src/cert/cvc/info.txt index bdd496614..ff7e04c07 100644 --- a/src/cert/cvc/info.txt +++ b/src/cert/cvc/info.txt @@ -1,7 +1,5 @@ define CARD_VERIFIABLE_CERTIFICATES -uses_tr1 yes - load_on auto diff --git a/src/math/gfpmath/info.txt b/src/math/gfpmath/info.txt index abbdb0a47..e1bf892c7 100644 --- a/src/math/gfpmath/info.txt +++ b/src/math/gfpmath/info.txt @@ -1,9 +1,7 @@ -uses_tr1 yes +define BIGINT_GFP load_on auto -define BIGINT_GFP - curve_gfp.cpp curve_gfp.h -- cgit v1.2.3 From 435965ac3b199d31b799ebefc012d928bc415621 Mon Sep 17 00:00:00 2001 From: lloyd Date: Tue, 17 Nov 2009 00:08:44 +0000 Subject: Use -pthread on all platforms. This is necessary to get functioning support for std::thread, and to ensure that std::mutex actually maps to a real mutex and not a no-op. Don't explicitly define _REENTRANT; -pthread will handle that if necessary. --- src/build-data/cc/gcc.txt | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'src/build-data/cc/gcc.txt') diff --git a/src/build-data/cc/gcc.txt b/src/build-data/cc/gcc.txt index d1b76edec..0b1668908 100644 --- a/src/build-data/cc/gcc.txt +++ b/src/build-data/cc/gcc.txt @@ -8,7 +8,7 @@ add_include_dir_option "-I" add_lib_dir_option "-L" add_lib_option "-l" -lang_flags "-D_REENTRANT -ansi -Wno-long-long -std=c++0x" +lang_flags "-ansi -Wno-long-long -std=c++0x" warning_flags "-W -Wall" #warning_flags "-Wextra -Wall -Wstrict-aliasing -Wstrict-overflow=5 -Wcast-align -Wmissing-declarations -Wno-unused-parameter" @@ -70,6 +70,8 @@ ppc64 -> "-mcpu=SUBMODEL" ppc # Note that the 'linking' bit means "use this for both compiling *and* linking" +all -> "-pthread" + amd64 -> "-m64" mips64 -> "-mabi=64" s390 -> "-m31" @@ -78,10 +80,6 @@ sparc32 -> "-m32 -mno-app-regs" sparc64 -> "-m64 -mno-app-regs" ppc64 -> "-m64" -# This should probably be used on most/all targets, but the docs are incomplete -openbsd -> "-pthread" -freebsd -> "-pthread" -dragonfly -> "-pthread" -netbsd -> "-pthread -D_NETBSD_SOURCE" +netbsd -> "-D_NETBSD_SOURCE" qnx -> "-fexceptions -D_QNX_SOURCE" -- cgit v1.2.3 From fdc97d0ce2e7f45c07e263a1deca7a33029d33f2 Mon Sep 17 00:00:00 2001 From: lloyd Date: Mon, 28 Dec 2009 14:51:36 +0000 Subject: Switch to newly installed gcc snapshot (svn r155312). Don't need -Wno-long-long anymore, C++0x always has long long. --- src/build-data/cc/gcc.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/build-data/cc/gcc.txt') diff --git a/src/build-data/cc/gcc.txt b/src/build-data/cc/gcc.txt index 95340f5c0..036153e47 100644 --- a/src/build-data/cc/gcc.txt +++ b/src/build-data/cc/gcc.txt @@ -1,6 +1,6 @@ macro_name GCC -binary_name g++-4.5-20091112 +binary_name g++-4.5-r155312 compile_option "-c " output_to_option "-o " @@ -8,7 +8,7 @@ add_include_dir_option -I add_lib_dir_option -L add_lib_option -l -lang_flags "-ansi -Wno-long-long -std=c++0x" +lang_flags "-ansi -std=c++0x" warning_flags "-W -Wall" #warning_flags "-Wextra -Wall -Wstrict-aliasing -Wstrict-overflow=5 -Wcast-align -Wmissing-declarations -Wno-unused-parameter" -- cgit v1.2.3 From 9c92ceb2b3bcc9537b4fe572f771d7bbaf8a478a Mon Sep 17 00:00:00 2001 From: lloyd Date: Thu, 21 Jan 2010 16:41:48 +0000 Subject: Set C++0x for ICC. Use GCC-4.5 binary --- src/build-data/cc/gcc.txt | 2 +- src/build-data/cc/icc.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'src/build-data/cc/gcc.txt') diff --git a/src/build-data/cc/gcc.txt b/src/build-data/cc/gcc.txt index 036153e47..1b9f51620 100644 --- a/src/build-data/cc/gcc.txt +++ b/src/build-data/cc/gcc.txt @@ -1,6 +1,6 @@ macro_name GCC -binary_name g++-4.5-r155312 +binary_name g++-4.5 compile_option "-c " output_to_option "-o " diff --git a/src/build-data/cc/icc.txt b/src/build-data/cc/icc.txt index c3a5130bb..1aab4d111 100644 --- a/src/build-data/cc/icc.txt +++ b/src/build-data/cc/icc.txt @@ -12,7 +12,7 @@ lib_opt_flags "-O2 -ip -unroll" check_opt_flags "-O2" debug_flags -g no_debug_flags "-fomit-frame-pointer" -lang_flags "" +lang_flags "-std=c++0x" warning_flags "-w1" shared_flags "-fPIC" -- cgit v1.2.3