changeset 83677ded6358 in /z/repo/gem5 details: http://repo.gem5.org/gem5?cmd=changeset;node=83677ded6358 description: scons: make build better on FreeBSD
Various changes we found needed to build gem5 successfully on FreeBSD. Reviewed at http://reviews.gem5.org/r/3378/ Signed-off-by: Jason Lowe-Power <ja...@lowepower.com> diffstat: SConstruct | 20 ++++++++++++++++++-- 1 files changed, 18 insertions(+), 2 deletions(-) diffs (51 lines): diff -r de0de48a2d1c -r 83677ded6358 SConstruct --- a/SConstruct Thu Feb 09 18:59:55 2017 -0500 +++ b/SConstruct Thu Feb 09 19:00:00 2017 -0500 @@ -655,6 +655,9 @@ '-Wno-sign-compare', '-Wno-unused-parameter']) # We always compile using C++11 main.Append(CXXFLAGS=['-std=c++11']) + if sys.platform.startswith('freebsd'): + main.Append(CCFLAGS=['-I/usr/local/include']) + main.Append(CXXFLAGS=['-I/usr/local/include']) else: print termcap.Yellow + termcap.Bold + 'Error' + termcap.Normal, print "Don't know what compiler options to use for your compiler." @@ -771,6 +774,10 @@ main.Append(CXXFLAGS=['-stdlib=libc++']) main.Append(LIBS=['c++']) + # On FreeBSD we need libthr. + if sys.platform.startswith('freebsd'): + main.Append(LIBS=['thr']) + else: print termcap.Yellow + termcap.Bold + 'Error' + termcap.Normal, print "Don't know what compiler options to use for your compiler." @@ -884,8 +891,12 @@ # Check for 'timeout' from GNU coreutils. If present, regressions will # be run with a time limit. We require version 8.13 since we rely on # support for the '--foreground' option. -timeout_lines = readCommand(['timeout', '--version'], - exception='').splitlines() +if sys.platform.startswith('freebsd'): + timeout_lines = readCommand(['gtimeout', '--version'], + exception='').splitlines() +else: + timeout_lines = readCommand(['timeout', '--version'], + exception='').splitlines() # Get the first line and tokenize it timeout_version = timeout_lines[0].split() if timeout_lines else [] main['TIMEOUT'] = timeout_version and \ @@ -1083,6 +1094,11 @@ if conf.CheckLibWithHeader(None, 'execinfo.h', 'C', 'backtrace_symbols_fd((void*)0, 0, 0);'): backtrace_impls.append("glibc") +elif conf.CheckLibWithHeader('execinfo', 'execinfo.h', 'C', + 'backtrace_symbols_fd((void*)0, 0, 0);'): + # NetBSD and FreeBSD need libexecinfo. + backtrace_impls.append("glibc") + main.Append(LIBS=['execinfo']) if backtrace_impls[-1] == "none": default_backtrace_impl = "none" _______________________________________________ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev