@@ -1089,6 +1089,14 @@ if env["PLATFORM"] != "win32" :
10891089 # deprecation of gluBuild2DMipmaps() in OSX 10.9.
10901090 if osxVersion [0 ] == 10 and osxVersion [1 ] > 7 :
10911091 env .Append ( CXXFLAGS = [ "-Wno-unused-local-typedef" , "-Wno-deprecated-declarations" ] )
1092+ clangVersion = subprocess .check_output ( [ env ["CXX" ], "-dumpversion" ], env = env ["ENV" ], universal_newlines = True ).strip ()
1093+ clangVersion = [ int ( v ) for v in clangVersion .split ( "." ) ]
1094+ # Work around Boost issues with Xcode 15 where `std::unary_function` has been removed.
1095+ if clangVersion >= [ 15 , 0 , 0 ] :
1096+ env .Append ( CXXFLAGS = [ "-DBOOST_NO_CXX98_FUNCTION_BASE" , "-D_HAS_AUTO_PTR_ETC=0" ] )
1097+ # Disable FMA on arm64 builds to limit floating point discrepancies with x86_64 builds.
1098+ if platform .machine () == "arm64" :
1099+ env .Append ( CXXFLAGS = [ "-ffp-contract=off" ] )
10921100
10931101 elif env ["PLATFORM" ]== "posix" :
10941102 if "g++" in os .path .basename ( env ["CXX" ] ) and not "clang++" in os .path .basename ( env ["CXX" ] ) :
@@ -1304,11 +1312,11 @@ if doConfigure :
13041312 Exit ( 1 )
13051313
13061314 for line in open ( str ( boostVersionHeader ) ) :
1307- m = re .compile ( "^#define BOOST_LIB_VERSION \" (.*)\" \s*$" ).match ( line )
1315+ m = re .compile ( r "^#define BOOST_LIB_VERSION \"(.*)\"\s*$" ).match ( line )
13081316 if m :
13091317 boostVersion = m .group ( 1 )
13101318 if boostVersion :
1311- m = re .compile ( "^([0-9]+)_([0-9]+)(?:_([0-9]+)|)$" ).match ( boostVersion )
1319+ m = re .compile ( r "^([0-9]+)_([0-9]+)(?:_([0-9]+)|)$" ).match ( boostVersion )
13121320 boostMajorVersion , boostMinorVersion , boostPatchVersion = m .group ( 1 , 2 , 3 )
13131321 env ["BOOST_MAJOR_VERSION" ] = boostMajorVersion
13141322 env ["BOOST_MINOR_VERSION" ] = boostMinorVersion
@@ -1494,9 +1502,6 @@ pythonModuleEnv = pythonEnv.Clone()
14941502pythonModuleEnv ["SHLIBPREFIX" ] = ""
14951503pythonModuleEnv ["SHLIBSUFFIX" ] = ".so" if env ["PLATFORM" ] != "win32" else ".pyd"
14961504
1497- if pythonModuleEnv ["PLATFORM" ]== "darwin" :
1498- pythonModuleEnv .Append ( SHLINKFLAGS = "-single_module" )
1499-
15001505###########################################################################################
15011506# An environment for running tests
15021507###########################################################################################
@@ -1940,9 +1945,7 @@ if doConfigure :
19401945 imagePythonModuleEnv .Append ( ** imageEnvPrepends )
19411946 imagePythonModuleEnv .Append (
19421947 LIBS = [
1943- os .path .basename ( coreEnv .subst ( "$INSTALL_LIB_NAME" ) ),
19441948 os .path .basename ( imageEnv .subst ( "$INSTALL_LIB_NAME" ) ),
1945- os .path .basename ( corePythonEnv .subst ( "$INSTALL_PYTHONLIB_NAME" ) ),
19461949 ]
19471950 )
19481951 imagePythonModule = imagePythonModuleEnv .SharedLibrary ( "python/IECoreImage/_IECoreImage" , imagePythonSources + imagePythonModuleSources )
@@ -2277,9 +2280,7 @@ if env["WITH_GL"] and doConfigure :
22772280 glPythonModuleEnv .Append ( ** glEnvAppends )
22782281 glPythonModuleEnv .Append (
22792282 LIBS = [
2280- os .path .basename ( coreEnv .subst ( "$INSTALL_LIB_NAME" ) ),
22812283 os .path .basename ( glEnv .subst ( "$INSTALL_LIB_NAME" ) ),
2282- os .path .basename ( corePythonEnv .subst ( "$INSTALL_PYTHONLIB_NAME" ) ),
22832284 os .path .basename ( imageEnv .subst ( "$INSTALL_LIB_NAME" ) ),
22842285 os .path .basename ( sceneEnv .subst ( "$INSTALL_LIB_NAME" ) ),
22852286 ]
0 commit comments