cmake improvements, default *nix user build to CMake
	
		
			
	
		
	
	
		
	
		
			All checks were successful
		
		
	
	
		
			
				
	
				continuous-integration/drone/push Build is passing
				
			
		
		
	
	
				
					
				
			
		
			All checks were successful
		
		
	
	continuous-integration/drone/push Build is passing
				
			This commit is contained in:
		
							parent
							
								
									ec93fa8ce0
								
							
						
					
					
						commit
						bbf7f08980
					
				
					 6 changed files with 129 additions and 62 deletions
				
			
		
							
								
								
									
										145
									
								
								CMakeLists.txt
									
										
									
									
									
								
							
							
						
						
									
										145
									
								
								CMakeLists.txt
									
										
									
									
									
								
							|  | @ -13,104 +13,139 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON) | |||
| 
 | ||||
| find_package(Qt5 COMPONENTS Network Svg Widgets REQUIRED) | ||||
| 
 | ||||
| add_executable(gta5view | ||||
|     config.h | ||||
| set(GTA5VIEW_SOURCES | ||||
|     main.cpp | ||||
|     AboutDialog.cpp | ||||
|     AboutDialog.h | ||||
|     AboutDialog.ui | ||||
|     AppEnv.cpp | ||||
|     AppEnv.h | ||||
|     CrewDatabase.cpp | ||||
|     CrewDatabase.h | ||||
|     DatabaseThread.cpp | ||||
|     DatabaseThread.h | ||||
|     ExportDialog.cpp | ||||
|     ExportDialog.h | ||||
|     ExportThread.cpp | ||||
|     ExportThread.h | ||||
|     GlobalString.cpp | ||||
|     GlobalString.h | ||||
|     IconLoader.cpp | ||||
|     IconLoader.h | ||||
|     ImportDialog.cpp | ||||
|     ImportDialog.h | ||||
|     ImportDialog.ui | ||||
|     JsonEditorDialog.cpp | ||||
|     JsonEditorDialog.h | ||||
|     JsonEditorDialog.ui | ||||
|     MapLocationDialog.cpp | ||||
|     MapLocationDialog.h | ||||
|     MapLocationDialog.ui | ||||
|     OptionsDialog.cpp | ||||
|     OptionsDialog.h | ||||
|     OptionsDialog.ui | ||||
|     PictureDialog.cpp | ||||
|     PictureDialog.h | ||||
|     PictureDialog.ui | ||||
|     PictureExport.cpp | ||||
|     PictureExport.h | ||||
|     PictureWidget.cpp | ||||
|     PictureWidget.h | ||||
|     PlayerListDialog.cpp | ||||
|     PlayerListDialog.h | ||||
|     PlayerListDialog.ui | ||||
|     ProfileDatabase.cpp | ||||
|     ProfileDatabase.h | ||||
|     ProfileInterface.cpp | ||||
|     ProfileInterface.h | ||||
|     ProfileInterface.ui | ||||
|     ProfileLoader.cpp | ||||
|     ProfileLoader.h | ||||
|     ProfileWidget.cpp | ||||
|     ProfileWidget.h | ||||
|     SavegameCopy.cpp | ||||
|     SavegameCopy.h | ||||
|     SavegameData.cpp | ||||
|     SavegameData.h | ||||
|     SavegameDialog.cpp | ||||
|     SavegameDialog.h | ||||
|     SavegameDialog.ui | ||||
|     SavegameWidget.cpp | ||||
|     SavegameWidget.h | ||||
|     SavegameWidget.ui | ||||
|     SidebarGenerator.cpp | ||||
|     SidebarGenerator.h | ||||
|     SnapmaticEditor.cpp | ||||
|     SnapmaticEditor.h | ||||
|     SnapmaticEditor.ui | ||||
|     SnapmaticPicture.cpp | ||||
|     SnapmaticPicture.h | ||||
|     SnapmaticWidget.cpp | ||||
|     SnapmaticWidget.h | ||||
|     SnapmaticWidget.ui | ||||
|     StandardPaths.cpp | ||||
|     StandardPaths.h | ||||
|     StringParser.cpp | ||||
|     StringParser.h | ||||
|     TranslationClass.cpp | ||||
|     TranslationClass.h | ||||
|     UserInterface.cpp | ||||
|     UserInterface.h | ||||
|     UserInterface.ui | ||||
|     anpro/imagecropper.cpp | ||||
|     anpro/imagecropper.h | ||||
|     pcg/pcg_basic.c | ||||
|     pcg/pcg_basic.h | ||||
|     res/tr_g5p.qrc | ||||
|     res/app.qrc | ||||
|     uimod/JSHighlighter.cpp | ||||
|     uimod/JSHighlighter.h | ||||
|     uimod/UiModLabel.cpp | ||||
|     uimod/UiModLabel.h | ||||
|     uimod/UiModWidget.cpp | ||||
| ) | ||||
| 
 | ||||
| set(GTA5VIEW_HEADERS | ||||
|     config.h | ||||
|     AboutDialog.h | ||||
|     AppEnv.h | ||||
|     CrewDatabase.h | ||||
|     DatabaseThread.h | ||||
|     ExportDialog.h | ||||
|     ExportThread.h | ||||
|     GlobalString.h | ||||
|     IconLoader.h | ||||
|     ImportDialog.h | ||||
|     JsonEditorDialog.h | ||||
|     MapLocationDialog.h | ||||
|     OptionsDialog.h | ||||
|     PictureDialog.h | ||||
|     PictureExport.h | ||||
|     PictureWidget.h | ||||
|     PlayerListDialog.h | ||||
|     ProfileDatabase.h | ||||
|     ProfileInterface.h | ||||
|     ProfileLoader.h | ||||
|     ProfileWidget.h | ||||
|     SavegameCopy.h | ||||
|     SavegameData.h | ||||
|     SavegameDialog.h | ||||
|     SavegameWidget.h | ||||
|     SidebarGenerator.h | ||||
|     SnapmaticEditor.h | ||||
|     SnapmaticPicture.h | ||||
|     SnapmaticWidget.h | ||||
|     StandardPaths.h | ||||
|     StringParser.h | ||||
|     TranslationClass.h | ||||
|     UserInterface.h | ||||
|     anpro/imagecropper.h | ||||
|     pcg/pcg_basic.h | ||||
|     uimod/JSHighlighter.h | ||||
|     uimod/UiModLabel.h | ||||
|     uimod/UiModWidget.h | ||||
| ) | ||||
| 
 | ||||
| set(GTA5VIEW_INCLUDEDIR | ||||
|     anpro | ||||
|     pcg | ||||
|     uimod | ||||
| ) | ||||
| 
 | ||||
| set(GTA5VIEW_FORMS | ||||
|     AboutDialog.ui | ||||
|     ExportDialog.ui | ||||
|     ImportDialog.ui | ||||
|     JsonEditorDialog.ui | ||||
|     MapLocationDialog.ui | ||||
|     OptionsDialog.ui | ||||
|     PictureDialog.ui | ||||
|     PlayerListDialog.ui | ||||
|     ProfileInterface.ui | ||||
|     SavegameDialog.ui | ||||
|     SavegameWidget.ui | ||||
|     SnapmaticEditor.ui | ||||
|     SnapmaticWidget.ui | ||||
|     UserInterface.ui | ||||
| ) | ||||
| 
 | ||||
| set(GTA5VIEW_DEFINES | ||||
|     -DGTA5SYNC_CMAKE | ||||
|     -DGTA5SYNC_PROJECT | ||||
|     -DGTA5SYNC_NOASSIST | ||||
| ) | ||||
| 
 | ||||
| set(GTA5VIEW_RESOURCES | ||||
|     res/tr_g5p.qrc | ||||
|     res/app_cmake.qrc | ||||
|     res/global.qrc | ||||
| ) | ||||
| 
 | ||||
| set_property(SOURCE res/global.qrc PROPERTY AUTORCC_OPTIONS "-threshold;0;-compress;9") | ||||
| 
 | ||||
| add_executable(gta5view | ||||
|     ${GTA5VIEW_SOURCES} | ||||
|     ${GTA5VIEW_FORMS} | ||||
|     ${GTA5VIEW_RESOURCES} | ||||
| ) | ||||
| 
 | ||||
| if(CMAKE_VERSION VERSION_GREATER_EQUAL "3.16.0") | ||||
|     target_precompile_headers(gta5view PRIVATE config.h) | ||||
| endif() | ||||
| 
 | ||||
| target_include_directories(gta5view PRIVATE anpro pcg uimod) | ||||
| target_compile_definitions(gta5view PRIVATE ${GTA5VIEW_DEFINES}) | ||||
| target_include_directories(gta5view PRIVATE ${GTA5VIEW_INCLUDEDIR}) | ||||
| target_link_libraries(gta5view PRIVATE Qt5::Network Qt5::Svg Qt5::Widgets) | ||||
| target_compile_definitions(gta5view PRIVATE -DGTA5SYNC_PROJECT -DGTA5SYNC_NOASSIST) | ||||
| 
 | ||||
| install(TARGETS gta5view DESTINATION bin) | ||||
| install(FILES res/gta5view.desktop DESTINATION share/applications) | ||||
| install(FILES res/gta5view.png DESTINATION share/pixmaps) | ||||
|  |  | |||
							
								
								
									
										10
									
								
								README.md
									
										
									
									
									
								
							
							
						
						
									
										10
									
								
								README.md
									
										
									
									
									
								
							|  | @ -24,21 +24,19 @@ Grand Theft Auto V Savegame and Snapmatic viewer/editor | |||
| 
 | ||||
| #### Build gta5view for Debian/Ubuntu | ||||
| 
 | ||||
|     sudo apt-get install git gcc g++ libqt5svg5-dev qtbase5-dev qttranslations5-l10n qt5-qmake make | ||||
|     sudo apt-get install cmake git gcc g++ libqt5svg5-dev qtbase5-dev qttranslations5-l10n make | ||||
|     git clone https://gitlab.com/Syping/gta5view && cd gta5view | ||||
|     mkdir -p build && cd build | ||||
|     ../configure --prefix=/opt/gta5view | ||||
|     make depend | ||||
|     cmake ../ | ||||
|     make -j $(nproc --all) | ||||
|     sudo make install | ||||
| 
 | ||||
| #### Build gta5view for Fedora | ||||
| 
 | ||||
|     sudo dnf install git gcc gcc-c++ qt5-qtbase-devel qt5-qtsvg-devel qt5-qttranslations make | ||||
|     sudo dnf install cmake git gcc gcc-c++ qt5-qtbase-devel qt5-qtsvg-devel qt5-qttranslations make | ||||
|     git clone https://gitlab.com/Syping/gta5view && cd gta5view | ||||
|     mkdir -p build && cd build | ||||
|     ../configure --prefix=/opt/gta5view | ||||
|     make depend | ||||
|     cmake ../ | ||||
|     make -j $(nproc --all) | ||||
|     sudo make install | ||||
| 
 | ||||
|  |  | |||
|  | @ -140,7 +140,7 @@ TRANSLATIONS += \ | |||
| 
 | ||||
| RESOURCES += \ | ||||
|     res/tr_g5p.qrc \ | ||||
|     res/app.qrc | ||||
|     res/app_qmake.qrc | ||||
| 
 | ||||
| DISTFILES += res/app.rc \ | ||||
|     res/gta5view.desktop \ | ||||
|  | @ -160,6 +160,7 @@ INCLUDEPATH += ./anpro ./pcg ./tmext ./uimod | |||
| 
 | ||||
| # GTA5SYNC/GTA5VIEW ONLY | ||||
| 
 | ||||
| DEFINES += GTA5SYNC_QMAKE # We using qmake do we? | ||||
| DEFINES += GTA5SYNC_PROJECT # Enable exclusive gta5sync/gta5view functions | ||||
| DEFINES += GTA5SYNC_NOASSIST # Not assisting at proper usage of SnapmaticPicture class | ||||
| 
 | ||||
|  |  | |||
							
								
								
									
										2
									
								
								main.cpp
									
										
									
									
									
								
							
							
						
						
									
										2
									
								
								main.cpp
									
										
									
									
									
								
							|  | @ -74,7 +74,9 @@ int main(int argc, char *argv[]) | |||
|     a.setApplicationVersion(GTA5SYNC_APPVER); | ||||
|     a.setQuitOnLastWindowClosed(false); | ||||
| 
 | ||||
| #ifdef GTA5SYNC_QMAKE | ||||
|     QResource::registerResource(":/global/global.rcc"); | ||||
| #endif | ||||
| 
 | ||||
|     QSettings settings(GTA5SYNC_APPVENDOR, GTA5SYNC_APPSTR); | ||||
|     settings.beginGroup("Startup"); | ||||
|  |  | |||
							
								
								
									
										31
									
								
								res/app_cmake.qrc
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								res/app_cmake.qrc
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,31 @@ | |||
| <RCC> | ||||
|     <qresource prefix="/img"> | ||||
|         <file>5sync-48.png</file> | ||||
|         <file>5sync-16.png</file> | ||||
|         <file>5sync-24.png</file> | ||||
|         <file>5sync-32.png</file> | ||||
|         <file>5sync-40.png</file> | ||||
|         <file>5sync-64.png</file> | ||||
|         <file>5sync-96.png</file> | ||||
|         <file>5sync-128.png</file> | ||||
|         <file>5sync-256.png</file> | ||||
|         <file>add.svgz</file> | ||||
|         <file>avatararea.png</file> | ||||
|         <file>avatarareaimport.png</file> | ||||
|         <file>back.svgz</file> | ||||
|         <file>empty1x16.png</file> | ||||
|         <file>mappreview.jpg</file> | ||||
|         <file>next.svgz</file> | ||||
|         <file>pointmaker-8.png</file> | ||||
|         <file>pointmaker-16.png</file> | ||||
|         <file>pointmaker-24.png</file> | ||||
|         <file>pointmaker-32.png</file> | ||||
|         <file>savegame.svgz</file> | ||||
|         <file>watermark_1b.png</file> | ||||
|         <file>watermark_2b.png</file> | ||||
|         <file>watermark_2r.png</file> | ||||
|     </qresource> | ||||
|     <qresource prefix="/template"> | ||||
|         <file>template.g5e</file> | ||||
|     </qresource> | ||||
| </RCC> | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue