[cctbxbb] Build constraints in SConscript?

Graeme.Winter at diamond.ac.uk Graeme.Winter at diamond.ac.uk
Fri May 15 01:09:52 PDT 2015


[gw56 at ws133 libtbx]$ svn commit -m "Reverting with extreme prejudice hard coded 10.8 requirement, build no longer works on 10.7 and earlier; please use ENV VAR method to achieve this kind of constraint; reverted revision=22202" SConscript
Sending        SConscript
Transmitting file data .
Committed revision 22223.


Please use MACOSX_DEPLOYMENT_TARGET=(version) locally for your personal requirement, export this before kicking off bootstrap.py

Best wishes Graeme

==================== DIFFS FOLLOW ====================


Revision: 22223
          http://sourceforge.net/p/cctbx/code/22223
Author:   graeme_winter
Date:     2015-05-15 08:06:10 +0000 (Fri, 15 May 2015)
Log Message:
-----------
Reverting with extreme prejudice hard coded 10.8 requirement, build no longer works on 10.7 and earlier; please use ENV VAR method to achieve this kind of constraint; reverted revision=22202

Modified Paths:
--------------
    trunk/libtbx/SConscript

Modified: trunk/libtbx/SConscript
===================================================================
--- trunk/libtbx/SConscript     2015-05-15 02:13:42 UTC (rev 22222)
+++ trunk/libtbx/SConscript     2015-05-15 08:06:10 UTC (rev 22223)
@@ -803,7 +803,7 @@
     env_etc.static_libraries = 1
     env_etc.static_bpl = 0

-    link_flags = ["-w", "-mmacosx-version-min=10.8"] # suppress "source/lib does not exist" warning
+    link_flags = ["-w"] # suppress "source/lib does not exist" warning
     if libtbx.env.build_options.force_32bit:
       if (env_etc.gcc_version and env_etc.gcc_version >= 40201) or env_etc.clang_version:
         link_flags.extend(["-arch", "i386"])
@@ -811,8 +811,7 @@
     env_etc.c_link = "cc"
     env_etc.ccflags_base = [
       "-fPIC",
-      "-fno-strict-aliasing",
-      "-mmacosx-version-min=10.8"]
+      "-fno-strict-aliasing"]
     if env_etc.clang_version:
       setup_clang_warning(env_etc, libtbx.env.build_options.warning_level)
     else:
@@ -828,7 +827,7 @@
       env_etc.ccflags_base.extend(["-no-cpp-precomp"])
       if (env_etc.gcc_version < 40201):
         env_etc.ccflags_base.append("-Wno-long-double")
-    env_etc.cxxflags_base = ["-mmacosx-version-min=10.8"]
+    env_etc.cxxflags_base = []
     if env_etc.clang_version is None and env_etc.gcc_version < 40000:
       env_etc.cxxflags_base.append("-fcoalesce-templates")
     env_etc.cxxflags_base.append("-DBOOST_ALL_NO_LIB")
@@ -861,11 +860,10 @@
         if env_etc.apple_gcc_builds.gcc < 5646:
           # fixed on 10.6 (Snow Leopard) whose Dev Tools start with that build
           opts.insert(0, "-gstabs+")
-    env_etc.shlinkflags = ["-mmacosx-version-min=10.8"]
+    env_etc.shlinkflags = []
     env_etc.shlinkflags_bpl = [
       "-w", # suppress "source/lib does not exist" warning
-      "-bundle", "-mmacosx-version-min=10.8",
-      "-undefined", "dynamic_lookup"]
+      "-bundle", "-undefined", "dynamic_lookup"]
     if libtbx.env.build_options.force_32bit:
       if (env_etc.gcc_version and env_etc.gcc_version >= 40201) or env_etc.clang_version:
         env_etc.ccflags_base.extend(["-arch", "i386"])




From: Graeme.Winter at diamond.ac.uk [mailto:Graeme.Winter at diamond.ac.uk]
Sent: 15 May 2015 09:01
To: cctbxbb at phenix-online.org; robert at oeffner.net
Cc: dials-support at lists.sourceforge.net; dials-dev at cci.lbl.gov
Subject: Build constraints in SConscript?

