Added ExternC definition to all libraries

This commit is contained in:
Jorrit Wronski
2015-04-20 00:30:11 +02:00
parent 6af64e89fd
commit f0e02a67f2
2 changed files with 5 additions and 13 deletions

View File

@@ -184,10 +184,6 @@ option (COOLPROP_CDECL_LIBRARY
"Build CoolProp as a 32bit shared library with cdecl"
OFF)
option (COOLPROP_EXTERNC_LIBRARY
"Build CoolProp as a static library with without name mangling"
OFF)
# Overwrite some settings based on the old flags
IF (COOLPROP_STATIC_LIBRARY_MODULE OR COOLPROP_STATIC_LIBRARY)
SET (COOLPROP_STATIC_LIBRARY ON)
@@ -196,7 +192,6 @@ ENDIF()
IF (COOLPROP_EXTERNC_STATIC_LIBRARY)
SET (COOLPROP_STATIC_LIBRARY ON)
SET (COOLPROP_EXTERNC_LIBRARY ON)
SET (COOLPROP_SHARED_LIBRARY OFF)
ENDIF()
@@ -248,6 +243,8 @@ ENDIF()
IF ( COOLPROP_STATIC_LIBRARY OR COOLPROP_SHARED_LIBRARY )
#
LIST(APPEND APP_SOURCES "${CMAKE_SOURCE_DIR}/src/CoolPropLib.cpp")
# Name mangling settings
SET_TARGET_PROPERTIES (${app_name} PROPERTIES APPEND_STRING PROPERTY COMPILE_FLAGS "${COMPILE_FLAGS} -DEXTERNC")
# Static or shared?
IF (COOLPROP_STATIC_LIBRARY)
ADD_LIBRARY(${app_name} STATIC ${APP_SOURCES})
@@ -293,11 +290,6 @@ IF ( COOLPROP_STATIC_LIBRARY OR COOLPROP_SHARED_LIBRARY )
SET_TARGET_PROPERTIES(${app_name} PROPERTIES APPEND_STRING PROPERTY LINK_FLAGS "${LINK_FLAGS} -m${BITNESS}")
ENDIF()
#
# Name mangling settings
IF (COOLPROP_EXTERNC_LIBRARY)
SET_TARGET_PROPERTIES (${app_name} PROPERTIES APPEND_STRING PROPERTY COMPILE_FLAGS "${COMPILE_FLAGS} -DEXTERNC")
ENDIF()
#
# calling conventions
SET_TARGET_PROPERTIES (${app_name} PROPERTIES APPEND_STRING PROPERTY COMPILE_FLAGS "${COMPILE_FLAGS} -DCONVENTION=${CONVENTION}")
#

View File

@@ -438,19 +438,19 @@ def fortranFactory(platform=1,bitness=1):
fortran_folder = "build/wrappers/Fortran/detailed_example" #
#
if platform==platformID["windows"]:
cmake_args = ["-DCOOLPROP_EXTERNC_LIBRARY=ON","-DCOOLPROP_STATIC_LIBRARY=ON","-G", "\"MinGW Makefiles\""]
cmake_args = ["-DCOOLPROP_STATIC_LIBRARY=ON","-G", "\"MinGW Makefiles\""]
cp_cmd = "copy /Y *.f90 ..\\..\\..\\build"
build_cmd = "gfortran -c -Wall cpinterface.f90 cool_fortran_bind.f90"
link_cmd = "gfortran -o main *.o libCoolProp.a -lstdc++"
exec_cmd = "main"
elif platform==platformID["linux"]:
cmake_args = ["-DCOOLPROP_EXTERNC_LIBRARY=ON","-DCOOLPROP_STATIC_LIBRARY=ON"]
cmake_args = ["-DCOOLPROP_STATIC_LIBRARY=ON"]
cp_cmd = "cp *.f90 ../../../build/"
build_cmd = "gfortran -c -Wall cpinterface.f90 cool_fortran_bind.f90"
link_cmd = "gfortran -o main *.o libCoolProp.a -lstdc++ -ldl"
exec_cmd = "./main"
elif platform==platformID["osx"]:
cmake_args = ["-DCOOLPROP_EXTERNC_LIBRARY=ON","-DCOOLPROP_STATIC_LIBRARY=ON",'-DCMAKE_C_COMPILER="/usr/local/bin/gcc-4.9"','-DCMAKE_CXX_COMPILER="/usr/local/bin/g++-4.9"', '-DCMAKE_VERBOSE_MAKEFILE=ON']
cmake_args = ["-DCOOLPROP_STATIC_LIBRARY=ON",'-DCMAKE_C_COMPILER="/usr/local/bin/gcc-4.9"','-DCMAKE_CXX_COMPILER="/usr/local/bin/g++-4.9"', '-DCMAKE_VERBOSE_MAKEFILE=ON']
cp_cmd = "cp *.f90 ../../../build/"
build_cmd = "gfortran -c -Wall cpinterface.f90 cool_fortran_bind.f90"
link_cmd = "g++-4.9 -o main *.o libCoolProp.a -lstdc++ -ldl -lgfortran"