From: <man...@us...> - 2013-12-05 15:47:08
|
Revision: 3378 http://sourceforge.net/p/modplug/code/3378 Author: manxorist Date: 2013-12-05 15:47:00 +0000 (Thu, 05 Dec 2013) Log Message: ----------- [Int] build: Include svn revision information into .zip and .tar packages. [Fix] build: Add Makefile to .zip and .tar packages. Modified Paths: -------------- trunk/OpenMPT/Makefile trunk/OpenMPT/common/svn_version_default/svn_version.h trunk/OpenMPT/common/svn_version_subwcrev/svn_version.template.h trunk/OpenMPT/common/svn_version_svnversion/svn_version.h trunk/OpenMPT/common/version.cpp trunk/OpenMPT/common/version.h trunk/OpenMPT/libopenmpt/libopenmpt_impl.cpp Modified: trunk/OpenMPT/Makefile =================================================================== --- trunk/OpenMPT/Makefile 2013-12-05 14:44:42 UTC (rev 3377) +++ trunk/OpenMPT/Makefile 2013-12-05 15:47:00 UTC (rev 3378) @@ -327,8 +327,18 @@ rm -rf bin/dist.tar cd bin/ && tar cvf dist.tar OpenMPT-src-$(DIST_OPENMPT_VERSION).zip libopenmpt-src-$(DIST_LIBOPENMPT_VERSION).zip libopenmpt-src-$(DIST_LIBOPENMPT_VERSION).tar libopenmpt-src-$(DIST_LIBOPENMPT_VERSION).tar.gz +.PHONY: bin/svn_version_dist.h +bin/svn_version_dist.h: + rm -rf $@ + echo > $@.tmp + echo '#pragma once' >> $@.tmp + echo '#define BUILD_SVNVERSION "$(BUILD_SVNVERSION)"' >> $@.tmp + echo '#define BUILD_PACKAGE true' >> $@.tmp + echo '#include "../svn_version_svnversion/svn_version.h"' >> $@.tmp + mv $@.tmp $@ + .PHONY: bin/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION).tar -bin/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION).tar: +bin/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION).tar: bin/svn_version_dist.h mkdir -p bin/dist rm -rf bin/dist/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION) mkdir -p bin/dist/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION) @@ -336,6 +346,7 @@ svn export ./LICENSE bin/dist/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/LICENSE svn export ./README bin/dist/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/README svn export ./TODO bin/dist/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/TODO + svn export ./Makefile bin/dist/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/Makefile svn export ./bin bin/dist/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/bin svn export ./build bin/dist/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/build svn export ./common bin/dist/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/common @@ -345,10 +356,11 @@ svn export ./openmpt123 bin/dist/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/openmpt123 svn export ./include/miniz bin/dist/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/include/miniz svn export ./include/modplug bin/dist/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/include/modplug + cp bin/svn_version_dist.h bin/dist/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/common/svn_version_default/svn_version.h cd bin/dist/ && tar cv libopenmpt-src-$(DIST_LIBOPENMPT_VERSION) > ../libopenmpt-src-$(DIST_LIBOPENMPT_VERSION).tar .PHONY: bin/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION).zip -bin/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION).zip: +bin/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION).zip: bin/svn_version_dist.h mkdir -p bin/dist-zip rm -rf bin/dist-zip/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION) mkdir -p bin/dist-zip/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION) @@ -356,6 +368,7 @@ svn export ./LICENSE bin/dist-zip/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/LICENSE --native-eol CRLF svn export ./README bin/dist-zip/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/README --native-eol CRLF svn export ./TODO bin/dist-zip/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/TODO --native-eol CRLF + svn export ./Makefile bin/dist-zip/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/Makefile --native-eol CRLF svn export ./bin bin/dist-zip/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/bin --native-eol CRLF svn export ./build bin/dist-zip/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/build --native-eol CRLF svn export ./common bin/dist-zip/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/common --native-eol CRLF @@ -370,13 +383,15 @@ svn export ./include/foobar2000sdk bin/dist-zip/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/include/foobar2000sdk --native-eol CRLF svn export ./include/winamp bin/dist-zip/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/include/winamp --native-eol CRLF svn export ./include/xmplay bin/dist-zip/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/include/xmplay --native-eol CRLF + cp bin/svn_version_dist.h bin/dist-zip/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/common/svn_version_default/svn_version.h cd bin/dist-zip/libopenmpt-src-$(DIST_LIBOPENMPT_VERSION)/ && zip -r ../../libopenmpt-src-$(DIST_LIBOPENMPT_VERSION).zip --compression-method deflate -9 * .PHONY: bin/OpenMPT-src-$(DIST_OPENMPT_VERSION).zip -bin/OpenMPT-src-$(DIST_OPENMPT_VERSION).zip: +bin/OpenMPT-src-$(DIST_OPENMPT_VERSION).zip: bin/svn_version_dist.h mkdir -p bin/dist-zip rm -rf bin/dist-zip/OpenMPT-src-$(DIST_OPENMPT_VERSION) svn export ./ bin/dist-zip/OpenMPT-src-$(DIST_OPENMPT_VERSION)/ --native-eol CRLF + cp bin/svn_version_dist.h bin/dist-zip/OpenMPT-src-$(DIST_OPENMPT_VERSION)/common/svn_version_default/svn_version.h cd bin/dist-zip/OpenMPT-src-$(DIST_OPENMPT_VERSION)/ && zip -r ../../OpenMPT-src-$(DIST_OPENMPT_VERSION).zip --compression-method deflate -9 * bin/openmpt.a: $(LIBOPENMPT_OBJECTS) Modified: trunk/OpenMPT/common/svn_version_default/svn_version.h =================================================================== --- trunk/OpenMPT/common/svn_version_default/svn_version.h 2013-12-05 14:44:42 UTC (rev 3377) +++ trunk/OpenMPT/common/svn_version_default/svn_version.h 2013-12-05 15:47:00 UTC (rev 3378) @@ -7,5 +7,6 @@ #define OPENMPT_VERSION_DIRTY false #define OPENMPT_VERSION_MIXEDREVISIONS false +#define OPENMPT_VERSION_IS_PACKAGE false + #define OPENMPT_VERSION_DATE __DATE__ " " __TIME__ - Modified: trunk/OpenMPT/common/svn_version_subwcrev/svn_version.template.h =================================================================== --- trunk/OpenMPT/common/svn_version_subwcrev/svn_version.template.h 2013-12-05 14:44:42 UTC (rev 3377) +++ trunk/OpenMPT/common/svn_version_subwcrev/svn_version.template.h 2013-12-05 15:47:00 UTC (rev 3378) @@ -7,4 +7,6 @@ #define OPENMPT_VERSION_DIRTY $WCMODS?true:false$ #define OPENMPT_VERSION_MIXEDREVISIONS $WCMIXED?true:false$ +#define OPENMPT_VERSION_IS_PACKAGE false + #define OPENMPT_VERSION_DATE "$WCNOW=%Y-%m-%d %H:%M:%S$" Modified: trunk/OpenMPT/common/svn_version_svnversion/svn_version.h =================================================================== --- trunk/OpenMPT/common/svn_version_svnversion/svn_version.h 2013-12-05 14:44:42 UTC (rev 3377) +++ trunk/OpenMPT/common/svn_version_svnversion/svn_version.h 2013-12-05 15:47:00 UTC (rev 3378) @@ -5,6 +5,12 @@ #define OPENMPT_VERSION_DATE __DATE__ " " __TIME__ +#ifdef BUILD_PACKAGE +#define OPENMPT_VERSION_IS_PACKAGE true +#else +#define OPENMPT_VERSION_IS_PACKAGE false +#endif + #ifndef BUILD_SVNVERSION #define OPENMPT_VERSION_REVISION 0 Modified: trunk/OpenMPT/common/version.cpp =================================================================== --- trunk/OpenMPT/common/version.cpp 2013-12-05 14:44:42 UTC (rev 3377) +++ trunk/OpenMPT/common/version.cpp 2013-12-05 15:47:00 UTC (rev 3378) @@ -134,6 +134,15 @@ #endif } +bool IsPackage() +{ + #if defined(OPENMPT_VERSION_IS_PACKAGE) + return OPENMPT_VERSION_IS_PACKAGE; + #else + return false; + #endif +} + std::string GetStateString() { std::string retval; @@ -145,6 +154,10 @@ { retval += "+dirty"; } + if(IsPackage()) + { + retval += "-pkg"; + } return retval; } @@ -194,6 +207,10 @@ { str += "+"; } + if(IsPackage()) + { + str += "p"; + } return str; } Modified: trunk/OpenMPT/common/version.h =================================================================== --- trunk/OpenMPT/common/version.h 2013-12-05 14:44:42 UTC (rev 3377) +++ trunk/OpenMPT/common/version.h 2013-12-05 15:47:00 UTC (rev 3378) @@ -60,6 +60,9 @@ // Return if the svn working copy had files checked out from different revisions and/or branches (if built from a svn working copy and tsvn was available during build) bool HasMixedRevisions(); + // Return whether the build was done from packaged source code (i.e. from the genertaed .zip or .tar source) + bool IsPackage(); + // Return a string decribing the working copy state (dirty and/or mixed revisions) (if built from a svn working copy and tsvn was available during build) std::string GetStateString(); // e.g. "" or "+mixed" or "+mixed+dirty" or "+dirty" Modified: trunk/OpenMPT/libopenmpt/libopenmpt_impl.cpp =================================================================== --- trunk/OpenMPT/libopenmpt/libopenmpt_impl.cpp 2013-12-05 14:44:42 UTC (rev 3377) +++ trunk/OpenMPT/libopenmpt/libopenmpt_impl.cpp 2013-12-05 15:47:00 UTC (rev 3378) @@ -62,8 +62,16 @@ } if ( MptVersion::IsDirty() ) { str += ".2-modified"; + if ( MptVersion::IsPackage() ) { + str += "-pkg"; + } } else if ( MptVersion::HasMixedRevisions() ) { str += ".1-modified"; + if ( MptVersion::IsPackage() ) { + str += "-pkg"; + } + } else if ( MptVersion::IsPackage() ) { + str += ".0-pkg"; } return str; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |