DRTVWR-418: Until we figure out how to say FIXED:NO to linker, don't.

The present CMake logic wants to pass FIXED:NO to the linker for 64-bit
builds, which on the face of it seems like a Good Thing: it permits code to be
relocated in memory, preventing collisions if two libraries happen to want to
load into overlapping address ranges.

However the way it's being specified is wrong and harmful. Passing /FIXED:NO
to the compiler command line engages /FI (Forced Include!) of a nonexistent
file XED:NO -- producing lots of baffling fatal compile errors.

Thanks Callum for diagnosing this!
meow-7.2.2
Nat Goodspeed 2016-12-01 08:50:10 -05:00
parent 68d98acb92
commit 8a461c00f4
7 changed files with 7 additions and 7 deletions

View File

@ -247,7 +247,7 @@ if(LLCOMMON_LINK_SHARED)
add_library (llcommon SHARED ${llcommon_SOURCE_FILES})
if(NOT ADDRESS_SIZE EQUAL 32)
if(WINDOWS)
add_definitions(/FIXED:NO)
##add_definitions(/FIXED:NO)
else(WINDOWS) # not windows therefore gcc LINUX and DARWIN
add_definitions(-fPIC)
endif(WINDOWS)

View File

@ -58,7 +58,7 @@ set_source_files_properties(${llplugin_HEADER_FILES}
if(NOT ADDRESS_SIZE EQUAL 32)
if(WINDOWS)
add_definitions(/FIXED:NO)
##add_definitions(/FIXED:NO)
else(WINDOWS) # not windows therefore gcc LINUX and DARWIN
add_definitions(-fPIC)
endif(WINDOWS)

View File

@ -30,7 +30,7 @@ include_directories(SYSTEM
if(NOT ADDRESS_SIZE EQUAL 32)
if(WINDOWS)
add_definitions(/FIXED:NO)
##add_definitions(/FIXED:NO)
else(WINDOWS) # not windows therefore gcc LINUX and DARWIN
add_definitions(-fPIC)
endif(WINDOWS)

View File

@ -36,7 +36,7 @@ include_directories(SYSTEM
if(NOT ADDRESS_SIZE EQUAL 32)
if(WINDOWS)
add_definitions(/FIXED:NO)
##add_definitions(/FIXED:NO)
else(WINDOWS) # not windows therefore gcc LINUX and DARWIN
add_definitions(-fPIC)
endif(WINDOWS)

View File

@ -34,7 +34,7 @@ include_directories(SYSTEM
if(NOT ADDRESS_SIZE EQUAL 32)
if(WINDOWS)
add_definitions(/FIXED:NO)
##add_definitions(/FIXED:NO)
else(WINDOWS) # not windows therefore gcc LINUX and DARWIN
add_definitions(-fPIC)
endif(WINDOWS)

View File

@ -35,7 +35,7 @@ include_directories(SYSTEM
if(NOT ADDRESS_SIZE EQUAL 32)
if(WINDOWS)
add_definitions(/FIXED:NO)
##add_definitions(/FIXED:NO)
else(WINDOWS) # not windows therefore gcc LINUX and DARWIN
add_definitions(-fPIC)
endif(WINDOWS)

View File

@ -35,7 +35,7 @@ include_directories(SYSTEM
if(NOT ADDRESS_SIZE EQUAL 32)
if(WINDOWS)
add_definitions(/FIXED:NO)
##add_definitions(/FIXED:NO)
else(WINDOWS) # not windows therefore gcc LINUX and DARWIN
add_definitions(-fPIC)
endif(WINDOWS)