]> git.sesse.net Git - vlc/blob - extras/buildsystem/cmake/CMakeLists/root_CMakeLists.txt
Fix various bugs / missing checks for cmake
[vlc] / extras / buildsystem / cmake / CMakeLists / root_CMakeLists.txt
1 PROJECT(vlc)
2
3 cmake_policy(VERSION 2.6)
4 cmake_minimum_required(VERSION 2.6)
5
6 ENABLE_TESTING()
7
8 # Set the module path
9 set(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)
10
11 # Our own include
12 include( vlc_module_funcs )
13
14 # Our config
15 include( config )
16
17 # Global definitions
18 add_definitions(-DHAVE_CONFIG_H)
19 add_definitions(-D__LIBVLC__)
20 # Large file support for Solaris and Linux:
21 add_definitions(-D_FILE_OFFSET_BITS=64 -D__USE_UNIX98 -D_LARGEFILE64_SOURCE)
22 # Thread safety:
23 add_definitions(-D_REENTRANT -D_THREAD_SAFE)
24
25 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu99")
26 set(CMAKE_INCLUDE_CURRENT_DIR ON)
27
28 # Needed for glibc:
29 add_definitions(-D_GNU_SOURCE)
30
31 # Our main include directories
32 include_directories(${CMAKE_SOURCE_DIR}/include ${CMAKE_BINARY_DIR}/include)
33
34 # our sources:
35 add_subdirectory(libs/loader)
36 add_subdirectory(src)
37 add_subdirectory(modules)
38 if(ENABLE_NLS)
39   add_subdirectory(po)
40 endif(ENABLE_NLS)
41 add_subdirectory(test)
42
43 # Enable uninstall
44 configure_file(
45   "${CMAKE_CURRENT_SOURCE_DIR}/extras/buildsystem/cmake/cmake_uninstall.cmake.in"
46   "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
47   IMMEDIATE @ONLY)
48
49 add_custom_target(uninstall
50   "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake")
51
52 # Target to reinstall the CMake files (until cmake gets defaulted)
53 add_custom_target(recmake
54 COMMAND cd ${CMAKE_CURRENT_SOURCE_DIR} && sh "${CMAKE_CURRENT_SOURCE_DIR}/extras/buildsystem/cmake/scripts/convert_vlc_to_cmake.sh")
55
56 # Enable CPack: Automatic package creation
57
58 set(README "${CMAKE_CURRENT_SOURCE_DIR}/README")
59 set(LICENCE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING")
60
61 if(APPLE)
62 set(README "${CMAKE_CURRENT_SOURCE_DIR}/extras/package/macosx/README.MacOSX.rtf")
63 set(LICENCE "") # FIXME: Mac OS X's Package Maker doesn't allow non .*
64 endif(APPLE)
65
66 set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "VLC Media Player")
67 set(CPACK_PACKAGE_VENDOR "VideoLAN Team")
68 set(CPACK_PACKAGE_DESCRIPTION_FILE ${README})
69 set(CPACK_RESOURCE_FILE_LICENSE ${LICENCE})
70 set(CPACK_PACKAGE_VERSION_MAJOR "${VLC_VERSION_MAJOR}")
71 set(CPACK_PACKAGE_VERSION_MINOR "${VLC_VERSION_MINOR}")
72 set(CPACK_PACKAGE_VERSION_PATCH "${VLC_VERSION_PATCH}${VLC_VERSION_EXTRA}")
73
74 include(CPack)