|
From: <ai...@us...> - 2013-06-03 14:27:08
|
Revision: 12354
http://sourceforge.net/p/plplot/code/12354
Author: airwin
Date: 2013-06-03 14:27:05 +0000 (Mon, 03 Jun 2013)
Log Message:
-----------
Many small tweaks (most stylistic such as implementing an overall
cmake command that propagates the install prefix and generator to all
the different CMake-based project builds or establishing the general
way to handle the PATH environment variable which is to modify then
restore to the original form for each separate project).
Tested by: Alan W. Irwin <ai...@us...>. Both
shapelib and ndiff configure, build, test, and install cleanly for
MinGW/MSYS/Wine.
Modified Paths:
--------------
trunk/cmake/build_projects/CMakeLists.txt
trunk/cmake/build_projects/ndiff/ep.cmake
trunk/cmake/build_projects/shapelib/ep.cmake
Modified: trunk/cmake/build_projects/CMakeLists.txt
===================================================================
--- trunk/cmake/build_projects/CMakeLists.txt 2013-06-02 20:07:07 UTC (rev 12353)
+++ trunk/cmake/build_projects/CMakeLists.txt 2013-06-03 14:27:05 UTC (rev 12354)
@@ -41,6 +41,10 @@
message(FATAL_ERROR "This project only works with either the \"Unix Makefiles\" or \"MSYS Makefiles\" generators")
endif(NOT ${CMAKE_GENERATOR} STREQUAL "Unix Makefiles" AND NOT ${CMAKE_GENERATOR} STREQUAL "MSYS Makefiles")
+# Propagate the overall CMake generator and install prefix to all CMake-based
+# software project builds.
+set(BP_CMAKE_COMMAND cmake "-G${CMAKE_GENERATOR}" -DCMAKE_INSTALL_PREFIX:PATH=${CMAKE_INSTALL_PREFIX})
+
# The non-parallel versions are for build systems that
# apparently have race conditions for parallel builds.
set(BP_PARALLEL_BUILD_COMMAND make -j4)
Modified: trunk/cmake/build_projects/ndiff/ep.cmake
===================================================================
--- trunk/cmake/build_projects/ndiff/ep.cmake 2013-06-02 20:07:07 UTC (rev 12353)
+++ trunk/cmake/build_projects/ndiff/ep.cmake 2013-06-03 14:27:05 UTC (rev 12354)
@@ -24,6 +24,7 @@
# used below that configure how the External_Project functions
# operate.
+# Data that is related to downloads.
set(ndiff_URL ftp://ftp.math.utah.edu/pub/misc/ndiff-2.00.tar.gz)
# TEMPORARY local version for debugging
set(ndiff_URL /home/software/ndiff/ndiff-2.00.tar.gz)
@@ -33,11 +34,19 @@
# In any case, gpg is not available for the MSYS case.
set(ndiff_URL_MD5 885548b4dc26e72c5455bebb5ba6c16d)
+# Data that is related to the PATH that must be used.
+if(MSYS)
+ #set(BP_PATH_NODLL "${BP_PATH}")
+ #set(BP_PATH "${EP_BASE}/Build/build_ndiff/dll;${BP_PATH_NODLL}")
+ determine_msys_path(BP_PATH "${BP_PATH}")
+endif(MSYS)
+#message(STATUS "modified BP_PATH for ndiff = ${BP_PATH}")
+
ExternalProject_Add(
build_ndiff
URL ${ndiff_URL}
URL_MD5 ${ndiff_URL_MD5}
- CMAKE_CACHE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=${EP_BASE}/Install/build_ndiff
+ CONFIGURE_COMMAND env PATH=${BP_PATH} ${BP_CMAKE_COMMAND} ${EP_BASE}/Source/build_ndiff
BUILD_COMMAND ${BP_PARALLEL_BUILD_COMMAND}
TEST_BEFORE_INSTALL ON
TEST_COMMAND ${BP_PARALLEL_CTEST_COMMAND}
@@ -66,3 +75,7 @@
${EP_BASE}/Source/build_ndiff/config.h.cmake
ALWAYS OFF
)
+
+# Restore BP_PATH to original state.
+set(BP_PATH "${BP_ORIGINAL_NATIVE_PATH}")
+#message(STATUS "shapelib restored original BP_PATH = ${BP_PATH}")
Modified: trunk/cmake/build_projects/shapelib/ep.cmake
===================================================================
--- trunk/cmake/build_projects/shapelib/ep.cmake 2013-06-02 20:07:07 UTC (rev 12353)
+++ trunk/cmake/build_projects/shapelib/ep.cmake 2013-06-03 14:27:05 UTC (rev 12354)
@@ -24,42 +24,30 @@
# used below that configure how the External_Project functions
# operate.
-if(MSYS)
- set(BP_PATH_NODLL "${BP_PATH}")
- set(BP_PATH "${EP_BASE}/Build/build_shapelib/dll;${BP_PATH_NODLL}")
- determine_msys_path(BP_PATH "${BP_PATH}")
-endif(MSYS)
-#message(STATUS "modified BP_PATH for shapelib = ${BP_PATH}")
-
+# Data that is related to downloads.
set(shapelib_URL http://download.osgeo.org/shapelib/shapelib-1.3.0.tar.gz)
# TEMPORARY local version for debugging
set(shapelib_URL /home/software/shapelib/shapelib-1.3.0.tar.gz)
-
set(shapelib_URL_MD5 2ff7d0b21d4b7506b452524492795f77)
set(shape_eg_data_URL http://dl.maptools.org/dl/shapelib/shape_eg_data.zip)
# TEMPORARY local version for debugging
set(shape_eg_data_URL file:///home/software/shapelib/eg_data/shape_eg_data.zip)
-
set(shape_eg_data_URL_MD5 36208abd5d34c5c80101d8b214109f0d)
-# Must implement command as a list to get -G quotes propagated correctly.
-set(BP_CONFIGURE_COMMAND
- env
- PATH=${BP_PATH}
- cmake
- "-G${CMAKE_GENERATOR}"
- -DCMAKE_INSTALL_PREFIX:PATH=${CMAKE_INSTALL_PREFIX}
- -DEG_DATA:PATH=${EP_BASE}/Source/build_shapelib/eg_data
- ${EP_BASE}/Source/build_shapelib
- )
+# Data that is related to the PATH that must be used.
+if(MSYS)
+ set(BP_PATH_NODLL "${BP_PATH}")
+ set(BP_PATH "${EP_BASE}/Build/build_shapelib/dll;${BP_PATH_NODLL}")
+ determine_msys_path(BP_PATH "${BP_PATH}")
+endif(MSYS)
+#message(STATUS "modified BP_PATH for shapelib = ${BP_PATH}")
ExternalProject_Add(
build_shapelib
URL ${shapelib_URL}
URL_MD5 ${shapelib_URL_MD5}
- CONFIGURE_COMMAND env PATH=${BP_PATH} cmake "-G${CMAKE_GENERATOR}" -DCMAKE_INSTALL_PREFIX:PATH=${CMAKE_INSTALL_PREFIX} -DEG_DATA:PATH=${EP_BASE}/Source/build_shapelib/eg_data
- ${EP_BASE}/Source/build_shapelib
+ CONFIGURE_COMMAND env PATH=${BP_PATH} ${BP_CMAKE_COMMAND} -DEG_DATA:PATH=${EP_BASE}/Source/build_shapelib/eg_data ${EP_BASE}/Source/build_shapelib
BUILD_COMMAND env PATH=${BP_PATH} ${BP_PARALLEL_BUILD_COMMAND}
TEST_BEFORE_INSTALL ON
TEST_COMMAND env PATH=${BP_PATH} ${BP_PARALLEL_CTEST_COMMAND}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|