aboutsummaryrefslogtreecommitdiff
path: root/data/CMakeLists.txt
blob: 859f9a6090aaf94432e8bdc7dcb747a200552557 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#
# files containing dictionary of useful projection
#

set(PROJ_DICTIONARY  world
                     other.extra
                     nad27
                     GL27
                     nad83
                     nad.lst
                     CH
                     ITRF2000
                     ITRF2008
                     ITRF2014 )

#
# gridshift file
#

file(GLOB GSB_FILES  *.gsb)
file(GLOB GTX_FILES  *.gtx)
set(GRIDSHIFT_FILES ${GSB_FILES} ${GTX_FILES})
set(GRIDSHIFT_FILES ${GRIDSHIFT_FILES}
                     )
option(CONVERT_DATA "convert some ascii file to binary file for use in proj4" OFF)
if(CONVERT_DATA)
    if (BUILD_NAD2BIN)
       set(LLA_GRID_DIR ${CMAKE_CURRENT_SOURCE_DIR})
       proj_convert_grid_lla2gsb(LLA_GRID_DIR)
       file(GLOB LLA_FILES  *.lla)
       proj_append_lla_output_file(LLA_FILES GRIDSHIFT_FILES)
    else()
       message(ERROR " you need to compile nad2bin exe in order to convert data file" )
    endif(BUILD_NAD2BIN)
endif(CONVERT_DATA)

set(ALL_SQL_IN "${CMAKE_CURRENT_SOURCE_DIR}/all.sql.in")
set(PROJ_DB "${CMAKE_CURRENT_SOURCE_DIR}/proj.db")
include(sql_filelist.cmake)

add_custom_command(OUTPUT ${ALL_SQL_IN}
    COMMAND ${CMAKE_COMMAND} -P "${CMAKE_CURRENT_SOURCE_DIR}/generate_all_sql_in.cmake"
    WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
    DEPENDS ${SQL_FILES}
    COMMENT "Generating all.sql.in"
    VERBATIM
)

add_custom_target(generate_all_sql_in ALL DEPENDS ${ALL_SQL_IN})

add_custom_command(OUTPUT ${PROJ_DB}
    COMMAND ${CMAKE_COMMAND} -E remove -f ${PROJ_DB}
    COMMAND ${EXE_SQLITE3} -init ${ALL_SQL_IN} ${PROJ_DB} .quit
    # note: we didn't port yet the foreign_key_check done in Makefile.am
    DEPENDS generate_all_sql_in ${ALL_SQL_IN}
    COMMENT "Generating proj.db"
    VERBATIM
)

add_custom_target(generate_proj_db ALL DEPENDS ${PROJ_DB})

#
#install
#
set(ALL_DATA_FILE ${PROJ_DICTIONARY}
                  ${GRIDSHIFT_FILES}
                  ${GEOID_FILES} "proj.db")
install(FILES ${ALL_DATA_FILE}
        DESTINATION ${DATADIR})