Hi Folks

A while back we worked on making DIALS work right built on 10.10 but executed on 10.6 or later - this is very useful as lots of people have 10.6/7 macs & are not keen to update. This is done by the very flexible mechanism of exporting an environment variable prior to compilation

Then this commit appears

     env_etc.static_bpl = 0
@@ -802,7 +803,7 @@
     env_etc.static_libraries = 1
     env_etc.static_bpl = 0

-    link_flags = ["-w"] # suppress "source/lib does not exist" warning
+    link_flags = ["-w", "-mmacosx-version-min=10.8"] # suppress "source/lib does not exist" warning
     if libtbx.env.build_options.force_32bit:
       if (env_etc.gcc_version and env_etc.gcc_version >= 40201) or env_etc.clang_version:
         link_flags.extend(["-arch", "i386"])
@@ -810,7 +811,8 @@
     env_etc.c_link = "cc"
     env_etc.ccflags_base = [
       "-fPIC",
-      "-fno-strict-aliasing"]
+      "-fno-strict-aliasing",
+      "-mmacosx-version-min=10.8"]
     if env_etc.clang_version:
       setup_clang_warning(env_etc, libtbx.env.build_options.warning_level)
     else:
@@ -826,7 +828,7 @@
       env_etc.ccflags_base.extend(["-no-cpp-precomp"])
       if (env_etc.gcc_version < 40201):
         env_etc.ccflags_base.append("-Wno-long-double")
-    env_etc.cxxflags_base = []
+    env_etc.cxxflags_base = ["-mmacosx-version-min=10.8"]
     if env_etc.clang_version is None and env_etc.gcc_version < 40000:
       env_etc.cxxflags_base.append("-fcoalesce-templates")
     env_etc.cxxflags_base.append("-DBOOST_ALL_NO_LIB")
@@ -859,10 +861,10 @@

to

Modified Paths:
--------------
    trunk/libtbx/SConscript

and now our build no longer works on 10.7. This is *really* annoying. The head of the commit message follows below.

Please could someone fix this? The environment variable method is *far* better, works for the dependencies and also allows dials to work on older machines. You broke our build. Before this it worked fine.

(we can't automate this test as we are not supposed to deploy out of support machines on lab network, so this was missed)

Thanks Graeme

effner
 to cctbx-cvs
[https://ssl.gstatic.com/bt/C3341AA7A1A076756462EE2E5CD71C11/2x/ic_expand_small_2x.png]
May 13
Revision: 22202
          http://sourceforge.net/p/cctbx/code/22202
Author:   oeffner
Date:     2015-05-13 15:48:24 +0000 (Wed, 13 May 2015)
Log Message:
-----------
ensure installers can run on MacOSX 10.8 or higher






--

This e-mail and any attachments may contain confidential, copyright and or privileged material, and are for the use of the intended addressee only. If you are not the intended addressee or an authorised recipient of the addressee please notify us of receipt by returning the e-mail and do not use, copy, retain, distribute or disclose the information in or attached to the e-mail.
Any opinions expressed within this e-mail are those of the individual and not necessarily of Diamond Light Source Ltd.
Diamond Light Source Ltd. cannot guarantee that this e-mail or any attachments are free from viruses and we cannot accept liability for any damage which you may sustain as a result of software viruses which may be transmitted in or with the message.
Diamond Light Source Limited (company no. 4375679). Registered in England and Wales with its registered office at Diamond House, Harwell Science and Innovation Campus, Didcot, Oxfordshire, OX11 0DE, United Kingdom

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://phenix-online.org/pipermail/cctbxbb/attachments/20150515/be79b9bd/attachment-0001.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.png
Type: image/png
Size: 146 bytes
Desc: image001.png
URL: <http://phenix-online.org/pipermail/cctbxbb/attachments/20150515/be79b9bd/attachment-0001.png>


More information about the cctbxbb mailing list