netgen/ng/Togl2.1/CMakeLists.txt
Matthias Hochsteger b694b4667a rework build system, separate gui and non-gui code
move fieldlines code to meshing dir

move visualization function pointers to meshing directory

DLL_HEADER -> NGGUI_API in visualization lib

move soldata.hpp to meshing

update occ, no freetype necessary anymore
2022-05-05 14:39:31 +02:00

46 lines
2.0 KiB
CMake

if(APPLE)
set(CMAKE_C_COMPILER "/usr/bin/gcc")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -x objective-c")
endif(APPLE)
if(WIN32)
set(TOGL_LIBRARY_TYPE SHARED)
else(WIN32)
set(TOGL_LIBRARY_TYPE STATIC)
endif(WIN32)
add_library(togl ${TOGL_LIBRARY_TYPE} togl.c toglProcAddr.c toglStubInit.c)
if(WIN32)
target_compile_definitions(togl PUBLIC -DTOGL_WGL)
else(WIN32)
if(APPLE)
target_compile_definitions(togl PUBLIC -DTOGL_NSOPENGL)
else(APPLE)
target_compile_definitions(togl PUBLIC -DTOGL_X11)
endif(APPLE)
endif(WIN32)
target_link_libraries(togl PUBLIC ${TCL_STUB_LIBRARY} ${TK_STUB_LIBRARY})
target_compile_definitions(togl PRIVATE -DBUILD_togl=1 -DSTDC_HEADERS=1 -DUSE_TCL_STUBS=1 -DUSE_TK_STUBS=1)
if(WIN32)
target_compile_definitions(togl PRIVATE -DUNICODE -D_UNICODE -DTOGL_USE_FONTS=0 -DSTDC_HEADER)
else(WIN32)
target_compile_options(togl PRIVATE -fomit-frame-pointer -Wno-implicit-int)
target_compile_definitions(togl PRIVATE -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=0 -DHAVE_LIMITS_H=1 -DHAVE_SYS_PARAM_H=1 -DUSE_THREAD_ALLOC=1 -D_REENTRANT=1 -D_THREAD_SAFE=1 -DTCL_THREADS=1 -D_LARGEFILE64_SOURCE=1 -DTCL_WIDE_INT_IS_LONG=1)
include_directories(BEFORE "${TCL_INCLUDE_PATH}/tcl-private/generic" "${TCL_INCLUDE_PATH}/tcl-private/unix")
include_directories(BEFORE "${TK_INCLUDE_PATH}/tk-private/generic" "${TK_INCLUDE_PATH}/tk-private/unix" "${TK_INCLUDE_PATH}/tk-private")
include_directories(BEFORE "${TCL_INCLUDE_PATH}/tk-private/generic/ttk")
include_directories(BEFORE "${TK_INCLUDE_PATH}/../PrivateHeaders")
include_directories(BEFORE "${TCL_INCLUDE_PATH}")
include_directories(BEFORE "${TK_INCLUDE_PATH}")
endif(WIN32)
target_include_directories(togl PUBLIC ${OPENGL_INCLUDE_DIR})
target_link_libraries(togl PUBLIC ${OPENGL_LIBRARY})
set_target_properties(togl PROPERTIES POSITION_INDEPENDENT_CODE ON )
install(TARGETS togl DESTINATION ${NG_INSTALL_DIR} COMPONENT netgen)