forked from quickshell/quickshell
		
	build: add git revision to version
This commit is contained in:
		
							parent
							
								
									73fd022b1e
								
							
						
					
					
						commit
						b720dfa165
					
				
					 4 changed files with 24 additions and 3 deletions
				
			
		| 
						 | 
					@ -1,5 +1,5 @@
 | 
				
			||||||
cmake_minimum_required(VERSION 3.20)
 | 
					cmake_minimum_required(VERSION 3.20)
 | 
				
			||||||
project(quickshell VERSION "0.0.1")
 | 
					project(quickshell VERSION "0.1.0")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
set(QT_MIN_VERSION "6.6.0")
 | 
					set(QT_MIN_VERSION "6.6.0")
 | 
				
			||||||
set(CMAKE_CXX_STANDARD 20)
 | 
					set(CMAKE_CXX_STANDARD 20)
 | 
				
			||||||
| 
						 | 
					@ -21,6 +21,14 @@ if (WAYLAND)
 | 
				
			||||||
	message(STATUS "    Session Lock: ${WAYLAND_SESSION_LOCK}")
 | 
						message(STATUS "    Session Lock: ${WAYLAND_SESSION_LOCK}")
 | 
				
			||||||
endif ()
 | 
					endif ()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if (NOT DEFINED GIT_REVISION)
 | 
				
			||||||
 | 
						execute_process(
 | 
				
			||||||
 | 
							COMMAND git rev-parse HEAD
 | 
				
			||||||
 | 
							WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
 | 
				
			||||||
 | 
							OUTPUT_VARIABLE GIT_REVISION
 | 
				
			||||||
 | 
						)
 | 
				
			||||||
 | 
					endif()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
add_compile_options(-Wall -Wextra)
 | 
					add_compile_options(-Wall -Wextra)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# nix workaround
 | 
					# nix workaround
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										14
									
								
								default.nix
									
										
									
									
									
								
							
							
						
						
									
										14
									
								
								default.nix
									
										
									
									
									
								
							| 
						 | 
					@ -11,6 +11,16 @@
 | 
				
			||||||
  wayland,
 | 
					  wayland,
 | 
				
			||||||
  wayland-protocols,
 | 
					  wayland-protocols,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  gitRev ? (let
 | 
				
			||||||
 | 
					    headExists = builtins.pathExists ./.git/HEAD;
 | 
				
			||||||
 | 
					    headContent = builtins.readFile ./.git/HEAD;
 | 
				
			||||||
 | 
					  in if headExists
 | 
				
			||||||
 | 
					     then (let
 | 
				
			||||||
 | 
					       matches = builtins.match "ref: refs/heads/(.*)\n" headContent;
 | 
				
			||||||
 | 
					     in if matches != null
 | 
				
			||||||
 | 
					        then builtins.readFile ./.git/refs/heads/${builtins.elemAt matches 0}
 | 
				
			||||||
 | 
					        else headContent)
 | 
				
			||||||
 | 
					     else "unknown"),
 | 
				
			||||||
  debug ? false,
 | 
					  debug ? false,
 | 
				
			||||||
  enableWayland ? true,
 | 
					  enableWayland ? true,
 | 
				
			||||||
}: stdenv.mkDerivation {
 | 
					}: stdenv.mkDerivation {
 | 
				
			||||||
| 
						 | 
					@ -44,7 +54,9 @@
 | 
				
			||||||
    cmakeConfigurePhase
 | 
					    cmakeConfigurePhase
 | 
				
			||||||
  '';
 | 
					  '';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  cmakeFlags = lib.optional (!enableWayland) "-DWAYLAND=OFF";
 | 
					  cmakeFlags = [
 | 
				
			||||||
 | 
					    "-DGIT_REVISION=${gitRev}"
 | 
				
			||||||
 | 
					  ] ++ lib.optional (!enableWayland) "-DWAYLAND=OFF";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  buildPhase = "ninjaBuildPhase";
 | 
					  buildPhase = "ninjaBuildPhase";
 | 
				
			||||||
  enableParallelBuilding = true;
 | 
					  enableParallelBuilding = true;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -17,6 +17,7 @@ qt_add_executable(quickshell
 | 
				
			||||||
	panelinterface.cpp
 | 
						panelinterface.cpp
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					set_source_files_properties(main.cpp PROPERTIES COMPILE_DEFINITIONS GIT_REVISION="${GIT_REVISION}")
 | 
				
			||||||
qt_add_qml_module(quickshell URI Quickshell VERSION 0.1)
 | 
					qt_add_qml_module(quickshell URI Quickshell VERSION 0.1)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
target_link_libraries(quickshell PRIVATE ${QT_DEPS})
 | 
					target_link_libraries(quickshell PRIVATE ${QT_DEPS})
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -20,7 +20,7 @@
 | 
				
			||||||
int main(int argc, char** argv) {
 | 
					int main(int argc, char** argv) {
 | 
				
			||||||
	const auto app = QGuiApplication(argc, argv);
 | 
						const auto app = QGuiApplication(argc, argv);
 | 
				
			||||||
	QGuiApplication::setApplicationName("quickshell");
 | 
						QGuiApplication::setApplicationName("quickshell");
 | 
				
			||||||
	QGuiApplication::setApplicationVersion("0.1.0");
 | 
						QGuiApplication::setApplicationVersion("0.1.0 (" GIT_REVISION ")");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	QCommandLineParser parser;
 | 
						QCommandLineParser parser;
 | 
				
			||||||
	parser.addHelpOption();
 | 
						parser.addHelpOption();
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue