]> git.openstreetmap.org Git - nominatim.git/blobdiff - CMakeLists.txt
Merge remote-tracking branch 'upstream/master'
[nominatim.git] / CMakeLists.txt
index 691c9adcaafad309533699558a0d7dc33af85b25..fdc67ffe86c6c393aa77c74abed0b0c3f319f24b 100644 (file)
@@ -6,7 +6,7 @@
 #
 #-----------------------------------------------------------------------------
 
-cmake_minimum_required(VERSION 2.8 FATAL_ERROR)
+cmake_minimum_required(VERSION 3.0 FATAL_ERROR)
 list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
 
 
@@ -128,6 +128,27 @@ if (BUILD_IMPORTER)
                   ${PROJECT_BINARY_DIR}/nominatim)
 endif()
 
+#-----------------------------------------------------------------------------
+# Targets for running a development webserver from the build directory.
+#-----------------------------------------------------------------------------
+
+if (BUILD_API)
+   set(WEBSITEFILES
+       403.html
+       509.html
+       crossdomain.xml
+       favicon.ico
+       nominatim.xml
+       robots.txt
+       taginfo.json
+   )
+
+   foreach (webfile ${WEBSITEFILES})
+       configure_file(${PROJECT_SOURCE_DIR}/website/${webfile}
+                      ${PROJECT_BINARY_DIR}/website/${webfile})
+   endforeach()
+endif()
+
 #-----------------------------------------------------------------------------
 # Tests
 #-----------------------------------------------------------------------------
@@ -177,7 +198,7 @@ if (BUILD_TESTS)
     if (PYLINT)
         message(STATUS "Using pylint binary ${PYLINT}")
         add_test(NAME pylint
-                 COMMAND ${PYLINT} --extension-pkg-whitelist=osmium nominatim
+                 COMMAND ${PYLINT} nominatim
                  WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})
     else()
         message(WARNING "pylint not found. Python linting tests disabled.")
@@ -238,7 +259,14 @@ if (BUILD_IMPORTER)
 endif()
 
 if (BUILD_OSM2PGSQL)
-    install(TARGETS osm2pgsql RUNTIME DESTINATION ${NOMINATIM_LIBDIR})
+    if (${CMAKE_VERSION} VERSION_LESS 3.13)
+        # Installation of subdirectory targets was only introduced in 3.13.
+        # So just copy the osm2pgsql file for older versions.
+        install(PROGRAMS ${PROJECT_BINARY_DIR}/osm2pgsql/osm2pgsql
+                DESTINATION ${NOMINATIM_LIBDIR})
+    else()
+        install(TARGETS osm2pgsql RUNTIME DESTINATION ${NOMINATIM_LIBDIR})
+    endif()
 endif()
 
 if (BUILD_MODULE)