Skip to content

Commit ec1c107

Browse files
author
jef
committed
cmake improvements
git-svn-id: http://svn.osgeo.org/qgis/trunk/qgis@11424 c8812cc2-4d05-0410-92ff-de0c093fc19c
1 parent 59fe46a commit ec1c107

File tree

5 files changed

+63
-38
lines changed

5 files changed

+63
-38
lines changed

cmake/Bison.cmake

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,10 @@
44
MACRO(FIND_BISON)
55
IF(NOT BISON_EXECUTABLE)
66
IF (MSVC)
7-
FIND_PROGRAM(BISON_EXECUTABLE "$ENV{LIB_DIR}/bin/bison.exe")
7+
FIND_PROGRAM(BISON_EXECUTABLE PATHS
8+
NAMES bison.exe
9+
PATHS $ENV{LIB_DIR} $ENV{PROGRAMFILES}/GnuWin32/bin
10+
)
811
ELSE (MSVC)
912
FIND_PROGRAM(BISON_EXECUTABLE bison)
1013
ENDIF (MSVC)

cmake/Flex.cmake

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,10 @@
44
MACRO(FIND_FLEX)
55
IF(NOT FLEX_EXECUTABLE)
66
IF (MSVC)
7-
FIND_PROGRAM(FLEX_EXECUTABLE
8-
"$ENV{LIB_DIR}/bin/flex.exe"
9-
)
7+
FIND_PROGRAM(FLEX_EXECUTABLE
8+
NAMES flex.exe
9+
PATHS $ENV{LIB_DIR}/bin $ENV{PROGRAMFILES}/GnuWin32/bin
10+
)
1011
ELSE(MSVC)
1112
FIND_PROGRAM(FLEX_EXECUTABLE flex)
1213
ENDIF (MSVC)

cmake/Python.cmake

Lines changed: 27 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,20 @@
77
FIND_PACKAGE(PythonLibs) # MapServer export tool
88
FIND_PACKAGE(PythonInterp) # test for sip and PyQt4
99

10-
FIND_PROGRAM(PYUIC4_PROGRAM pyuic4)
10+
IF(NOT PYUIC4_PROGRAM)
11+
IF (MSVC)
12+
FIND_PROGRAM(PYUIC4_PROGRAM
13+
NAMES pyuic4.bat
14+
PATHS $ENV{LIB_DIR}/bin
15+
)
16+
ELSE(MSVC)
17+
FIND_PROGRAM(PYUIC4_PROGRAM pyuic4)
18+
ENDIF (MSVC)
1119

12-
IF(${PYUIC4_PROGRAM} STREQUAL "PYUIC4_PROGRAM-NOTFOUND")
13-
MESSAGE(ERROR "pyuic4 is required")
14-
ENDIF(${PYUIC4_PROGRAM} STREQUAL "PYUIC4_PROGRAM-NOTFOUND")
20+
IF (NOT PYUIC4_PROGRAM)
21+
MESSAGE(FATAL_ERROR "pyuic4 not found - aborting")
22+
ENDIF (NOT PYUIC4_PROGRAM)
23+
ENDIF(NOT PYUIC4_PROGRAM)
1524

1625
# Adapted from QT4_WRAP_UI
1726
MACRO(PYQT4_WRAP_UI outfiles )
@@ -27,7 +36,20 @@ MACRO(PYQT4_WRAP_UI outfiles )
2736
ENDFOREACH(it)
2837
ENDMACRO(PYQT4_WRAP_UI)
2938

30-
FIND_PROGRAM(PYRCC4_PROGRAM pyrcc4)
39+
IF(NOT PYRCC4_PROGRAM)
40+
IF (MSVC)
41+
FIND_PROGRAM(PYRCC4_PROGRAM
42+
NAMES pyrcc4.exe
43+
PATHS $ENV{LIB_DIR}/bin
44+
)
45+
ELSE(MSVC)
46+
FIND_PROGRAM(PYRCC4_PROGRAM pyrcc4)
47+
ENDIF (MSVC)
48+
49+
IF (NOT PYRCC4_PROGRAM)
50+
MESSAGE(FATAL_ERROR "pyrcc4 not found - aborting")
51+
ENDIF (NOT PYRCC4_PROGRAM)
52+
ENDIF(NOT PYRCC4_PROGRAM)
3153

