~ubuntu-branches/ubuntu/utopic/hedgewars/utopic

« back to all changes in this revision

Viewing changes to cmake_modules/paths.cmake

  • Committer: Package Import Robot
  • Author(s): Gianfranco Costamagna
  • Date: 2014-01-02 12:37:23 UTC
  • mfrom: (19.1.5 sid)
  • Revision ID: package-import@ubuntu.com-20140102123723-6pdhmyj8tb5y8xbg
Tags: 0.9.20.3-1
New upstream minor release, suitable for unstable

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#where to build libs and bins
 
2
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)
 
3
set(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)
 
4
#these variables are for non-makefile generators
 
5
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
 
6
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG ${EXECUTABLE_OUTPUT_PATH})
 
7
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE ${EXECUTABLE_OUTPUT_PATH})
 
8
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${LIBRARY_OUTPUT_PATH})
 
9
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG ${LIBRARY_OUTPUT_PATH})
 
10
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_RELEASE ${LIBRARY_OUTPUT_PATH})
 
11
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${LIBRARY_OUTPUT_PATH})
 
12
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE ${LIBRARY_OUTPUT_PATH})
 
13
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY_DEBUG ${LIBRARY_OUTPUT_PATH})
 
14
 
 
15
#resource paths
 
16
if(UNIX AND NOT APPLE)
 
17
    set(target_binary_install_dir "bin" CACHE PATH "install dest for binaries")
 
18
    set(target_library_install_dir "lib" CACHE PATH "install dest for libs")
 
19
 
 
20
    string(SUBSTRING "${DATA_INSTALL_DIR}" 0 1 sharepath_start)
 
21
    if (NOT (${sharepath_start} MATCHES "/"))
 
22
        set(HEDGEWARS_DATADIR "${CMAKE_INSTALL_PREFIX}/${DATA_INSTALL_DIR}/")
 
23
    else()
 
24
        set(HEDGEWARS_DATADIR "${DATA_INSTALL_DIR}/")
 
25
    endif()
 
26
    set(HEDGEWARS_FULL_DATADIR "${HEDGEWARS_DATADIR}")
 
27
else()
 
28
    set(target_binary_install_dir "./")
 
29
 
 
30
    if(APPLE)
 
31
        set(target_library_install_dir "../Frameworks/")
 
32
        set(CMAKE_INSTALL_PREFIX "Hedgewars.app/Contents/MacOS/")
 
33
        set(HEDGEWARS_DATADIR "../Resources/")
 
34
        set(HEDGEWARS_FULL_DATADIR "/Applications/${CMAKE_INSTALL_PREFIX}/${HEDGEWARS_DATADIR}")
 
35
    elseif(WIN32)
 
36
        set(target_library_install_dir "./")
 
37
        set(HEDGEWARS_DATADIR "./")
 
38
        set(HEDGEWARS_FULL_DATADIR "${CMAKE_INSTALL_PREFIX}/")
 
39
        link_directories("${EXECUTABLE_OUTPUT_PATH}" "${CMAKE_SOURCE_DIR}/misc/winutils/bin")
 
40
    endif()
 
41
endif()
 
42
 
 
43
 
 
44
#RPATH SETTINGS
 
45
#necessary for dynamic libraries on UNIX, ignored elsewhere
 
46
 
 
47
#use, i.e. don't skip the full RPATH for the build tree
 
48
set(CMAKE_SKIP_BUILD_RPATH FALSE)
 
49
set(CMAKE_SKIP_INSTALL_RPATH FALSE)
 
50
 
 
51
#it's safe to use our RPATH because it is relative
 
52
set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
 
53
 
 
54
#add the automatically determined parts of the RPATH
 
55
#which point to directories outside the build tree to the install RPATH
 
56
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH FALSE)
 
57
 
 
58
if(APPLE)
 
59
    #@rpath mangling
 
60
    set(CMAKE_INSTALL_RPATH "@executable_path/../Frameworks")
 
61
    #install_name_tool for libraries
 
62
    set(CMAKE_INSTALL_NAME_DIR "@executable_path/../Frameworks")
 
63
else(APPLE)
 
64
    #paths where to find libraries (final slash not optional):
 
65
    # - the first is relative to the executable
 
66
    # - the second is the same directory of the executable (so it runs in bin/)
 
67
    # - the third one is the full path of the system dir
 
68
    #source http://www.cmake.org/pipermail/cmake/2008-January/019290.html
 
69
    set(CMAKE_INSTALL_RPATH "$ORIGIN/../${target_library_install_dir}/:$ORIGIN/:${CMAKE_INSTALL_PREFIX}/${target_library_install_dir}/")
 
70
endif(APPLE)