- Timestamp:
- 06/16/11 23:00:44 (2 years ago)
- Branches:
- master, 0.4.0, 0.4.1, 0.4.2
- Children:
- e11d494
- Parents:
- 3bdaf18
- Location:
- build
- Files:
-
- 3 added
- 1 deleted
- 6 edited
-
batch/batch_build_win.bat (modified) (3 diffs)
-
cmake/FindGoogleBreakpad.cmake (modified) (2 diffs)
-
cmake/functions.cmake (modified) (1 diff)
-
cmake/module.cmake (modified) (1 diff)
-
cmake/wix.cmake (modified) (2 diffs)
-
python/VersionHandler.py (added)
-
python/__init__.py (added)
-
python/postbuild.py (added)
-
python/version.hpp (deleted)
-
python/version.py (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
build/batch/batch_build_win.bat
rd66ccee r7ec3dd1 10 10 11 11 title Generating x64 12 cmake - G "Visual Studio 8 2005 Win64" ../../trunk13 cmake - G "Visual Studio 8 2005 Win64" ../../trunk12 cmake -D INCREASE_BUILD=1 -G "Visual Studio 8 2005 Win64" ../../trunk 13 cmake -D INCREASE_BUILD=0 -G "Visual Studio 8 2005 Win64" ../../trunk 14 14 if %ERRORLEVEL% == 1 goto :error 15 15 … … 22 22 if %ERRORLEVEL% == 1 goto :error 23 23 24 title Postbuild x64 25 postbuild.py 26 if %ERRORLEVEL% == 1 goto :error 27 24 28 cd %ROOT%\w32 25 29 if %ERRORLEVEL% == 1 goto :error 26 30 27 31 title Generating w32 28 cmake - G "Visual Studio 8 2005" ../../trunk29 cmake - G "Visual Studio 8 2005" ../../trunk32 cmake -D INCREASE_BUILD=0 -G "Visual Studio 8 2005" ../../trunk 33 cmake -D INCREASE_BUILD=0 -G "Visual Studio 8 2005" ../../trunk 30 34 if %ERRORLEVEL% == 1 goto :error 31 35 … … 38 42 if %ERRORLEVEL% == 1 goto :error 39 43 44 title Postbuild w32 45 postbuild.py 46 if %ERRORLEVEL% == 1 goto :error 47 48 title Done! 49 40 50 exit /b 0 41 51 goto :eof -
build/cmake/FindGoogleBreakpad.cmake
r1f24a1c r7ec3dd1 28 28 ENDIF(NOT BREAKPAD_LIBRARY_SUFFIX_DEBUG) 29 29 30 MESSAGE( STATUS"Breakpad config: ${BREAKPAD_LIBRARY_PREFIX}...${BREAKPAD_LIBRARY_SUFFIX}, ${BREAKPAD_LIBRARY_PREFIX_DEBUG}...${BREAKPAD_LIBRARY_SUFFIX_DEBUG}" )30 MESSAGE("Breakpad config: ${BREAKPAD_LIBRARY_PREFIX}...${BREAKPAD_LIBRARY_SUFFIX}, ${BREAKPAD_LIBRARY_PREFIX_DEBUG}...${BREAKPAD_LIBRARY_SUFFIX_DEBUG}" ) 31 31 SET(BREAKPAD_FOUND TRUE) 32 32 FOREACH(COMPONENT ${GoogleBreakpad_FIND_COMPONENTS}) 33 33 string(TOUPPER ${COMPONENT} UPPERCOMPONENT) 34 FIND_LIBRARY(BREAKPAD_${UPPERCOMPONENT}_LIBRARY_RELEASE NAMES ${BREAKPAD_LIBRARY_PREFIX}${COMPONENT}${BREAKPAD_LIBRARY_SUFFIX}) 35 FIND_LIBRARY(BREAKPAD_${UPPERCOMPONENT}_LIBRARY_DEBUG NAMES ${BREAKPAD_LIBRARY_PREFIX_DEBUG}${COMPONENT}${BREAKPAD_LIBRARY_SUFFIX_DEBUG}) 34 FIND_LIBRARY(BREAKPAD_${UPPERCOMPONENT}_LIBRARY_RELEASE 35 NAMES ${BREAKPAD_LIBRARY_PREFIX}${COMPONENT}${BREAKPAD_LIBRARY_SUFFIX}) 36 FIND_LIBRARY(BREAKPAD_${UPPERCOMPONENT}_LIBRARY_DEBUG 37 NAMES ${BREAKPAD_LIBRARY_PREFIX_DEBUG}${COMPONENT}${BREAKPAD_LIBRARY_SUFFIX_DEBUG}) 36 38 IF(BREAKPAD_${UPPERCOMPONENT}_LIBRARY_RELEASE AND BREAKPAD_${UPPERCOMPONENT}_LIBRARY_DEBUG) 37 39 SET(BREAKPAD_${UPPERCOMPONENT}_FOUND TRUE) … … 44 46 ENDIF(BREAKPAD_${UPPERCOMPONENT}_LIBRARY_RELEASE AND BREAKPAD_${UPPERCOMPONENT}_LIBRARY_DEBUG) 45 47 ENDFOREACH(COMPONENT) 48 IF(BREAKPAD_FOUND) 49 MESSAGE("Looking for dump-symbols in: ${BREAKPAD_INCLUDE_DIR}/tools/windows/binaries" ) 50 FIND_PROGRAM(BREAKPAD_DUMPSYMS_EXE 51 dump_syms.exe NAMES dump_syms dumpsyms 52 PATHS ENV PATH ${BREAKPAD_INCLUDE_DIR}/tools/windows/binaries 53 ) 54 MESSAGE("Looking for dump-symbols in: ${BREAKPAD_INCLUDE_DIR}/tools/windows/binaries: ${BREAKPAD_DUMPSYMS_EXE}" ) 55 IF(BREAKPAD_DUMPSYMS_EXE) 56 SET(BREAKPAD_DUMPSYMS_EXE_FOUND TRUE) 57 ELSE(BREAKPAD_DUMPSYMS_EXE) 58 SET(BREAKPAD_DUMPSYMS_EXE_FOUND FALSE) 59 SET(BREAKPAD_FOUND FALSE) 60 ENDIF(BREAKPAD_DUMPSYMS_EXE) 61 ELSE(BREAKPAD_FOUND) 62 MESSAGE("NOT looking for dump-symbols in: ${BREAKPAD_INCLUDE_DIR}/tools/windows/binaries" ) 63 ENDIF(BREAKPAD_FOUND) -
build/cmake/functions.cmake
r197b263 r7ec3dd1 18 18 ENDFOREACH(_CURRENT_MODULE ${TMP_LIST}) 19 19 ENDMACRO(LOAD_SECTIONS) 20 21 22 MACRO(copy_single_file alias src destDir) 23 GET_FILENAME_COMPONENT(TARGET ${src} NAME) 24 SET(source_file ${CMAKE_CURRENT_SOURCE_DIR}/${src}) 25 IF(${destDir} STREQUAL ".") 26 SET(target_file ${CMAKE_BINARY_DIR}/${TARGET}) 27 ELSE(${destDir} STREQUAL ".") 28 SET(target_file ${CMAKE_BINARY_DIR}/${destDir}/${TARGET}) 29 ENDIF(${destDir} STREQUAL ".") 30 #message(STATUS " - Copying ${source_file} to ${target_file}...") 31 ADD_CUSTOM_COMMAND(OUTPUT ${target_file} 32 DEPENDS ${source_file} 33 COMMAND cmake 34 ARGS -E copy "${source_file}" "${target_file}" 35 OUTPUT ${target_file} 36 COMMENT Copying ${source_file} to ${target_file} 37 ) 38 ADD_CUSTOM_TARGET(${TARGET}_${alias} ALL DEPENDS ${target_file}) 39 SET_TARGET_PROPERTIES(${TARGET}_${alias} PROPERTIES FOLDER "files/${alias}") 40 INSTALL(CODE "FILE(INSTALL DESTINATION \${CMAKE_INSTALL_PREFIX}/${destDir} TYPE EXECUTABLE FILES \"${source_file}\")") 41 ENDMACRO(copy_single_file) 42 -
build/cmake/module.cmake
rd66ccee r7ec3dd1 5 5 6 6 SET_TARGET_PROPERTIES(${TARGET} PROPERTIES FOLDER ${MODULE_SUBFOLDER}) 7 #IF(BREAKPAD_FOUND) 8 # ADD_CUSTOM_COMMAND(TARGET ${TARGET} 9 # POST_BUILD 10 # COMMAND ${BREAKPAD_DUMPSYMS_EXE} ${BUILD_TARGET_LIB_PATH}/${TARGET}.pdb > ${BUILD_TARGET_LIB_PATH}/${TARGET}.sym 11 # COMMENT Building symbols into ${BUILD_TARGET_LIB_PATH}/${TARGET}.sym 12 # ) 13 #ENDIF(BREAKPAD_FOUND) 7 14 8 15 INSTALL(TARGETS ${TARGET} LIBRARY DESTINATION ${MODULE_SUBFOLDER}) 9 INSTALL(CODE "SET(PDB_FULL_PATH ${BUILD_TARGET_LIB_PATH}/${TARGET}.pdb)") 10 INSTALL(CODE "FILE(INSTALL DESTINATION \${CMAKE_INSTALL_PREFIX}/${MODULE_SUBFOLDER} TYPE EXECUTABLE FILES \${PDB_FULL_PATH})") 11 16 #IF(BREAKPAD_FOUND) 17 # INSTALL(CODE "SET(PDB_FULL_PATH ${BUILD_TARGET_LIB_PATH}/${TARGET}.pdb)") 18 # INSTALL(CODE "SET(SYM_FULL_PATH ${BUILD_TARGET_LIB_PATH}/${TARGET}.sym)") 19 # INSTALL(CODE "ADD_CUSTOM_COMMAND(OUTPUT \${SYM_FULL_PATH} COMMAND ${BREAKPAD_DUMPSYMS_EXE} \${PDB_FULL_PATH} > \${SYM_FULL_PATH})") 20 # INSTALL(CODE "FILE(INSTALL DESTINATION \${CMAKE_INSTALL_PREFIX}/${MODULE_SUBFOLDER} TYPE EXECUTABLE FILES \${SYM_FULL_PATH})") 21 #ENDIF(BREAKPAD_FOUND) -
build/cmake/wix.cmake
rb7d17f8 r7ec3dd1 194 194 OUTPUT ${_target} 195 195 COMMAND ${WIX_LIGHT} 196 ARGS ${WIX_LINK_FLAGS_A} 196 ARGS ${WIX_LINK_FLAGS_A} 197 -b ${CMAKE_CURRENT_SOURCE_DIR} 197 198 -ext WixUIExtension 198 199 -ext WixFirewallExtension … … 224 225 SET(WIX_OBJ_LIST) 225 226 WIX_COMPILE("${_sources}" WIX_OBJ_LIST "${_dependencies}") 226 WIX_LINK(${_target}.msi WIX_OBJ_LIST "${_loc_files}") 227 ADD_CUSTOM_TARGET(${_target} 228 DEPENDS ${_target}.msi 227 SET(TNAME "${_target}-${VERSION_SERIES}.${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_BUILD}-${VERSION_ARCH}.msi") 228 WIX_LINK(${TNAME} WIX_OBJ_LIST "${_loc_files}") 229 ADD_CUSTOM_TARGET(${_target}_installer 230 ALL 231 DEPENDS ${TNAME} 229 232 SOURCES ${_sources} 230 233 ) -
build/python/version.py
rd66ccee r7ec3dd1 5 5 from datetime import date 6 6 from optparse import OptionParser 7 from VersionHandler import VersionHandler 7 8 8 class Version: 9 def __init__(self, file): 10 self.file = file 11 self.major = 0 12 self.minor = 0 13 self.revision = 0 14 self.build = 1 15 self.touch() 16 17 def read(self): 18 try: 19 f = open(self.file, 'r') 20 lines = f.readlines() 21 f.close() 22 for line in lines: 23 self.readline(line) 24 25 #if line.find(' PRODUCTVER ') != -1: 26 # m = re.search('.*(\d),(\d),(\d),(\d).*', line) 27 # print 'Parsed: %s as %s'%(line, m.groups()) 28 # return (int(m.group(1)), int(m.group(2)), int(m.group(3)), int(m.group(4))) 29 except IOError as e: 30 print 'File not found: %s (%s)'%(self.file, e) 31 sys.exit(1) 32 33 def readline(self, line): 34 line = line.strip('\r\n\t ') 35 if len(line) == 0: 36 return 37 try: 38 m = re.search('(.*)=(.*)$', line) 39 if not m: 40 print 'Failed to parse line: %s'%(line.strip('\n\t ')) 41 return 42 self.set(m.group(1), m.group(2)) 43 except IndexError as e: 44 print 'Failed to parse line: %s (%s)'%(line.strip('\n\t '),e) 9 parser = OptionParser() 10 parser.add_option("-f", "--file", dest="filename", 11 help="File to update version in", metavar="FILE") 12 parser.add_option("-g", "--generate-hpp", dest="targetHPP", 13 help="Generate a HPP file") 14 parser.add_option("-c", "--create", action="store_true", dest="create", 15 help="Create a new file") 16 parser.add_option("-d", "--display", action="store_true", dest="display", 17 help="Display the current version") 18 parser.add_option("-u", "--update", 19 dest="update", default='build', 20 help="Update a file (major, minor, revision, build)") 45 21 46 def set(self,k,v): 47 if k == 'version': 48 m = re.search('.*(\d).(\d).(\d).*', v) 49 (self.major, self.minor, self.revision) = [int(e) for e in m.groups()] 50 elif k == 'build': 51 self.build = int(v) 52 elif k == 'date': 53 self.date = v 54 55 def touch(self): 56 today = date.today() 57 self.date = today.isoformat() 58 59 def version(self): 60 return '%d.%d.%d.%d'%(self.major, self.minor, self.revision, self.build) 61 62 def __str__(self): 63 return 'version: %s, date %s'%(self.version(), self.date) 22 (options, args) = parser.parse_args() 23 version = None 24 if options.filename and options.create: 25 version = VersionHandler(options.filename) 26 version.create() 27 elif options.filename and options.update: 28 version = VersionHandler(options.filename) 29 version.read() 30 version.increment(options.update) 31 version.touch() 32 version.write() 33 else: 34 parser.print_help() 64 35 65 def __repr__(self): 66 return 'version: %s, date %s'%(self.version(), self.date) 67 68 def increment(self, key): 69 if key == 'build': 70 self.build += 1 71 elif key == 'revision': 72 self.revision += 1 73 self.build = 0 74 elif key == 'minor': 75 self.minor += 1 76 self.revision = 0 77 self.build = 0 78 elif key == 'major': 79 self.major += 1 80 self.minor = 0 81 self.revision = 0 82 self.build = 0 83 84 def print_version(self): 85 print '%d.%d.%d.%d'%(self.major, self.minor, self.revision, self.build) 86 87 def write_hpp(self, file): 88 f = open(file, 'w') 89 (ignored, filename) = os.path.split(file) 90 name = filename.upper().replace('.', '_') 91 92 f.write('#ifndef %s\n'%name) 93 f.write('#define %s\n'%name) 94 95 f.write('#define PRODUCTVER %d,%d,%d,%d\n'%(self.major, self.minor, self.revision, self.build)) 96 f.write('#define STRPRODUCTVER "%d,%d,%d,%d"\n'%(self.major, self.minor, self.revision, self.build)) 97 f.write('#define STRPRODUCTDATE "%s"\n'%(self.date)) 98 99 f.write('#endif // %s\n'%name) 100 f.close() 101 102 def run(): 103 parser = OptionParser() 104 parser.add_option("-f", "--file", dest="filename", 105 help="File to update version in", metavar="FILE") 106 parser.add_option("-g", "--generate-hpp", dest="targetHPP", 107 help="Generate a HPP file") 108 parser.add_option("-c", "--create", action="store_true", dest="create", 109 help="Create a new file") 110 parser.add_option("-d", "--display", action="store_true", dest="display", 111 help="Display the current version") 112 parser.add_option("-u", "--update", 113 dest="update", default='build', 114 help="Update a file (major, minor, revision, build)") 115 116 (options, args) = parser.parse_args() 117 version = None 118 if options.filename and options.create: 119 version = Version(options.filename) 120 version.create() 121 elif options.filename and options.update: 122 version = Version(options.filename) 123 version.read() 124 version.increment(options.update) 125 else: 126 parser.print_help() 127 128 if options.targetHPP: 129 version.write_hpp(options.targetHPP) 130 if options.display: 131 version.print_version() 36 if options.targetHPP: 37 version.write_hpp(options.targetHPP) 38 if options.display: 39 version.print_version() 132 40 133 41 134 run()
Note: See TracChangeset
for help on using the changeset viewer.








