mirror of
				https://github.com/ohwgiles/laminar.git
				synced 2025-06-13 12:54:29 +00:00 
			
		
		
		
	pkg: add build script for centos 8
This commit is contained in:
		
							parent
							
								
									4534cb8627
								
							
						
					
					
						commit
						a0da7b109e
					
				
							
								
								
									
										78
									
								
								pkg/centos8-x86_64.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										78
									
								
								pkg/centos8-x86_64.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,78 @@ | ||||
| #!/bin/bash -e | ||||
| 
 | ||||
| OUTPUT_DIR=$PWD | ||||
| 
 | ||||
| SOURCE_DIR=$(readlink -f $(dirname ${BASH_SOURCE[0]})/..) | ||||
| 
 | ||||
| VERSION=$(cd "$SOURCE_DIR" && git describe --tags --abbrev=8 --dirty | tr - .)~upstream_centos8 | ||||
| 
 | ||||
| DOCKER_TAG=$(docker build -q - <<EOS | ||||
| FROM centos:8 | ||||
| RUN dnf -y install rpm-build cmake make gcc-c++ wget sqlite-devel boost-devel zlib-devel | ||||
| EOS | ||||
| ) | ||||
| 
 | ||||
| docker run --rm -i -v $SOURCE_DIR:/root/rpmbuild/SOURCES/laminar-$VERSION:ro -v $OUTPUT_DIR:/output $DOCKER_TAG bash -xe <<EOS | ||||
| mkdir /build | ||||
| cd /build | ||||
| 
 | ||||
| wget -O capnproto.tar.gz https://github.com/capnproto/capnproto/archive/v0.7.0.tar.gz | ||||
| wget -O rapidjson.tar.gz https://github.com/miloyip/rapidjson/archive/v1.1.0.tar.gz | ||||
| md5sum -c <<EOF | ||||
| a9de5f042f4cf05515c2d7dfc7f5df21  capnproto.tar.gz | ||||
| badd12c511e081fec6c89c43a7027bce  rapidjson.tar.gz | ||||
| EOF | ||||
| 
 | ||||
| tar xzf capnproto.tar.gz | ||||
| tar xzf rapidjson.tar.gz | ||||
| 
 | ||||
| cd /build/capnproto-0.7.0/c++/ | ||||
| cmake3 -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=off . | ||||
| make -j4 | ||||
| make install | ||||
| 
 | ||||
| cd /build/rapidjson-1.1.0/ | ||||
| cmake -DRAPIDJSON_BUILD_EXAMPLES=off . | ||||
| make install | ||||
| 
 | ||||
| cd | ||||
| cat <<EOF > laminar.spec | ||||
| Summary: Lightweight Continuous Integration Service | ||||
| Name: laminar | ||||
| Version: $VERSION | ||||
| Release: 1 | ||||
| License: GPL | ||||
| BuildRequires: systemd-units | ||||
| Requires: sqlite-libs zlib | ||||
| 
 | ||||
| %description | ||||
| Lightweight Continuous Integration Service | ||||
| 
 | ||||
| %prep | ||||
| 
 | ||||
| %build | ||||
| cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/ -DSYSTEMD_UNITDIR=%{_unitdir} %{_sourcedir}/laminar-$VERSION | ||||
| pwd | ||||
| make | ||||
| 
 | ||||
| %install | ||||
| %make_install | ||||
| 
 | ||||
| %files | ||||
| %{_bindir}/laminarc | ||||
| %{_bindir}/laminard | ||||
| %{_unitdir}/laminar.service | ||||
| %config(noreplace) %{_sysconfdir}/laminar.conf | ||||
| %{_datarootdir}/bash-completion/completions/laminarc | ||||
| %{_datarootdir}/zsh/site-functions/_laminarc | ||||
| 
 | ||||
| %post | ||||
| echo Creating laminar user with home in %{_sharedstatedir}/laminar | ||||
| useradd -r -d %{_sharedstatedir}/laminar -s %{_sbindir}/nologin laminar | ||||
| mkdir -p %{_sharedstatedir}/laminar/cfg/{jobs,nodes,scripts} | ||||
| chown -R laminar: %{_sharedstatedir}/laminar | ||||
| EOF | ||||
| 
 | ||||
| rpmbuild -ba laminar.spec | ||||
| mv rpmbuild/RPMS/x86_64/laminar-$VERSION-1.x86_64.rpm /output/ | ||||
| EOS | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user