From c32fce07051572460070fb36ce85519565899c92 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Fri, 14 Aug 2009 13:13:36 +0000 Subject: some fixes for netbsd with cmake - CMake, use FIND_PACKAGE(Freetype) for unix/linux - Only link with libdl.so on linux - use statvfs rather then statfs for netbsd (size of statfs wasnt available) - add x11 include path with ghost, glu. --- CMakeLists.txt | 33 +++++++++++++--------------- extern/glew/CMakeLists.txt | 5 +++++ intern/ghost/CMakeLists.txt | 4 +++- intern/guardedalloc/BLO_sys_types.h | 2 +- intern/opennl/superlu/BLO_sys_types.h | 2 +- source/blender/blenlib/intern/storage.c | 8 +++---- source/blender/blenloader/BLO_sys_types.h | 2 +- source/blender/python/intern/bpy_interface.c | 4 ++-- source/blender/windowmanager/CMakeLists.txt | 1 + 9 files changed, 33 insertions(+), 28 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index aa1e26606ba..bb2d336c747 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -114,19 +114,10 @@ IF(UNIX AND NOT APPLE) IF(INTL_LIBRARY AND ICONV_LIBRARY) SET(GETTEXT_LIB ${INTL_LIBRARY} ${ICONV_LIBRARY}) ENDIF(INTL_LIBRARY AND ICONV_LIBRARY) - - FIND_PATH(FREETYPE_INC - freetype - PATHS - /usr/local/include/freetype2 - /usr/include/freetype2 - /sw/include/freetype2 - /opt/local/include/freetype2 - /opt/csw/include/freetype2 - /opt/include/freetype2 - NO_DEFAULT_PATH - ) - SET(FREETYPE_LIB freetype) + + FIND_PACKAGE(Freetype) + SET(FREETYPE_INC "${FREETYPE_INCLUDE_DIR_freetype2}" CACHE STRING "") + SET(FREETYPE_LIB "${FREETYPE_LIBRARY}" CACHE STRING "") FIND_PACKAGE(PythonLibs) SET(PYTHON_INC "${PYTHON_INCLUDE_PATH}" CACHE STRING "") @@ -159,10 +150,10 @@ IF(UNIX AND NOT APPLE) SET(FFMPEG_LIBPATH ${FFMPEG}/lib) IF(WITH_FFTW3) - SET(FFTW3 /usr) - SET(FFTW3_INC ${FFTW3}/include) - SET(FFTW3_LIB fftw3) - SET(FFTW3_LIBPATH ${FFTW3}/lib) + SET(FFTW3 /usr) + SET(FFTW3_INC ${FFTW3}/include) + SET(FFTW3_LIB fftw3) + SET(FFTW3_LIBPATH ${FFTW3}/lib) ENDIF(WITH_FFTW3) SET(LIBSAMPLERATE /usr) @@ -176,7 +167,13 @@ IF(UNIX AND NOT APPLE) FIND_PACKAGE(ZLIB REQUIRED) - SET(LLIBS "-lXi -lutil -lc -lm -lpthread -lstdc++ -lX11 -ldl") + # Could use ${X11_Xinput_LIB} ${X11_X11_LIB} too + SET(LLIBS "-lXi -lutil -lc -lm -lpthread -lstdc++ -lX11") + + IF(CMAKE_SYSTEM_NAME MATCHES "Linux") + # BSD's dont use libdl.so + SET(LLIBS "${LLIBS} -ldl") + ENDIF(CMAKE_SYSTEM_NAME MATCHES "Linux") IF(WITH_OPENMP) SET(LLIBS "${LLIBS} -lgomp") diff --git a/extern/glew/CMakeLists.txt b/extern/glew/CMakeLists.txt index 53ef014927c..eea34488e17 100644 --- a/extern/glew/CMakeLists.txt +++ b/extern/glew/CMakeLists.txt @@ -26,8 +26,13 @@ SET(INC include src) +IF(UNIX) + SET(INC ${INC} ${X11_X11_INCLUDE_PATH}) +ENDIF(UNIX) + SET(SRC src/glew.c ) BLENDERLIB(extern_glew "${SRC}" "${INC}") + diff --git a/intern/ghost/CMakeLists.txt b/intern/ghost/CMakeLists.txt index b559d49958c..3d588ecfd00 100644 --- a/intern/ghost/CMakeLists.txt +++ b/intern/ghost/CMakeLists.txt @@ -24,7 +24,7 @@ # # ***** END GPL LICENSE BLOCK ***** -SET(INC . ../string ${WINTAB_INC}) +SET(INC . ../string) FILE(GLOB SRC intern/*.cpp) @@ -37,6 +37,7 @@ IF(APPLE) LIST(REMOVE_ITEM SRC "${CMAKE_CURRENT_SOURCE_DIR}/intern/GHOST_WindowX11.cpp") ELSE(APPLE) IF(WIN32) + SET(INC ${INC} ${WINTAB_INC}) LIST(REMOVE_ITEM SRC "${CMAKE_CURRENT_SOURCE_DIR}/intern/GHOST_DisplayManagerCarbon.cpp") LIST(REMOVE_ITEM SRC "${CMAKE_CURRENT_SOURCE_DIR}/intern/GHOST_SystemCarbon.cpp") LIST(REMOVE_ITEM SRC "${CMAKE_CURRENT_SOURCE_DIR}/intern/GHOST_WindowCarbon.cpp") @@ -44,6 +45,7 @@ ELSE(APPLE) LIST(REMOVE_ITEM SRC "${CMAKE_CURRENT_SOURCE_DIR}/intern/GHOST_SystemX11.cpp") LIST(REMOVE_ITEM SRC "${CMAKE_CURRENT_SOURCE_DIR}/intern/GHOST_WindowX11.cpp") ELSE(WIN32) + SET(INC ${INC} ${X11_X11_INCLUDE_PATH}) LIST(REMOVE_ITEM SRC "${CMAKE_CURRENT_SOURCE_DIR}/intern/GHOST_DisplayManagerWin32.cpp") LIST(REMOVE_ITEM SRC "${CMAKE_CURRENT_SOURCE_DIR}/intern/GHOST_SystemWin32.cpp") LIST(REMOVE_ITEM SRC "${CMAKE_CURRENT_SOURCE_DIR}/intern/GHOST_WindowWin32.cpp") diff --git a/intern/guardedalloc/BLO_sys_types.h b/intern/guardedalloc/BLO_sys_types.h index 5ed3117c890..e3c64f9746a 100644 --- a/intern/guardedalloc/BLO_sys_types.h +++ b/intern/guardedalloc/BLO_sys_types.h @@ -82,7 +82,7 @@ typedef unsigned long uintptr_t; #define _UINTPTR_T_DEFINED #endif -#elif defined(__linux__) +#elif defined(__linux__) || defined(__NetBSD__) /* Linux-i386, Linux-Alpha, Linux-ppc */ #include diff --git a/intern/opennl/superlu/BLO_sys_types.h b/intern/opennl/superlu/BLO_sys_types.h index 411a8582f96..56a27ec17ce 100644 --- a/intern/opennl/superlu/BLO_sys_types.h +++ b/intern/opennl/superlu/BLO_sys_types.h @@ -83,7 +83,7 @@ typedef unsigned long uintptr_t; #define _UINTPTR_T_DEFINED #endif -#elif defined(__linux__) +#elif defined(__linux__) || defined(__NetBSD__) /* Linux-i386, Linux-Alpha, Linux-ppc */ #include diff --git a/source/blender/blenlib/intern/storage.c b/source/blender/blenlib/intern/storage.c index 0a416e624cb..e6e37c58805 100644 --- a/source/blender/blenlib/intern/storage.c +++ b/source/blender/blenlib/intern/storage.c @@ -47,13 +47,13 @@ #include #include -#if defined (__sun__) || defined (__sun) || defined (__sgi) +#if defined (__sun__) || defined (__sun) || defined (__sgi) || defined (__NetBSD__) #include /* Other modern unix os's should probably use this also */ #elif !defined(__FreeBSD__) && !defined(linux) && (defined(__sparc) || defined(__sparc__)) #include #endif -#if defined (__FreeBSD__) || defined (__OpenBSD__) || defined (__NetBSD__) +#if defined (__FreeBSD__) || defined (__OpenBSD__) #include #include #endif @@ -173,7 +173,7 @@ double BLI_diskfree(char *dir) return (double) (freec*bytesps*sectorspc); #else -#if defined (__sun__) || defined (__sun) || defined (__sgi) +#if defined (__sun__) || defined (__sun) || defined (__sgi) || defined (__NetBSD__) struct statvfs disk; #else struct statfs disk; @@ -195,7 +195,7 @@ double BLI_diskfree(char *dir) if (statfs(name, &disk)) return(-1); #endif -#if defined (__sun__) || defined (__sun) || defined (__sgi) +#if defined (__sun__) || defined (__sun) || defined (__sgi) || defined (__NetBSD__) if (statvfs(name, &disk)) return(-1); #elif !defined(__FreeBSD__) && !defined(linux) && (defined(__sparc) || defined(__sparc__)) /* WARNING - This may not be supported by geeneric unix os's - Campbell */ diff --git a/source/blender/blenloader/BLO_sys_types.h b/source/blender/blenloader/BLO_sys_types.h index 49155260b31..4032f778f4b 100644 --- a/source/blender/blenloader/BLO_sys_types.h +++ b/source/blender/blenloader/BLO_sys_types.h @@ -78,7 +78,7 @@ typedef unsigned long uintptr_t; #define _UINTPTR_T_DEFINED #endif -#elif defined(__linux__) +#elif defined(__linux__) || defined(__NetBSD__) /* Linux-i386, Linux-Alpha, Linux-ppc */ #include diff --git a/source/blender/python/intern/bpy_interface.c b/source/blender/python/intern/bpy_interface.c index ca5f933de80..1af656e560f 100644 --- a/source/blender/python/intern/bpy_interface.c +++ b/source/blender/python/intern/bpy_interface.c @@ -270,7 +270,7 @@ void BPY_start_python( int argc, char **argv ) void BPY_end_python( void ) { - fprintf(stderr, "Ending Python!\n"); + // fprintf(stderr, "Ending Python!\n"); PyGILState_Ensure(); /* finalizing, no need to grab the state */ @@ -296,7 +296,7 @@ void BPY_end_python( void ) printf("\n"); - fprintf(stderr, "Ending Python Done!\n"); + // fprintf(stderr, "Ending Python Done!\n"); #endif diff --git a/source/blender/windowmanager/CMakeLists.txt b/source/blender/windowmanager/CMakeLists.txt index 69ebedbc684..4358eea6f1b 100644 --- a/source/blender/windowmanager/CMakeLists.txt +++ b/source/blender/windowmanager/CMakeLists.txt @@ -40,6 +40,7 @@ SET(INC . ../gpu ../blenfont ${SDL_INC} + ${OPENGL_INCLUDE_DIR} ) IF(WITH_INTERNATIONAL) -- cgit v1.2.3