Improved build system
This commit is contained in:
		
							parent
							
								
									b1727206c0
								
							
						
					
					
						commit
						ea7c82ec42
					
				
							
								
								
									
										266
									
								
								Jenkinsfile
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										266
									
								
								Jenkinsfile
									
									
									
									
										vendored
									
									
								
							@ -3,7 +3,10 @@ pipeline {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    parameters {
 | 
					    parameters {
 | 
				
			||||||
       booleanParam(defaultValue: true, description: 'Deploy this build', name: 'deploy_build')
 | 
					       booleanParam(defaultValue: true, description: 'Deploy this build', name: 'deploy_build')
 | 
				
			||||||
       choice(choices: ['none', 'x86_debug', 'x86_release', 'x86_stable', 'amd64_debug', 'amd64_release', 'amd64_stable', 'arm32v7_debug', 'arm32v7_release', 'arm32v7_stable'], description: 'Which target do you want to build?', name: 'target')
 | 
					       booleanParam(name: 'build_amd64', defaultValue: false, description: 'Build for amd64')
 | 
				
			||||||
 | 
					       booleanParam(name: 'build_arm32v7', defaultValue: false, description: 'Build for arm32v7')
 | 
				
			||||||
 | 
					       booleanParam(name: 'build_x86', defaultValue: false, description: 'Build for x86')
 | 
				
			||||||
 | 
					       choice(choices: ['none', 'debug', 'optimized', 'stable'], description: 'What kind of build do you want to run?', name: 'build_type')
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    environment {
 | 
					    environment {
 | 
				
			||||||
@ -23,8 +26,9 @@ pipeline {
 | 
				
			|||||||
            agent {
 | 
					            agent {
 | 
				
			||||||
                label 'linux && amd64 && teaspeak'
 | 
					                label 'linux && amd64 && teaspeak'
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            when {
 | 
					            when {
 | 
				
			||||||
				expression { params.target == "amd64_debug" || params.target == "amd64_release" || params.target == "amd64_stable" }
 | 
					                expression { params.build_amd64 }
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
                        
 | 
					                        
 | 
				
			||||||
            environment {
 | 
					            environment {
 | 
				
			||||||
@ -45,96 +49,19 @@ pipeline {
 | 
				
			|||||||
                }
 | 
					                }
 | 
				
			||||||
                
 | 
					                
 | 
				
			||||||
                
 | 
					                
 | 
				
			||||||
				stage ('build::amd64::debug') {
 | 
					                stage ('build::amd64::build') {
 | 
				
			||||||
					when {
 | 
					 | 
				
			||||||
						expression { params.target == "amd64_debug" }
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
					
 | 
					 | 
				
			||||||
					stages {
 | 
					 | 
				
			||||||
						stage ('build::amd64::debug::build') {
 | 
					 | 
				
			||||||
							environment {
 | 
					 | 
				
			||||||
								TEASPEAK_BUILD_TYPE="Debug"
 | 
					 | 
				
			||||||
								CMAKE_BUILD_TYPE="Debug"
 | 
					 | 
				
			||||||
								
 | 
					 | 
				
			||||||
								TEASPEAK_DEPLOY_TYPE_SPECIFIER="-DBUILD_TYPE=1 -DBUILD_TYPE_NAME='beta'"
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                    steps {
 | 
					                    steps {
 | 
				
			||||||
                        sh './build_teaspeak.sh'
 | 
					                        sh './build_teaspeak.sh'
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
						stage ('build::amd64::debug::deploy') {
 | 
					                stage ('build::amd64::deploy') {
 | 
				
			||||||
                    when {
 | 
					                    when {
 | 
				
			||||||
                        expression { params.deploy_build }
 | 
					                        expression { params.deploy_build }
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                    steps {
 | 
					                    steps {
 | 
				
			||||||
								sh 'cd TeaSpeak/server/repro/; chmod 400 build_private_key; ./build.sh linux/amd64_debug'
 | 
					                        sh 'cd TeaSpeak/server/repro/; chmod 400 build_private_key; ./build.sh linux/amd64_${params.build_type}'
 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
				}
 | 
					 | 
				
			||||||
				
 | 
					 | 
				
			||||||
				stage ('build::amd64::release') {
 | 
					 | 
				
			||||||
					when {
 | 
					 | 
				
			||||||
						expression { params.target == "amd64_release" }
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
					
 | 
					 | 
				
			||||||
					stages {
 | 
					 | 
				
			||||||
						stage ('build::amd64::release::build') {
 | 
					 | 
				
			||||||
							environment {
 | 
					 | 
				
			||||||
								TEASPEAK_BUILD_TYPE="Release"
 | 
					 | 
				
			||||||
								CMAKE_BUILD_TYPE="RelWithDebInfo"
 | 
					 | 
				
			||||||
								
 | 
					 | 
				
			||||||
								TEASPEAK_DEPLOY_TYPE_SPECIFIER="-DBUILD_TYPE=1 -DBUILD_TYPE_NAME='beta'"
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
							steps {
 | 
					 | 
				
			||||||
								sh './build_teaspeak.sh'
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
						stage ('build::amd64::release::deploy') {
 | 
					 | 
				
			||||||
							when {
 | 
					 | 
				
			||||||
								expression { params.deploy_build }
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
							steps {
 | 
					 | 
				
			||||||
								sh 'cd TeaSpeak/server/repro/; chmod 400 build_private_key; ./build.sh linux/amd64_optimized'
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
				}
 | 
					 | 
				
			||||||
				
 | 
					 | 
				
			||||||
				stage ('build::amd64::stable') {
 | 
					 | 
				
			||||||
					when {
 | 
					 | 
				
			||||||
						expression { params.target == "amd64_stable" }
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
					
 | 
					 | 
				
			||||||
					stages {
 | 
					 | 
				
			||||||
						stage ('build::amd64::stable::build') {
 | 
					 | 
				
			||||||
							environment {
 | 
					 | 
				
			||||||
								TEASPEAK_BUILD_TYPE="Release"
 | 
					 | 
				
			||||||
								CMAKE_BUILD_TYPE="RelWithDebInfo"
 | 
					 | 
				
			||||||
								
 | 
					 | 
				
			||||||
								TEASPEAK_DEPLOY_TYPE_SPECIFIER="-DBUILD_TYPE=0 -DBUILD_TYPE_NAME=''"
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
							steps {
 | 
					 | 
				
			||||||
								sh './build_teaspeak.sh'
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
						stage ('build::amd64::stable::deploy') {
 | 
					 | 
				
			||||||
							when {
 | 
					 | 
				
			||||||
								expression { params.deploy_build }
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
							steps {
 | 
					 | 
				
			||||||
								sh 'cd TeaSpeak/server/repro/; chmod 400 build_private_key; ./build.sh linux/amd64_stable'
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
@ -145,8 +72,9 @@ pipeline {
 | 
				
			|||||||
            agent {
 | 
					            agent {
 | 
				
			||||||
                label 'linux && x86 && teaspeak'
 | 
					                label 'linux && x86 && teaspeak'
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            when {
 | 
					            when {
 | 
				
			||||||
				expression { params.target == "x86_debug" || params.target == "x86_release" || params.target == "x86_stable" }
 | 
					                expression { params.build_x86 }
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
                        
 | 
					                        
 | 
				
			||||||
            environment {
 | 
					            environment {
 | 
				
			||||||
@ -158,7 +86,6 @@ pipeline {
 | 
				
			|||||||
                stage ('build::x86::libraries') {
 | 
					                stage ('build::x86::libraries') {
 | 
				
			||||||
                    environment {
 | 
					                    environment {
 | 
				
			||||||
                        CMAKE_BUILD_TYPE="RelWithDebInfo" /* we build out libraries every time in release mode! (Performance improve) */
 | 
					                        CMAKE_BUILD_TYPE="RelWithDebInfo" /* we build out libraries every time in release mode! (Performance improve) */
 | 
				
			||||||
						BUILD_ARCH_TARGET="x86"
 | 
					 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                    steps {
 | 
					                    steps {
 | 
				
			||||||
@ -168,96 +95,19 @@ pipeline {
 | 
				
			|||||||
                }
 | 
					                }
 | 
				
			||||||
                
 | 
					                
 | 
				
			||||||
                
 | 
					                
 | 
				
			||||||
				stage ('build::x86::debug') {
 | 
					                stage ('build::x86::build') {
 | 
				
			||||||
					when {
 | 
					 | 
				
			||||||
						expression { params.target == "x86_debug" }
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
					
 | 
					 | 
				
			||||||
					stages {
 | 
					 | 
				
			||||||
						stage ('build::x86::debug::build') {
 | 
					 | 
				
			||||||
							environment {
 | 
					 | 
				
			||||||
								TEASPEAK_BUILD_TYPE="Debug"
 | 
					 | 
				
			||||||
								CMAKE_BUILD_TYPE="Debug"
 | 
					 | 
				
			||||||
								
 | 
					 | 
				
			||||||
								TEASPEAK_DEPLOY_TYPE_SPECIFIER="-DBUILD_TYPE=1 -DBUILD_TYPE_NAME='beta'"
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                    steps {
 | 
					                    steps {
 | 
				
			||||||
                        sh './build_teaspeak.sh'
 | 
					                        sh './build_teaspeak.sh'
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
						stage ('build::x86::debug::deploy') {
 | 
					                stage ('build::x86::deploy') {
 | 
				
			||||||
                    when {
 | 
					                    when {
 | 
				
			||||||
                        expression { params.deploy_build }
 | 
					                        expression { params.deploy_build }
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                    steps {
 | 
					                    steps {
 | 
				
			||||||
								sh 'cd TeaSpeak/server/repro/; chmod 400 build_private_key; ./build.sh linux/x86_debug'
 | 
					                        sh 'cd TeaSpeak/server/repro/; chmod 400 build_private_key; ./build.sh linux/x86_${params.build_type}'
 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
				}
 | 
					 | 
				
			||||||
				
 | 
					 | 
				
			||||||
				stage ('build::x86::release') {
 | 
					 | 
				
			||||||
					when {
 | 
					 | 
				
			||||||
						expression { params.target == "x86_release" }
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
					
 | 
					 | 
				
			||||||
					stages {
 | 
					 | 
				
			||||||
						stage ('build::x86::release::build') {
 | 
					 | 
				
			||||||
							environment {
 | 
					 | 
				
			||||||
								TEASPEAK_BUILD_TYPE="Release"
 | 
					 | 
				
			||||||
								CMAKE_BUILD_TYPE="RelWithDebInfo"
 | 
					 | 
				
			||||||
								
 | 
					 | 
				
			||||||
								TEASPEAK_DEPLOY_TYPE_SPECIFIER="-DBUILD_TYPE=1 -DBUILD_TYPE_NAME='beta'"
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
							steps {
 | 
					 | 
				
			||||||
								sh './build_teaspeak.sh'
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
						stage ('build::x86::release::deploy') {
 | 
					 | 
				
			||||||
							when {
 | 
					 | 
				
			||||||
								expression { params.deploy_build }
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
							steps {
 | 
					 | 
				
			||||||
								sh 'cd TeaSpeak/server/repro/; chmod 400 build_private_key; ./build.sh linux/x86_optimized'
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
				}
 | 
					 | 
				
			||||||
				
 | 
					 | 
				
			||||||
				stage ('build::x86::stable') {
 | 
					 | 
				
			||||||
					when {
 | 
					 | 
				
			||||||
						expression { params.target == "x86_stable" }
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
					
 | 
					 | 
				
			||||||
					stages {
 | 
					 | 
				
			||||||
						stage ('build::x86::stable::build') {
 | 
					 | 
				
			||||||
							environment {
 | 
					 | 
				
			||||||
								TEASPEAK_BUILD_TYPE="Release"
 | 
					 | 
				
			||||||
								CMAKE_BUILD_TYPE="RelWithDebInfo"
 | 
					 | 
				
			||||||
								
 | 
					 | 
				
			||||||
								TEASPEAK_DEPLOY_TYPE_SPECIFIER="-DBUILD_TYPE=0 -DBUILD_TYPE_NAME=''"
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
							steps {
 | 
					 | 
				
			||||||
								sh './build_teaspeak.sh'
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
						stage ('build::x86::stable::deploy') {
 | 
					 | 
				
			||||||
							when {
 | 
					 | 
				
			||||||
								expression { params.deploy_build }
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
							steps {
 | 
					 | 
				
			||||||
								sh 'cd TeaSpeak/server/repro/; chmod 400 build_private_key; ./build.sh linux/x86_stable'
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
@ -268,8 +118,9 @@ pipeline {
 | 
				
			|||||||
            agent {
 | 
					            agent {
 | 
				
			||||||
                label 'linux && arm32v7 && teaspeak'
 | 
					                label 'linux && arm32v7 && teaspeak'
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            when {
 | 
					            when {
 | 
				
			||||||
				expression { params.target == "arm32v7_debug" || params.target == "arm32v7_release" || params.target == "arm32v7_stable" }
 | 
					                expression { params.build_arm32v7 }
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
                        
 | 
					                        
 | 
				
			||||||
            environment {
 | 
					            environment {
 | 
				
			||||||
@ -278,7 +129,7 @@ pipeline {
 | 
				
			|||||||
            }
 | 
					            }
 | 
				
			||||||
            
 | 
					            
 | 
				
			||||||
            stages {
 | 
					            stages {
 | 
				
			||||||
				stage ('build::arm32v7::libraries') {
 | 
					                stage ('build::x86::libraries') {
 | 
				
			||||||
                    environment {
 | 
					                    environment {
 | 
				
			||||||
                        CMAKE_BUILD_TYPE="RelWithDebInfo" /* we build out libraries every time in release mode! (Performance improve) */
 | 
					                        CMAKE_BUILD_TYPE="RelWithDebInfo" /* we build out libraries every time in release mode! (Performance improve) */
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
@ -290,96 +141,19 @@ pipeline {
 | 
				
			|||||||
                }
 | 
					                }
 | 
				
			||||||
                
 | 
					                
 | 
				
			||||||
                
 | 
					                
 | 
				
			||||||
				stage ('build::arm32v7::debug') {
 | 
					                stage ('build::arm32v7::build') {
 | 
				
			||||||
					when {
 | 
					 | 
				
			||||||
						expression { params.target == "arm32v7_debug" }
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
					
 | 
					 | 
				
			||||||
					stages {
 | 
					 | 
				
			||||||
						stage ('build::amd64::debug::build') {
 | 
					 | 
				
			||||||
							environment {
 | 
					 | 
				
			||||||
								TEASPEAK_BUILD_TYPE="Debug"
 | 
					 | 
				
			||||||
								CMAKE_BUILD_TYPE="Debug"
 | 
					 | 
				
			||||||
								
 | 
					 | 
				
			||||||
								TEASPEAK_DEPLOY_TYPE_SPECIFIER="-DBUILD_TYPE=1 -DBUILD_TYPE_NAME='beta'"
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                    steps {
 | 
					                    steps {
 | 
				
			||||||
                        sh './build_teaspeak.sh'
 | 
					                        sh './build_teaspeak.sh'
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
						stage ('build::amd64::debug::deploy') {
 | 
					                stage ('build::arm32v7::deploy') {
 | 
				
			||||||
                    when {
 | 
					                    when {
 | 
				
			||||||
                        expression { params.deploy_build }
 | 
					                        expression { params.deploy_build }
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                    steps {
 | 
					                    steps {
 | 
				
			||||||
								sh 'cd TeaSpeak/server/repro/; chmod 400 build_private_key; ./build.sh linux/arm32v7_debug'
 | 
					                        sh 'cd TeaSpeak/server/repro/; chmod 400 build_private_key; ./build.sh linux/arm32v7_${params.build_type}'
 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
				}
 | 
					 | 
				
			||||||
				
 | 
					 | 
				
			||||||
				stage ('build::arm32v7::release') {
 | 
					 | 
				
			||||||
					when {
 | 
					 | 
				
			||||||
						expression { params.target == "arm32v7_release" }
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
					
 | 
					 | 
				
			||||||
					stages {
 | 
					 | 
				
			||||||
						stage ('build::arm32v7::release::build') {
 | 
					 | 
				
			||||||
							environment {
 | 
					 | 
				
			||||||
								TEASPEAK_BUILD_TYPE="Release"
 | 
					 | 
				
			||||||
								CMAKE_BUILD_TYPE="RelWithDebInfo"
 | 
					 | 
				
			||||||
								
 | 
					 | 
				
			||||||
								TEASPEAK_DEPLOY_TYPE_SPECIFIER="-DBUILD_TYPE=1 -DBUILD_TYPE_NAME='beta'"
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
							steps {
 | 
					 | 
				
			||||||
								sh './build_teaspeak.sh'
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
						stage ('build::arm32v7::release::deploy') {
 | 
					 | 
				
			||||||
							when {
 | 
					 | 
				
			||||||
								expression { params.deploy_build }
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
							steps {
 | 
					 | 
				
			||||||
								sh 'cd TeaSpeak/server/repro/; chmod 400 build_private_key; ./build.sh linux/arm32v7_optimized'
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
				}
 | 
					 | 
				
			||||||
				
 | 
					 | 
				
			||||||
				stage ('build::arm32v7::stable') {
 | 
					 | 
				
			||||||
					when {
 | 
					 | 
				
			||||||
						expression { params.target == "arm32v7_stable" }
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
					
 | 
					 | 
				
			||||||
					stages {
 | 
					 | 
				
			||||||
						stage ('build::arm32v7::stable::build') {
 | 
					 | 
				
			||||||
							environment {
 | 
					 | 
				
			||||||
								TEASPEAK_BUILD_TYPE="Release"
 | 
					 | 
				
			||||||
								CMAKE_BUILD_TYPE="RelWithDebInfo"
 | 
					 | 
				
			||||||
								
 | 
					 | 
				
			||||||
								TEASPEAK_DEPLOY_TYPE_SPECIFIER="-DBUILD_TYPE=0 -DBUILD_TYPE_NAME=''"
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
							steps {
 | 
					 | 
				
			||||||
								sh './build_teaspeak.sh'
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
						stage ('build::arm32v7::stable::deploy') {
 | 
					 | 
				
			||||||
							when {
 | 
					 | 
				
			||||||
								expression { params.deploy_build }
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
							steps {
 | 
					 | 
				
			||||||
								sh 'cd TeaSpeak/server/repro/; chmod 400 build_private_key; ./build.sh linux/arm32v7_stable'
 | 
					 | 
				
			||||||
							}
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
				
			|||||||
@ -1,6 +1,33 @@
 | 
				
			|||||||
#!/bin/bash
 | 
					#!/bin/bash
 | 
				
			||||||
_build_helper_dir="$(pwd)/build-helpers"
 | 
					_build_helper_dir="$(pwd)/build-helpers"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					_build_type="Debug"
 | 
				
			||||||
 | 
					if [[ -n "${params.build_type}" ]]; then
 | 
				
			||||||
 | 
					    echo "This is an automated jenkins build. Initializing variables."
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    if [[ "${params.build_type}" == "debug" ]]; then
 | 
				
			||||||
 | 
					        echo "Initializing debug session."
 | 
				
			||||||
 | 
					        export _build_type="Debug"
 | 
				
			||||||
 | 
					        # shellcheck disable=SC2089
 | 
				
			||||||
 | 
					        export TEASPEAK_DEPLOY_TYPE_SPECIFIER="-DBUILD_TYPE=1 -DBUILD_TYPE_NAME=\"beta\""
 | 
				
			||||||
 | 
					    elif [[ "${params.build_type}" == "optimized" ]]; then
 | 
				
			||||||
 | 
					        echo "Initializing optimized session."
 | 
				
			||||||
 | 
					        export _build_type="RelWithDebInfo"
 | 
				
			||||||
 | 
					        # shellcheck disable=SC2089
 | 
				
			||||||
 | 
					        export TEASPEAK_DEPLOY_TYPE_SPECIFIER="-DBUILD_TYPE=1 -DBUILD_TYPE_NAME=\"beta\""
 | 
				
			||||||
 | 
					    elif [[ "${params.build_type}" == "stable" ]]; then
 | 
				
			||||||
 | 
					        echo "Initializing stable session."
 | 
				
			||||||
 | 
					        export _build_type="RelWithDebInfo"
 | 
				
			||||||
 | 
					        # shellcheck disable=SC2089
 | 
				
			||||||
 | 
					        export TEASPEAK_DEPLOY_TYPE_SPECIFIER="-DBUILD_TYPE=0 -DBUILD_TYPE_NAME=\"\""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    else
 | 
				
			||||||
 | 
					        echo "Unknown target build type: ${params.build_type}"
 | 
				
			||||||
 | 
					        exit 1
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# shellcheck disable=SC2154
 | 
					# shellcheck disable=SC2154
 | 
				
			||||||
if [[ "$no_web" == "1" ]]; then
 | 
					if [[ "$no_web" == "1" ]]; then
 | 
				
			||||||
    echo "Disabling web support"
 | 
					    echo "Disabling web support"
 | 
				
			||||||
@ -10,13 +37,14 @@ else
 | 
				
			|||||||
fi
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
cd TeaSpeak || exit 1
 | 
					cd TeaSpeak || exit 1
 | 
				
			||||||
if [ -d build ]; then
 | 
					if [[ -d build ]]; then
 | 
				
			||||||
	rm -r build
 | 
						rm -r build
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
mkdir build && cd build || exit 1
 | 
					mkdir build || exit 1
 | 
				
			||||||
 | 
					cd build || exit 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
echo "Build type: ${TEASPEAK_BUILD_TYPE}"
 | 
					echo "Build type: $_build_type"
 | 
				
			||||||
cmake .. -DCMAKE_BUILD_TYPE="${TEASPEAK_BUILD_TYPE}" -DCMAKE_CXX_FLAGS=" ${CXX_FLAGS}" -DBUILD_INCLUDE_FILE="$_build_helper_dir"/cmake/config/tearoot-server.cmake -DCMAKE_MODULE_PATH="$_build_helper_dir"/cmake/ -DDISABLE_QT=1 -DDISABLE_CUSTOM_OUTPUT=ON -DDISABLE_QT=ON -DCOMPILE_WEB_CLIENT="$_web_flag" $TEASPEAK_DEPLOY_TYPE_SPECIFIER
 | 
					cmake .. -DCMAKE_BUILD_TYPE="$_build_type" -DCMAKE_CXX_FLAGS="${CXX_FLAGS}" -DBUILD_INCLUDE_FILE="$_build_helper_dir"/cmake/config/tearoot-server.cmake -DCMAKE_MODULE_PATH="$_build_helper_dir"/cmake/ -DDISABLE_QT=1 -DDISABLE_CUSTOM_OUTPUT=ON -DDISABLE_QT=ON -DCOMPILE_WEB_CLIENT="$_web_flag" $TEASPEAK_DEPLOY_TYPE_SPECIFIER
 | 
				
			||||||
_code=$?
 | 
					_code=$?
 | 
				
			||||||
if [[ $_code -ne 0 ]]; then
 | 
					if [[ $_code -ne 0 ]]; then
 | 
				
			||||||
	echo "Failed to run CMAKE project"
 | 
						echo "Failed to run CMAKE project"
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user