diff --git a/CMakeLists.txt b/CMakeLists.txt index ca05e65145a..05404fd1d8f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -439,55 +439,28 @@ INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR}) LINK_DIRECTORIES(${CMAKE_BINARY_DIR}/src/core ${CMAKE_BINARY_DIR}/src/gui) ############################################################# -# create qgssvnversion.h +# create qgsversion.h -FIND_FILE(SVN_MARKER entries PATHS ${CMAKE_SOURCE_DIR}/.svn) FIND_FILE(GIT_MARKER index PATHS ${CMAKE_SOURCE_DIR}/.git) -IF (SVN_MARKER) - # See if we have svn installed - FIND_PROGRAM(SVNVERSION svnversion PATHS c:/cygwin/bin) +IF (GIT_MARKER) + FIND_PROGRAM(GIT git PATHS c:/cygwin/bin) + IF(GIT) + ADD_CUSTOM_COMMAND( + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h + COMMAND echo \\\#define QGSVERSION \\\"$$\( ${GIT} log -n1 --pretty=%h \)\\\" >${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h + MAIN_DEPENDENCY ${GIT_MARKER} + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} + ) + ELSE(GIT) + MESSAGE(STATUS "git marker, but no git found - version will be unknown") + FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h "#define QGSVERSION \"unknown\"") + ENDIF(GIT) +ELSE (GIT_MARKER) + FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h "#define QGSVERSION \"exported\"") +ENDIF (GIT_MARKER) - IF(SVNVERSION) - IF(MSVC) - ADD_CUSTOM_COMMAND( - OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/qgssvnversion.h - COMMAND for /f usebackq %%a in "(`\"${SVNVERSION}\"`)" do echo \#define QGSSVNVERSION \"%%a\" >${CMAKE_CURRENT_BINARY_DIR}/qgssvnversion.h - MAIN_DEPENDENCY ${SVN_MARKER} - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} - ) - ELSE(MSVC) - ADD_CUSTOM_COMMAND( - OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/qgssvnversion.h - COMMAND echo \\\#define QGSSVNVERSION \\\"`${SVNVERSION}`\\\" >${CMAKE_CURRENT_BINARY_DIR}/qgssvnversion.h - MAIN_DEPENDENCY ${SVN_MARKER} - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} - ) - ENDIF(MSVC) - ELSE(SVNVERSION) - MESSAGE(STATUS "svnversion not found - version will be unknown") - FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/qgssvnversion.h "#define QGSSVNVERSION \"unknown\"") - ENDIF (SVNVERSION) -ELSE (SVN_MARKER) - IF (GIT_MARKER) - FIND_PROGRAM(GIT git PATHS c:/cygwin/bin) - IF(GIT) - ADD_CUSTOM_COMMAND( - OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/qgssvnversion.h - COMMAND echo \\\#define QGSSVNVERSION \\\"$$\( ${GIT} log -n1 --grep='git-svn-id' | sed -ne 's/^ *git-svn-id:.*@\\\([0-9]*\\\).*$$/\\1/p' \)$$\( ${GIT} log --oneline $$\( ${GIT} log -n1 --grep='git-svn-id' --pretty=%H \).. | wc -l | sed -e 's/^/+/' -e 's/+0$$//' \)\\\" >${CMAKE_CURRENT_BINARY_DIR}/qgssvnversion.h - MAIN_DEPENDENCY ${GIT_MARKER} - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} - ) - ELSE(GIT) - MESSAGE(STATUS "git marker, but no git found - version will be unknown") - FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/qgssvnversion.h "#define QGSSVNVERSION \"unknown\"") - ENDIF(GIT) - ELSE (GIT_MARKER) - FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/qgssvnversion.h "#define QGSSVNVERSION \"exported\"") - ENDIF (GIT_MARKER) -ENDIF (SVN_MARKER) - -ADD_CUSTOM_TARGET(svnversion ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/qgssvnversion.h) +ADD_CUSTOM_TARGET(version ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h) ############################################################# # process subdirs diff --git a/mac/xcode/Qgis.xcodeproj/project.pbxproj b/mac/xcode/Qgis.xcodeproj/project.pbxproj index 23dce1aa43b..86c648936e0 100644 --- a/mac/xcode/Qgis.xcodeproj/project.pbxproj +++ b/mac/xcode/Qgis.xcodeproj/project.pbxproj @@ -15090,12 +15090,12 @@ "$(SRCROOT)/../../cmake_templates/qgsconfig.h.in", ); outputPaths = ( - "$(CONFIGURATION_BUILD_DIR)/include/qgssvnversion.h", + "$(CONFIGURATION_BUILD_DIR)/include/qgsversion.h", "$(CONFIGURATION_BUILD_DIR)/include/qgsconfig.h", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "mkdir -p \"$CONFIGURATION_BUILD_DIR/include\"\n\n# check if the files are generated, clean if need to regenerate\n\nif [ ! -f \"$CONFIGURATION_BUILD_DIR/include/qgsconfig.h\" ] || [ ../../cmake_templates/qgsconfig.h.in -nt \"$CONFIGURATION_BUILD_DIR/include/qgsconfig.h\" ] ; then\necho \"Generating qgsconfig.h...\"\nsed -e \"s,\\${CPACK_PACKAGE_VERSION_MAJOR},$QGIS_VERSION_MAJOR,g\" \\\n\t-e \"s,\\${CPACK_PACKAGE_VERSION_MINOR},$QGIS_VERSION_MINOR,g\" \\\n\t-e \"s,\\${CPACK_PACKAGE_VERSION_PATCH},$QGIS_VERSION_PATCH,g\" \\\n\t-e \"s,\\${RELEASE_NAME},$QGIS_RELEASE_NAME,g\" \\\n\t-e \"s,\\${QGIS_VERSION_INT},$QGIS_VERSION_INT,g\" \\\n\t-e \"s,\\${QGIS_PLUGIN_SUBDIR},$QGIS_PLUGIN_SUBDIR,g\" \\\n\t-e \"s,\\${QGIS_DATA_SUBDIR},$QGIS_DATA_SUBDIR,g\" \\\n\t-e \"s,\\${QGIS_LIBEXEC_SUBDIR},$QGIS_LIBEXEC_SUBDIR,g\" \\\n\t-e \"s,\\${QGIS_LIB_SUBDIR},$QGIS_LIB_SUBDIR,g\" \\\n\t-e \"s,\\${CMAKE_INSTALL_PREFIX},$CMAKE_INSTALL_PREFIX,g\" \\\n\t-e \"s,#cmakedefine,#define,g\" \\\n\t../../cmake_templates/qgsconfig.h.in > \"$CONFIGURATION_BUILD_DIR/include/qgsconfig.h\"\nfi\n\nif [ ! -f \"$CONFIGURATION_BUILD_DIR/include/qgssvnversion.h\" ] ; then\necho \"Generating qgssvnversion.h...\"\nsvnv=`which svnversion`\nif [ \"$svnv\" ] ; then\n\tsvnver=`svnversion $SRCROOT`\nelse\n\tsvnver=\"unknown\"\nfi\necho \"#define QGSSVNVERSION \\\"$svnver\\\"\" > \"$CONFIGURATION_BUILD_DIR/include/qgssvnversion.h\"\nfi\n\nexit 0"; + shellScript = "mkdir -p \"$CONFIGURATION_BUILD_DIR/include\"\n\n# check if the files are generated, clean if need to regenerate\n\nif [ ! -f \"$CONFIGURATION_BUILD_DIR/include/qgsconfig.h\" ] || [ ../../cmake_templates/qgsconfig.h.in -nt \"$CONFIGURATION_BUILD_DIR/include/qgsconfig.h\" ] ; then\necho \"Generating qgsconfig.h...\"\nsed -e \"s,\\${CPACK_PACKAGE_VERSION_MAJOR},$QGIS_VERSION_MAJOR,g\" \\\n\t-e \"s,\\${CPACK_PACKAGE_VERSION_MINOR},$QGIS_VERSION_MINOR,g\" \\\n\t-e \"s,\\${CPACK_PACKAGE_VERSION_PATCH},$QGIS_VERSION_PATCH,g\" \\\n\t-e \"s,\\${RELEASE_NAME},$QGIS_RELEASE_NAME,g\" \\\n\t-e \"s,\\${QGIS_VERSION_INT},$QGIS_VERSION_INT,g\" \\\n\t-e \"s,\\${QGIS_PLUGIN_SUBDIR},$QGIS_PLUGIN_SUBDIR,g\" \\\n\t-e \"s,\\${QGIS_DATA_SUBDIR},$QGIS_DATA_SUBDIR,g\" \\\n\t-e \"s,\\${QGIS_LIBEXEC_SUBDIR},$QGIS_LIBEXEC_SUBDIR,g\" \\\n\t-e \"s,\\${QGIS_LIB_SUBDIR},$QGIS_LIB_SUBDIR,g\" \\\n\t-e \"s,\\${CMAKE_INSTALL_PREFIX},$CMAKE_INSTALL_PREFIX,g\" \\\n\t-e \"s,#cmakedefine,#define,g\" \\\n\t../../cmake_templates/qgsconfig.h.in > \"$CONFIGURATION_BUILD_DIR/include/qgsconfig.h\"\nfi\n\nif [ ! -f \"$CONFIGURATION_BUILD_DIR/include/qgsversion.h\" ] ; then\necho \"Generating qgsversion.h...\"\nsvnv=`which svnversion`\nif [ \"$svnv\" ] ; then\n\tsvnver=`svnversion $SRCROOT`\nelse\n\tsvnver=\"unknown\"\nfi\necho \"#define QGSSVNVERSION \\\"$svnver\\\"\" > \"$CONFIGURATION_BUILD_DIR/include/qgsversion.h\"\nfi\n\nexit 0"; showEnvVarsInLog = 0; }; 7223B7830F96A96500D905B4 /* Script - ui */ = { diff --git a/mac/xcode/ReadMe.rtf b/mac/xcode/ReadMe.rtf index 02644fe6b2f..dab70c6dc35 100644 --- a/mac/xcode/ReadMe.rtf +++ b/mac/xcode/ReadMe.rtf @@ -301,7 +301,7 @@ If recompiling any other target, you should then also recompile the \ul bundle\u \pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural \cf0 \ul Cleaning\ulnone - to clean the project \b Clean All -\b0 . This actually leaves qgsconfig.h and qgssvnversion.h in the build folder.\ +\b0 . This actually leaves qgsconfig.h and qgsversion.h in the build folder.\ \ For a complete clean, trash the build folder from the project folder (NOT from the project itself!).\ \ @@ -347,4 +347,4 @@ See the Xcode documentation for more info on using the debugger.\ {\field{\*\fldinst{HYPERLINK "http://www.kyngchaos.com"}}{\fldrslt \fs24 \cf0 http://www.kyngchaos.com/}} \fs24 \ -} \ No newline at end of file +} diff --git a/python/CMakeLists.txt b/python/CMakeLists.txt index 318f98d3f81..6c1f50bb96b 100644 --- a/python/CMakeLists.txt +++ b/python/CMakeLists.txt @@ -27,7 +27,7 @@ INCLUDE_DIRECTORIES( ../src/core/spatialindex ../src/core/symbology ../src/core/symbology-ng - ${CMAKE_BINARY_DIR} # qgsconfig.h, qgssvnversion.h + ${CMAKE_BINARY_DIR} # qgsconfig.h, qgsversion.h ) diff --git a/python/core/qgis.sip b/python/core/qgis.sip index 6ef62c5a988..0651d390fb0 100644 --- a/python/core/qgis.sip +++ b/python/core/qgis.sip @@ -34,7 +34,7 @@ public: // Release name static const char* QGIS_RELEASE_NAME; // The subversion version - static const char* QGIS_SVN_VERSION; + static const char* QGIS_DEV_VERSION; // Enumerations // diff --git a/scripts/prepare-commit.sh b/scripts/prepare-commit.sh index 1db5a760150..0479eecffa0 100755 --- a/scripts/prepare-commit.sh +++ b/scripts/prepare-commit.sh @@ -33,14 +33,14 @@ fi # save original changes if [ -d .svn ]; then - REV=$(svn info | sed -ne "s/Revision: //p") - svn diff >r$REV.diff + REV=r$(svn info | sed -ne "s/Revision: //p") + svn diff >$REV.diff elif [ -d .git ]; then - REV=$(git svn info | sed -ne "s/Revision: //p") - git diff >r$REV.diff + REV=$(git log -n1 --pretty=%H) + git diff >$REV.diff fi -ASTYLEDIFF=astyle.r$REV.diff +ASTYLEDIFF=astyle.$REV.diff >$ASTYLEDIFF # reformat @@ -59,7 +59,7 @@ for f in $MODIFIED; do ;; esac - m=$f.r$REV.prepare + m=$f.$REV.prepare cp $f $m astyle.sh $f diff --git a/src/app/main.cpp b/src/app/main.cpp index da19e143c40..8d345bc372f 100644 --- a/src/app/main.cpp +++ b/src/app/main.cpp @@ -67,7 +67,7 @@ typedef SInt32 SRefCon; #include "qgsmapcanvas.h" #include "qgsapplication.h" #include -#include +#include #include "qgsexception.h" #include "qgsproject.h" #include "qgsrectangle.h" @@ -86,7 +86,7 @@ static const char * const ident_ = "$Id$"; void usage( std::string const & appName ) { std::cerr << "Quantum GIS - " << VERSION << " '" << RELEASE_NAME << "' (" - << QGSSVNVERSION << ")\n" + << QGSVERSION << ")\n" << "Quantum GIS (QGIS) is a viewer for spatial data sets, including\n" << "raster and vector data.\n" << "Usage: " << appName << " [options] [FILES]\n" diff --git a/src/app/qgisapp.cpp b/src/app/qgisapp.cpp index b1b23b303e3..f38a04a48b1 100644 --- a/src/app/qgisapp.cpp +++ b/src/app/qgisapp.cpp @@ -274,7 +274,7 @@ static void setTitleBarText_( QWidget & qgisApp ) if ( QString( QGis::QGIS_VERSION ).endsWith( "Trunk" ) ) { - caption += QString( "r%1" ).arg( QGis::QGIS_SVN_VERSION ); + caption += QString( "r%1" ).arg( QGis::QGIS_DEV_VERSION ); } else { @@ -1916,7 +1916,7 @@ void QgisApp::about() abt = new QgsAbout(); QString versionString = tr( "You are using QGIS version %1 built against code revision %2." ) .arg( QGis::QGIS_VERSION ) - .arg( QGis::QGIS_SVN_VERSION ); + .arg( QGis::QGIS_DEV_VERSION ); versionString += tr( "\nGDAL/OGR Version: %1." ).arg( GDAL_RELEASE_NAME ); diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt index d47714f83c3..0bdffb6639e 100644 --- a/src/core/CMakeLists.txt +++ b/src/core/CMakeLists.txt @@ -323,8 +323,8 @@ ADD_LIBRARY(qgis_core SHARED ${QGIS_CORE_SRCS} ${QGIS_CORE_MOC_SRCS} ${INDEX_SRC SET_TARGET_PROPERTIES(qgis_core PROPERTIES VERSION ${COMPLETE_VERSION} SOVERSION ${COMPLETE_VERSION}) -# make sure to create qgssvnversion.h before compiling -ADD_DEPENDENCIES(qgis_core svnversion) +# make sure to create qgsversion.h before compiling +ADD_DEPENDENCIES(qgis_core version) # because of htonl IF (WIN32) diff --git a/src/core/qgis.cpp b/src/core/qgis.cpp index 58b5b275cee..202b6e252fe 100644 --- a/src/core/qgis.cpp +++ b/src/core/qgis.cpp @@ -17,7 +17,7 @@ ***************************************************************************/ #include "qgis.h" #ifndef QGSSVNVERSION -#include "qgssvnversion.h" +#include "qgsversion.h" #endif #include "qgsconfig.h" @@ -29,7 +29,7 @@ const char* QGis::QGIS_VERSION = VERSION; // SVN version -const char* QGis::QGIS_SVN_VERSION = QGSSVNVERSION; +const char* QGis::QGIS_DEV_VERSION = QGSVERSION; // Version number used for comparing versions using the // "Check QGIS Version" function diff --git a/src/core/qgis.h b/src/core/qgis.h index 589a735f4df..735fcadff63 100644 --- a/src/core/qgis.h +++ b/src/core/qgis.h @@ -39,8 +39,8 @@ class CORE_EXPORT QGis static const int QGIS_VERSION_INT; // Release name static const char* QGIS_RELEASE_NAME; - // The subversion version - static const char* QGIS_SVN_VERSION; + // The development version + static const char* QGIS_DEV_VERSION; // Enumerations // diff --git a/src/python/qgspythonutilsimpl.cpp b/src/python/qgspythonutilsimpl.cpp index c7445cf3939..b094cbd06d0 100644 --- a/src/python/qgspythonutilsimpl.cpp +++ b/src/python/qgspythonutilsimpl.cpp @@ -177,7 +177,7 @@ bool QgsPythonUtilsImpl::runString( const QString& command, QString msgOnError ) QString str = "" + msgOnError + "
\n" + traceback + "\n
" + QObject::tr( "Python version:" ) + "
" + version + "

" - + QObject::tr( "QGIS version:" ) + "
" + QString( "%1 '%2', %3" ).arg( QGis::QGIS_VERSION ).arg( QGis::QGIS_RELEASE_NAME ).arg( QGis::QGIS_SVN_VERSION ) + "

" + + QObject::tr( "QGIS version:" ) + "
" + QString( "%1 '%2', %3" ).arg( QGis::QGIS_VERSION ).arg( QGis::QGIS_RELEASE_NAME ).arg( QGis::QGIS_DEV_VERSION ) + "

" + QObject::tr( "Python path:" ) + "
" + path; str.replace( "\n", "
" ).replace( " ", "  " );