3254
# Adapted from QT4_ADD_RESOURCES
3355
MACRO (PYQT4_ADD_RESOURCES outfiles )

ms-windows/osgeo4w/package.cmd

Lines changed: 28 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,46 @@
11
@echo off
22
set GRASS_VERSION=6.4.0svn
33

4+
set VERSION=%1
5+
set PACKAGE=%2
6+
if "%VERSION%"=="" goto error
7+
if "%PACKAGE%"=="" goto error
8+
49
path %SYSTEMROOT%\system32;%SYSTEMROOT%;%SYSTEMROOT%\System32\Wbem;%PROGRAMFILES%\CMake 2.6\bin
510
set PYTHONPATH=
611

712
set VS90COMNTOOLS=%PROGRAMFILES%\Microsoft Visual Studio 9.0\Common7\Tools\
813
call "%PROGRAMFILES%\Microsoft Visual Studio 9.0\VC\vcvarsall.bat" x86
914

10-
set OSGEO4W_ROOT=%PROGRAMFILES%\OSGeo4W
15+
if "%OSGEO4W_ROOT%"=="" set OSGEO4W_ROOT=%PROGRAMFILES%\OSGeo4W
16+
if not exist "%OSGEO4W_ROOT%\bin\o4w_env.bat" goto error
17+
1118
call "%OSGEO4W_ROOT%\bin\o4w_env.bat"
1219

20+
set BUILDDIR=%CD%\build
21+
REM set BUILDDIR=%TEMP%\qgis_unstable
22+
1323
set O4W_ROOT=%OSGEO4W_ROOT:\=/%
1424
set LIB_DIR=%O4W_ROOT%
1525

16-
set FLEX=%PROGRAMFILES%\GnuWin32\bin\flex.exe
17-
set BISON=%PROGRAMFILES%\GnuWin32\bin\bison.exe
18-
set PYUIC4=%O4W_ROOT%/bin/pyuic4.bat
19-
20-
set VERSION=%1
21-
set PACKAGE=%2
22-
if %VERSION%=="" goto error
23-
if %PACKAGE%=="" goto error
26+
set DEVENV=
27+
if exist "%DevEnvDir%\vcexpress.exe" set DEVENV=vcexpress
28+
if exist "%DevEnvDir%\devenv.exe" set DEVENV=devenv
29+
if "%DEVENV%"=="" goto error
2430

2531
PROMPT qgis%VERSION%$g
2632

2733
set BUILDCONF=RelWithDebInfo
2834
REM set BUILDCONF=Release
2935

30-
if not exist build mkdir build
31-
if not exist build goto error
36+
if not exist "%BUILDDIR%" mkdir %BUILDDIR%
37+
if not exist "%BUILDDIR%" goto error
38+
39+
cd ..\..
40+
set SRCDIR=%CD%
41+
42+
if "%BUILDDIR:~1,1%"==":" %BUILDDIR:~0,2%
43+
cd %BUILDDIR%
3244

3345
if not exist build.log goto build
3446

@@ -55,9 +67,7 @@ if exist build.tmp del build.tmp
5567
goto error
5668

5769
:build
58-
set LOG=%CD%\build.log
59-
60-
cd build
70+
set LOG=%BUILDDIR%\build.log
6171

6272
echo Logging to %LOG%
6373
echo BEGIN: %DATE% %TIME%>>%LOG% 2>&1
@@ -76,9 +86,6 @@ cmake -G "Visual Studio 9 2008" ^
7686
-D WITH_INTERNAL_SPATIALITE=TRUE ^
7787
-D CMAKE_CONFIGURATION_TYPE=%BUILDCONF% ^
7888
-D CMAKE_BUILDCONFIGURATION_TYPES=%BUILDCONF% ^
79-
-D FLEX_EXECUTABLE=%FLEX% ^
80-
-D BISON_EXECUTABLE=%BISON% ^
81-
-D PYUIC4_PROGRAM=%PYUIC4% ^
8289
-D GDAL_INCLUDE_DIR=%O4W_ROOT%/apps/gdal-16/include ^
8390
-D GDAL_LIBRARY=%O4W_ROOT%/apps/gdal-16/lib/gdal_i.lib ^
8491
-D PYTHON_EXECUTABLE=%O4W_ROOT%/bin/python.exe ^
@@ -92,7 +99,7 @@ cmake -G "Visual Studio 9 2008" ^
9299
-D QT_ZLIB_LIBRARY=%O4W_ROOT%/lib/zlib.lib ^
93100
-D QT_PNG_LIBRARY=%O4W_ROOT%/lib/libpng13.lib ^
94101
-D CMAKE_INSTALL_PREFIX=%O4W_ROOT%/apps/qgis-dev ^
95-
../../..>>%LOG% 2>&1
102+
%SRCDIR%>>%LOG% 2>&1
96103
if errorlevel 1 goto error
97104

