build in docker tested
This commit is contained in:
		
							
								
								
									
										12
									
								
								bootstrap.sh
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								bootstrap.sh
									
									
									
									
									
								
							| @@ -19,6 +19,7 @@ PROJECT_PATH=$(pwd) | |||||||
| DEFAULT_PROJECT_NAME=${PROJECT_PATH##*/} | DEFAULT_PROJECT_NAME=${PROJECT_PATH##*/} | ||||||
| configure=0 | configure=0 | ||||||
| build=0 | build=0 | ||||||
|  | docker=0 | ||||||
| buildtarget="distcheck" | buildtarget="distcheck" | ||||||
| overwrite=0 | overwrite=0 | ||||||
| rebuild=0 | rebuild=0 | ||||||
| @@ -26,6 +27,7 @@ rebuildfiles=() | |||||||
| while test $# -gt 0; do | while test $# -gt 0; do | ||||||
|     case "$1" in |     case "$1" in | ||||||
|         (--configure|-c) configure=1;; |         (--configure|-c) configure=1;; | ||||||
|  |         (--docker|-d) docker=1;; | ||||||
|         (--build|-b) configure=1; build=1;; |         (--build|-b) configure=1; build=1;; | ||||||
|         (--target|-t) shift; configure=1; build=1; buildtarget="$1";; |         (--target|-t) shift; configure=1; build=1; buildtarget="$1";; | ||||||
|         (--overwrite|-o) overwrite=1;; |         (--overwrite|-o) overwrite=1;; | ||||||
| @@ -42,6 +44,7 @@ SYNOPSIS | |||||||
| OPTIONS | OPTIONS | ||||||
|  |  | ||||||
|   --configure, -c            call ./configure after initialization |   --configure, -c            call ./configure after initialization | ||||||
|  |   --docker, -d               build and run tests in a docker instance | ||||||
|   --build, -b                build, also call ./configure && make distcheck |   --build, -b                build, also call ./configure && make distcheck | ||||||
|   --target, -t <target>      same as -b, but specify target instead of distcheck |   --target, -t <target>      same as -b, but specify target instead of distcheck | ||||||
|   --overwrite, -o            overwrite all basic files (bootstrap.sh, m4-macros) |   --overwrite, -o            overwrite all basic files (bootstrap.sh, m4-macros) | ||||||
| @@ -105,6 +108,7 @@ GENERATED FILES | |||||||
|     * ax_check_qt.m4 - auxiliary macro definition file |     * ax_check_qt.m4 - auxiliary macro definition file | ||||||
|     * resolve-debbuilddeps.sh - script to install debian package dependencies |     * resolve-debbuilddeps.sh - script to install debian package dependencies | ||||||
|     * resolve-rpmbuilddeps.sh - script to install RPM package dependencies |     * resolve-rpmbuilddeps.sh - script to install RPM package dependencies | ||||||
|  |     * build-in-docker.sh - script to build the project encapsulated in a docker container | ||||||
|     * build-resource-file.sh - build resource.qrc file from a resource directory |     * build-resource-file.sh - build resource.qrc file from a resource directory | ||||||
|     * mac-create-app-bundle.sh - script to create apple mac os-x app-bundle |     * mac-create-app-bundle.sh - script to create apple mac os-x app-bundle | ||||||
|     * AUTHORS - replace your name in AUTHORS before first run |     * AUTHORS - replace your name in AUTHORS before first run | ||||||
| @@ -405,6 +409,7 @@ copy ax_cxx_compile_stdcxx_11.m4 | |||||||
| copy ax_check_qt.m4 | copy ax_check_qt.m4 | ||||||
| copy resolve-debbuilddeps.sh | copy resolve-debbuilddeps.sh | ||||||
| copy resolve-rpmbuilddeps.sh | copy resolve-rpmbuilddeps.sh | ||||||
|  | copy build-in-docker.sh | ||||||
| copy build-resource-file.sh | copy build-resource-file.sh | ||||||
| copy mac-create-app-bundle.sh | copy mac-create-app-bundle.sh | ||||||
| AUTHOR=$(gpg -K  | sed -n 's,uid *,,p' | sort | head -1) | AUTHOR=$(gpg -K  | sed -n 's,uid *,,p' | sort | head -1) | ||||||
| @@ -814,7 +819,7 @@ if testtag AX_USE_DEBIAN_PACKAGING; then | |||||||
|  |  | ||||||
|  -- @AUTHOR@  @BUILD_DATE@ |  -- @AUTHOR@  @BUILD_DATE@ | ||||||
| EOF | EOF | ||||||
|     BUILD_DEPENDS="debhelper, subversion, pkg-config, automake, libtool, autotools-dev, lsb-release $(if testtag AX_USE_DOXYGEN; then echo -n ", doxygen, graphviz, mscgen"; fi; if testtag AX_USE_CPPUNIT; then echo -n ", libcppunit-dev"; fi; if testtag AX_CXX_QT || testtag AX_CHECK_QT AX_REQUIRE_QT; then echo -n ", qt5-default | qt4-default | qt5-qmake | qt4-qmake, qtbase5-dev | libqt4-dev, qtbase5-dev-tools | qt4-dev-tools, qttools5-dev-tools | qt4-dev-tools, qttools5-dev-tools | qt4-dev-tools"; fi)" |     BUILD_DEPENDS="debhelper, subversion, svn2cl, pkg-config, automake, libtool, autotools-dev, lsb-release $(if testtag AX_USE_DOXYGEN; then echo -n ", doxygen, graphviz, mscgen"; fi; if testtag AX_USE_CPPUNIT; then echo -n ", libcppunit-dev"; fi; if testtag AX_CXX_QT || testtag AX_CHECK_QT AX_REQUIRE_QT; then echo -n ", qt5-default | qt4-default | qt5-qmake | qt4-qmake, qtbase5-dev | libqt4-dev, qtbase5-dev-tools | qt4-dev-tools, qttools5-dev-tools | qt4-dev-tools, qttools5-dev-tools | qt4-dev-tools"; fi)" | ||||||
|     to debian/control.in <<EOF |     to debian/control.in <<EOF | ||||||
| Source: @PACKAGE_NAME@ | Source: @PACKAGE_NAME@ | ||||||
| Priority: extra | Priority: extra | ||||||
| @@ -1024,3 +1029,8 @@ fi | |||||||
| if test "$build" -eq 1; then | if test "$build" -eq 1; then | ||||||
|     make $buildtarget |     make $buildtarget | ||||||
| fi | fi | ||||||
|  |  | ||||||
|  | #### Build In Docker If User Requires #### | ||||||
|  | if test "$docker" -eq 1; then | ||||||
|  |     ./build-in-docker.sh | ||||||
|  | fi | ||||||
|   | |||||||
							
								
								
									
										15
									
								
								build-in-docker.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										15
									
								
								build-in-docker.sh
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,15 @@ | |||||||
|  | #! /bin/bash -ex | ||||||
|  |  | ||||||
|  | # build and test everything in a fresh docker installation | ||||||
|  |  | ||||||
|  | DOCKER_ID=$(docker run -d -v $(pwd):/workdir -w /workdir ubuntu sleep infinity) | ||||||
|  | trap "docker rm -f ${DOCKER_ID}" INT TERM EXIT | ||||||
|  | docker exec ${DOCKER_ID} apt-get install -y software-properties-common apt-transport-https dpkg-dev | ||||||
|  | docker exec ${DOCKER_ID} apt-add-repository universe | ||||||
|  | docker exec ${DOCKER_ID} apt-add-repository https://dev.marc.waeckerlin.org/repository | ||||||
|  | wget -O- https://dev.marc.waeckerlin.org/repository/PublicKey \ | ||||||
|  |    | docker exec -i ${DOCKER_ID} apt-key add - | ||||||
|  | docker exec ${DOCKER_ID} apt-get update | ||||||
|  | docker exec ${DOCKER_ID} ./resolve-debbuilddeps.sh | ||||||
|  | docker exec -u $(id -u) ${DOCKER_ID} svn upgrade || true | ||||||
|  | docker exec -u $(id -u) ${DOCKER_ID} ./bootstrap.sh -t "all check distcheck" | ||||||
| @@ -23,7 +23,7 @@ AX_USE_CXX | |||||||
| AX_USE_SCRIPTS | AX_USE_SCRIPTS | ||||||
| AX_USE_DOXYGEN | AX_USE_DOXYGEN | ||||||
| AX_USE_DEBIAN_PACKAGING | AX_USE_DEBIAN_PACKAGING | ||||||
| #AX_USE_RPM_PACKAGING | AX_USE_RPM_PACKAGING | ||||||
| #AX_USE_CPPUNIT | #AX_USE_CPPUNIT | ||||||
| AX_BUILD_TEST | AX_BUILD_TEST | ||||||
| #AX_BUILD_EXAMPLES | #AX_BUILD_EXAMPLES | ||||||
|   | |||||||
							
								
								
									
										2
									
								
								debian/control.in
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								debian/control.in
									
									
									
									
										vendored
									
									
								
							| @@ -1,7 +1,7 @@ | |||||||
| Source: @PACKAGE_NAME@ | Source: @PACKAGE_NAME@ | ||||||
| Priority: extra | Priority: extra | ||||||
| Maintainer: @AUTHOR@ | Maintainer: @AUTHOR@ | ||||||
| Build-Depends: debhelper, subversion, pkg-config, automake, libtool, autotools-dev, lsb-release , doxygen, graphviz, mscgen, qtbase5-dev, qtbase5-dev-tools, qttools5-dev, qt5-default, libqt5webkit5-dev, libqt5svg5-dev, xvfb | Build-Depends: debhelper, subversion, svn2cl, pkg-config, automake, libtool, autotools-dev, lsb-release , doxygen, graphviz, mscgen, qtbase5-dev, qtbase5-dev-tools, qttools5-dev, qt5-default, libqt5webkit5-dev, libqt5svg5-dev, xvfb, mrw-c++-dev, libxml-cxx-dev | ||||||
|  |  | ||||||
| Package: @PACKAGE_NAME@ | Package: @PACKAGE_NAME@ | ||||||
| Section: web | Section: web | ||||||
|   | |||||||
| @@ -1,15 +0,0 @@ | |||||||
| ## @id $Id$ |  | ||||||
| ## |  | ||||||
| ## This file has been added: |  | ||||||
| ##  - by bootstrap.sh |  | ||||||
| ##  -  on Wed, 04 November 2015 08:51:26 +0100 |  | ||||||
| ## Feel free to change it or even remove and rebuild it, up to your needs |  | ||||||
| ## |  | ||||||
| ##       1         2         3         4         5         6         7         8 |  | ||||||
| ## 45678901234567890123456789012345678901234567890123456789012345678901234567890 |  | ||||||
|  |  | ||||||
| AM_CPPFLAGS = -I${top_srcdir}/src -I${top_builddir}/src |  | ||||||
| AM_LDFLAGS = -L${abs_top_builddir}/src/.libs |  | ||||||
| LDADD = -lwebtester |  | ||||||
|  |  | ||||||
| MAINTAINERCLEANFILES = makefile.in |  | ||||||
| @@ -22,6 +22,7 @@ function install() { | |||||||
|             return 0 |             return 0 | ||||||
|         fi |         fi | ||||||
|     fi |     fi | ||||||
|  |     return 1 | ||||||
| } | } | ||||||
|  |  | ||||||
| TO_INSTALL= | TO_INSTALL= | ||||||
|   | |||||||
							
								
								
									
										60
									
								
								webtester.spec.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										60
									
								
								webtester.spec.in
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,60 @@ | |||||||
|  | Summary: @DESCRIPTION@ | ||||||
|  | Name: @PACKAGE_NAME@ | ||||||
|  | Version: @VERSION@ | ||||||
|  | Release: @BUILD_NUMBER@%{?dist} | ||||||
|  | License: LGPL | ||||||
|  | Group: Applications/... | ||||||
|  | Source0: %{name}-%{version}.tar.gz | ||||||
|  | BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root | ||||||
|  | BuildRequires: gnupg, subversion, automake, autoconf, doxygen, xvfb, mrw-c++-dev, libxml-cxx-dev | ||||||
|  | %if 0%{?fedora} != 20 | ||||||
|  | BuildRequires: graphviz | ||||||
|  | %endif | ||||||
|  | %if 0%{?fedora} || 0%{?rhel} || 0%{?rhl} || 0%{?centos} || 0%{?centos_ver} || 0%{?centos_version} | ||||||
|  | BuildRequires: pkgconfig, redhat-lsb | ||||||
|  | %if ! ( 0%{?centos} || 0%{?centos_ver} || 0%{?centos_version} ) | ||||||
|  | BuildRequires: mscgen | ||||||
|  | BuildRequires: qt5-qtbase-devel, qt5-qttools, qt5-qtwebkit-devel | ||||||
|  | %else | ||||||
|  | BuildRequires: qt-devel | ||||||
|  | %endif | ||||||
|  | %else%if 0%{?suse_version} || 0%{?sles_version} | ||||||
|  | BuildRequires: pkg-config, lsb-release | ||||||
|  | %if 0%{?suse_version} < 1200 ||  0%{?sles_version} < 1200 | ||||||
|  | BuildRequires: libqt4-devel, qt4-x11-tools, libQtWebKit-devel | ||||||
|  | %else | ||||||
|  | BuildRequires: libqt5-qtbase-devel, libqt5-qttools, libQt5WebKit5-devel | ||||||
|  | %endif | ||||||
|  | %endif%endif | ||||||
|  |  | ||||||
|  | %description | ||||||
|  | @README@ | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
|  | %prep | ||||||
|  | %setup -q | ||||||
|  | ./configure --prefix=/usr \ | ||||||
|  |             --sysconfdir=/etc \ | ||||||
|  |             --docdir=/usr/share/doc/packages/@PACKAGE_NAME@ \ | ||||||
|  |             --libdir=/usr/%_lib | ||||||
|  |  | ||||||
|  | %build | ||||||
|  | make | ||||||
|  |  | ||||||
|  | %install | ||||||
|  | DESTDIR=$RPM_BUILD_ROOT make install | ||||||
|  |  | ||||||
|  | %clean | ||||||
|  | rm -rf $RPM_BUILD_ROOT | ||||||
|  |  | ||||||
|  | %files | ||||||
|  | %defattr(-,root,root,-) | ||||||
|  | /usr/bin/* | ||||||
|  | %doc | ||||||
|  | /usr/share/* | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
|  | %changelog | ||||||
|  |  | ||||||
		Reference in New Issue
	
	Block a user