$OpenBSD: patch-Modules_Platform_OpenBSD_cmake,v 1.1.1.1 2006/07/20 09:23:13 espie Exp $ --- Modules/Platform/OpenBSD.cmake.orig Wed May 17 15:48:52 2006 +++ Modules/Platform/OpenBSD.cmake Mon Jul 3 14:45:04 2006 @@ -1,2 +1,37 @@ -SET(CMAKE_DL_LIBS "") -INCLUDE(Platform/UnixPaths) +IF(EXISTS /usr/include/dlfcn.h) + SET(CMAKE_DL_LIBS "") + SET(CMAKE_SHARED_LIBRARY_C_FLAGS "-fPIC") # -pic + SET(CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS "-shared") # -shared + SET(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS "") # +s, flag for exe link to use shared lib + SET(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG "-Wl,-rpath,") # -rpath + SET(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG_SEP ":") # : or empty +# XXX we set these so that they will be detected + SET(CMAKE_SHARED_LIBRARY_SONAME_C_FLAG "-Wl,-soname,") + SET(CMAKE_SHARED_LIBRARY_SONAME_CXX_FLAG "-Wl,-soname,") +ENDIF(EXISTS /usr/include/dlfcn.h) + +IF($ENV{LOCALBASE}) +SET(OPENBSD_LOCALBASE $ENV{LOCALBASE}) +ELSE($ENV{LOCALBASE}) +SET(OPENBSD_LOCALBASE /usr/local) +ENDIF($ENV{LOCALBASE}) +IF($ENV{X11BASE}) +SET(OPENBSD_X11BASE $ENV{X11BASE}) +ELSE($ENV{X11BASE}) +SET(OPENBSD_X11BASE /usr/X11R6) +ENDIF($ENV{X11BASE}) +SET(CMAKE_OPENBSD_SHARED_LIBS "TRUE") + +SET(CMAKE_SYSTEM_INCLUDE_PATH ${CMAKE_SYSTEM_INCLUDE_PATH} /usr/include + ${OPENBSD_LOCALBASE}/include ${OPENBSD_X11BASE}/include) +SET(CMAKE_SYSTEM_LIBRARY_PATH ${CMAKE_SYSTEM_LIBRARY_PATH} /usr/lib + ${OPENBSD_LOCALBASE}/lib ${OPENBSD_X11BASE}/lib) +SET(CMAKE_SYSTEM_PROGRAM_PATH ${CMAKE_SYSTEM_PROGRAM_PATH} /bin /usr/bin + ${OPENBSD_LOCALBASE}/bin /sbin /usr/sbin ${OPENBSD_LOCALBASE}/sbin) +# somewhat klugy, but produces the correct names. +SET(CMAKE_CXX_CREATE_SHARED_LIBRARY + " -o ") +SET(CMAKE_C_CREATE_SHARED_LIBRARY + " -o ") +SET(CMAKE_Fortran_CREATE_SHARED_LIBRARY + " -o ")