98105
REM bail out if python or grass was not found
@@ -102,15 +109,15 @@ if not errorlevel 1 goto error
102109
:skipcmake
103110

104111
echo ZERO_CHECK: %DATE% %TIME%>>%LOG% 2>&1
105-
devenv qgis%VERSION%.sln /Project ZERO_CHECK /Build %BUILDCONF% /Out %LOG%>>%LOG% 2>&1
112+
%DEVENV% qgis%VERSION%.sln /Project ZERO_CHECK /Build %BUILDCONF% /Out %LOG%>>%LOG% 2>&1
106113
if errorlevel 1 goto error
107114

108115
echo ALL_BUILD: %DATE% %TIME%>>%LOG% 2>&1
109-
devenv qgis%VERSION%.sln /Project ALL_BUILD /Build %BUILDCONF% /Out %LOG%>>%LOG% 2>&1
116+
%DEVENV% qgis%VERSION%.sln /Project ALL_BUILD /Build %BUILDCONF% /Out %LOG%>>%LOG% 2>&1
110117
if errorlevel 1 goto error
111118

112119
echo INSTALL: %DATE% %TIME%>>%LOG% 2>&1
113-
devenv qgis%VERSION%.sln /Project INSTALL /Build %BUILDCONF% /Out %LOG%>>%LOG% 2>&1
120+
%DEVENV% qgis%VERSION%.sln /Project INSTALL /Build %BUILDCONF% /Out %LOG%>>%LOG% 2>&1
114121
if errorlevel 1 goto error
115122

116123
echo PACKAGE: %DATE% %TIME%>>%LOG% 2>&1

python/CMakeLists.txt

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ SET (BINDINGS_LIBS ${BINDINGS_CORE_LIB} ${BINDINGS_GUI_LIB})
2626
SET (BINDINGS_CORE_MAKEFILE ${CMAKE_CURRENT_BINARY_DIR}/core/Makefile)
2727
SET (BINDINGS_GUI_MAKEFILE ${CMAKE_CURRENT_BINARY_DIR}/gui/Makefile)
2828

29-
3029
# 'python' target will force to build bindings libs for core and gui
3130
ADD_CUSTOM_TARGET (python ALL DEPENDS ${BINDINGS_CORE_LIB} ${BINDINGS_GUI_LIB})
3231

@@ -36,13 +35,6 @@ ADD_DEPENDENCIES (python qgis_core qgis_gui)
3635
FILE(GLOB CORE_SIP_FILES "${CMAKE_CURRENT_SOURCE_DIR}/core/*.sip")
3736
FILE(GLOB GUI_SIP_FILES "${CMAKE_CURRENT_SOURCE_DIR}/gui/*.sip")
3837

39-
# Extract GDAL library path and name for configure.py.in
40-
STRING(REGEX REPLACE "^(.*)/.*$" "\\1" GDAL_LIB_PATH ${GDAL_LIBRARY})
41-
STRING(REGEX REPLACE "^.*/(lib)?(.*)\\.[^.]+$" "\\2" GDAL_LIB_NAME ${GDAL_LIBRARY})
42-
# Extract GEOS library path and name for configure.py.in
43-
STRING(REGEX REPLACE "^(.*)/.*$" "\\1" GEOS_LIB_PATH ${GEOS_LIBRARY})
44-
STRING(REGEX REPLACE "^.*/(lib)?(.*)\\.[^.]+$" "\\2" GEOS_LIB_NAME ${GEOS_LIBRARY})
45-
4638
# Step 1: during configuration
4739
# create file configure.py from configure.py.in
4840
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/configure.py.in

0 commit comments

Comments
 (0)