build system updated
This commit is contained in:
		
							
								
								
									
										136
									
								
								INSTALL
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										136
									
								
								INSTALL
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,136 @@
 | 
				
			|||||||
 | 
					Install Software
 | 
				
			||||||
 | 
					================
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					There are prebuilt software packages in the repositories, look in
 | 
				
			||||||
 | 
					https://repository.mrw.sh for your operating system.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Note: PublicKey has changed on Novmber 1st 2015, please import the new
 | 
				
			||||||
 | 
					key.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Linux
 | 
				
			||||||
 | 
					-----
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					There are package repositories for most distributions at https://repository.mrw.sh.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Ubuntu and Debian
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					To accept my signature, install my key:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        wget -O- https://repository.mrw.sh/PublicKey \
 | 
				
			||||||
 | 
					            | sudo apt-key add -
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					You can install all software using your package manager (`apt`), first install the repository:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        sudo apt-get install -y wget software-properties-common apt-transport-https
 | 
				
			||||||
 | 
					        sudo apt-add-repository https://repository.mrw.sh
 | 
				
			||||||
 | 
					        sudo apt-get update -y
 | 
				
			||||||
 | 
					Then you can install any project you wish, e.g. [`webtester`](https://mrw.sh/development/webtester):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        sudo apt-get install webtester -y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### OpenSUSE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					To accept my signature, install my key:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        wget https://repository.mrw.sh/PublicKey
 | 
				
			||||||
 | 
					        rpm --import PublicKey
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					You can use your packagemanager (`zypper` or _YaST_). First install the repostitory:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        zypper ar https://repository.mrw.sh/opensuse/marc-waeckerlin.repo
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Then install packages from the repository, e.g. [`webtester`](https://mrw.sh/development/webtester):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        zypper install webtester
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					In case of trouble: Check if your version of OpenSUSE is supported,
 | 
				
			||||||
 | 
					use `lsb_release -rs` to get the version of your OpenSUSE:
 | 
				
			||||||
 | 
					https://drepository.mrw.sh/opensuse
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Fedora
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					To accept my signature, install my key:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        wget https://repository.mrw.sh/PublicKey
 | 
				
			||||||
 | 
					        rpm --import PublicKey
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					You can use your packagemanager (`dnf`). First install the repository:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        dnf install 'dnf-command(config-manager)'
 | 
				
			||||||
 | 
					        dnf config-manager --add-repo https://repository.mrw.sh/fedora/marc-waeckerlin.repo
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Then install packages from the repository, e.g. [`webtester`](https://mrw.sh/development/webtester):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        dnf install webtester
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					In case of trouble: Check if your version of Fedora is supported, use `lsb_release -rs` to get the version of your Fedora: https://repository.mrw.sh/fedora
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### CentOS
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					To accept my signature, install my key:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        wget https://repository.mrw.sh/PublicKey
 | 
				
			||||||
 | 
					        rpm --import PublicKey
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					You can use your packagemanager (`yum`). First install the repository:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        yum install wget
 | 
				
			||||||
 | 
					        wget -O/etc/yum.repos.d/marc-waeckerlin.repo https://repository.mrw.sh/centos/marc-waeckerlin.repo
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Then install packages from the repository, e.g. [`webtester`](https://mrw.sh/development/webtester):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        yum install webtester
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					In case of trouble: Check if your version of CentOS is supported, use lsb_release -rs to get the version of your CentOS: https://repository.mrw.sh/centos
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Mageia
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					To accept my signature, install my key:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        wget https://repository.mrw.sh/PublicKey
 | 
				
			||||||
 | 
					        rpm --import PublicKey
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					You can use your packagemanager (`dnf`). First install the repository:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        dnf install 'dnf-command(config-manager)'
 | 
				
			||||||
 | 
					        dnf config-manager --add-repo https://repository.mrw.sh/mageia/marc-waeckerlin.repo
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Then install packages from the repository, e.g. [`webtester`](https://mrw.sh/development/webtester):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        dnf install webtester
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Other Linux Distributions
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Either use the nearest possible distribution, or use alien to convert from another distribution to your preferred package format, or compile the project yourself (see below).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Windows
 | 
				
			||||||
 | 
					-------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Download from https://repository.mrw.sh/windows
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					MacOSX
 | 
				
			||||||
 | 
					------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					You need e.g. Mac Ports to compile. Install the following dependencies:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        sudo port install subversion svn2cl doxygen graphviz cppunit libtool boost log4cxx qt5-mac
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Fix libtool-bug:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        sudo ln -s /opt/local/bin/glibtoolize /opt/local/bin/libtoolize
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Compile from Source
 | 
				
			||||||
 | 
					-------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					For all unsupported operating systems, including MacOSX.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					To compile, please download the tar-sources from: https://repository.mrw.sh/sources
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Then untar the package and use the common commands, e.g. for version `1.0.2` of a project named project, that means:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        tar xzf project-1.0.2.tar.gz
 | 
				
			||||||
 | 
					        cd project-1.0.2
 | 
				
			||||||
 | 
					        ./bootstrap.sh
 | 
				
			||||||
 | 
					        ./configure
 | 
				
			||||||
 | 
					        make
 | 
				
			||||||
 | 
					        sudo make install
 | 
				
			||||||
@@ -16,6 +16,8 @@ This library does not need any kind of C++ code parser or special pre compiler.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
C++ classes can inherit `xml::Serialize` and become serializable this way. All you need to do is to overwrite one single method, where you declare XML tag names for the class name and for all members.
 | 
					C++ classes can inherit `xml::Serialize` and become serializable this way. All you need to do is to overwrite one single method, where you declare XML tag names for the class name and for all members.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					**Note:** All *links* below require the generated [Doxygen](https://doc.mrw.sh/libxml-cxx) documentation.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
More rationale: See also [Related Pages](pages.html) in the doxygen project documentation.
 | 
					More rationale: See also [Related Pages](pages.html) in the doxygen project documentation.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -117,9 +119,10 @@ Known Limitations
 | 
				
			|||||||
In the Web
 | 
					In the Web
 | 
				
			||||||
----------
 | 
					----------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 - The official project page is on: https://mrw.sh/libraries/libxml-cxx
 | 
					 - [Official project page](https://mrw.sh/libraries/libxml-cxx)
 | 
				
			||||||
 - The official documentation is on: https://doc.mrw.sh/libxml-cxx
 | 
					 - [Full Doxygen library documentation](https://doc.mrw.sh/libxml-cxx)
 | 
				
			||||||
 - The official repositories are on: https://repository.mrw.sh
 | 
					 - [Official repositories](https://repository.mrw.sh)
 | 
				
			||||||
 | 
					 - [Download and installation instructions](https://mrw.sh/doc/mrw.sh/src/branch/master/installation.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Missing a Feature, Found a Bug
 | 
					Missing a Feature, Found a Bug
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,4 +1,4 @@
 | 
				
			|||||||
## @id $Id$
 | 
					## @id $Id: ax_init_standard_project.m4 204 2016-09-29 18:29:53Z marc $
 | 
				
			||||||
 | 
					
 | 
				
			||||||
##       1         2         3         4         5         6         7         8
 | 
					##       1         2         3         4         5         6         7         8
 | 
				
			||||||
## 45678901234567890123456789012345678901234567890123456789012345678901234567890
 | 
					## 45678901234567890123456789012345678901234567890123456789012345678901234567890
 | 
				
			||||||
@@ -962,8 +962,8 @@ AC_DEFUN([AX_PKG_CHECK], [
 | 
				
			|||||||
#    $2 = pathes to search for
 | 
					#    $2 = pathes to search for
 | 
				
			||||||
AC_DEFUN([AX_REQUIRE_HEADER], [
 | 
					AC_DEFUN([AX_REQUIRE_HEADER], [
 | 
				
			||||||
  AC_CHECK_HEADER($1, [], [
 | 
					  AC_CHECK_HEADER($1, [], [
 | 
				
			||||||
 | 
					    found=0
 | 
				
			||||||
    if test -n "$2"; then
 | 
					    if test -n "$2"; then
 | 
				
			||||||
      found=0
 | 
					 | 
				
			||||||
      for d in $2; do
 | 
					      for d in $2; do
 | 
				
			||||||
        if test -f "${d}/$1"; then
 | 
					        if test -f "${d}/$1"; then
 | 
				
			||||||
          AC_MSG_NOTICE([found file ${d}/$1])
 | 
					          AC_MSG_NOTICE([found file ${d}/$1])
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										20
									
								
								bootstrap.sh
									
									
									
									
									
								
							
							
						
						
									
										20
									
								
								bootstrap.sh
									
									
									
									
									
								
							@@ -1,7 +1,7 @@
 | 
				
			|||||||
#! /bin/bash
 | 
					#! /bin/bash
 | 
				
			||||||
## @file
 | 
					## @file
 | 
				
			||||||
##
 | 
					##
 | 
				
			||||||
## $Id$
 | 
					## $Id: bootstrap.sh 52 2015-11-03 15:38:21Z marc $
 | 
				
			||||||
##
 | 
					##
 | 
				
			||||||
## $Date: 2004/08/31 15:57:19 $
 | 
					## $Date: 2004/08/31 15:57:19 $
 | 
				
			||||||
## $Author: marc $
 | 
					## $Author: marc $
 | 
				
			||||||
@@ -41,7 +41,7 @@ while test $# -gt 0; do
 | 
				
			|||||||
        (--no-vcs|-n) novcs=1;;
 | 
					        (--no-vcs|-n) novcs=1;;
 | 
				
			||||||
        (--exclude-vcs|-x) shift; excludevcs+=("$1");;
 | 
					        (--exclude-vcs|-x) shift; excludevcs+=("$1");;
 | 
				
			||||||
        (--version|-v)
 | 
					        (--version|-v)
 | 
				
			||||||
            echo "$Id$";
 | 
					            echo "$Id: bootstrap.sh 52 2015-11-03 15:38:21Z marc $";
 | 
				
			||||||
            exit;;
 | 
					            exit;;
 | 
				
			||||||
        (--help|-h) less <<EOF
 | 
					        (--help|-h) less <<EOF
 | 
				
			||||||
SYNOPSIS
 | 
					SYNOPSIS
 | 
				
			||||||
@@ -131,7 +131,6 @@ GENERATED FILES
 | 
				
			|||||||
    * ax_init_standard_project.m4 - auxiliary macro definition file
 | 
					    * ax_init_standard_project.m4 - auxiliary macro definition file
 | 
				
			||||||
    * ax_cxx_compile_stdcxx.m4 - auxiliary macro definition file
 | 
					    * ax_cxx_compile_stdcxx.m4 - auxiliary macro definition file
 | 
				
			||||||
    * ax_check_qt.m4 - auxiliary macro definition file
 | 
					    * ax_check_qt.m4 - auxiliary macro definition file
 | 
				
			||||||
    * makefile_test.inc.am - makefile to be included in tests
 | 
					 | 
				
			||||||
    * 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-in-docker.sh - script to build the project encapsulated in a docker container
 | 
				
			||||||
@@ -450,7 +449,7 @@ checkdir() {
 | 
				
			|||||||
    if ! test -d "$1"; then # create path
 | 
					    if ! test -d "$1"; then # create path
 | 
				
			||||||
        run mkdir -p "$1"
 | 
					        run mkdir -p "$1"
 | 
				
			||||||
        if test -n "${VCS}" -a $novcs -eq 0 && ! contains "$1" "${excludevcs[@]}"; then
 | 
					        if test -n "${VCS}" -a $novcs -eq 0 && ! contains "$1" "${excludevcs[@]}"; then
 | 
				
			||||||
            run ${VCS} add "$1"
 | 
					            run --no-check ${VCS} add "$1"
 | 
				
			||||||
        fi
 | 
					        fi
 | 
				
			||||||
    fi
 | 
					    fi
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@@ -498,7 +497,7 @@ to() {
 | 
				
			|||||||
    run chmod $mode $1
 | 
					    run chmod $mode $1
 | 
				
			||||||
    if test $exists -eq 0; then
 | 
					    if test $exists -eq 0; then
 | 
				
			||||||
        if test -n "${VCS}" -a $novcs -eq 0 && ! contains "$1" "${excludevcs[@]}"; then
 | 
					        if test -n "${VCS}" -a $novcs -eq 0 && ! contains "$1" "${excludevcs[@]}"; then
 | 
				
			||||||
            run ${VCS} add "$1"
 | 
					            run --no-check ${VCS} add "$1"
 | 
				
			||||||
            if test "${VCS}" = "svn"; then
 | 
					            if test "${VCS}" = "svn"; then
 | 
				
			||||||
                run svn propset svn:keywords "Id" "$1"
 | 
					                run svn propset svn:keywords "Id" "$1"
 | 
				
			||||||
            fi
 | 
					            fi
 | 
				
			||||||
@@ -523,10 +522,14 @@ copy() {
 | 
				
			|||||||
    if test "${1%/*}" != "$1"; then
 | 
					    if test "${1%/*}" != "$1"; then
 | 
				
			||||||
        test -d "${1%/*}" || svn mkdir "${1%/*}"
 | 
					        test -d "${1%/*}" || svn mkdir "${1%/*}"
 | 
				
			||||||
    fi
 | 
					    fi
 | 
				
			||||||
 | 
					    if ! test -e "${source}"; then
 | 
				
			||||||
 | 
					        ignored "$1" not found
 | 
				
			||||||
 | 
					        return
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
    run cp "${source}" "$1"
 | 
					    run cp "${source}" "$1"
 | 
				
			||||||
    if test $exists -eq 0; then
 | 
					    if test $exists -eq 0; then
 | 
				
			||||||
        if test -n "${VCS}" -a $novcs -eq 0 && ! contains "$1" "${excludevcs[@]}"; then
 | 
					        if test -n "${VCS}" -a $novcs -eq 0 && ! contains "$1" "${excludevcs[@]}"; then
 | 
				
			||||||
            run ${VCS} add "$1"
 | 
					            run --no-check ${VCS} add "$1"
 | 
				
			||||||
            if test "${VCS}" = "svn"; then
 | 
					            if test "${VCS}" = "svn"; then
 | 
				
			||||||
                run svn propset svn:keywords "Id" "$1"
 | 
					                run svn propset svn:keywords "Id" "$1"
 | 
				
			||||||
            fi
 | 
					            fi
 | 
				
			||||||
@@ -575,7 +578,7 @@ vcs2cl() {
 | 
				
			|||||||
    fi
 | 
					    fi
 | 
				
			||||||
    if test $exists -eq 0; then
 | 
					    if test $exists -eq 0; then
 | 
				
			||||||
        if test -n "${VCS}" -a $novcs -eq 0 && ! contains "ChangeLog" "${excludevcs[@]}"; then
 | 
					        if test -n "${VCS}" -a $novcs -eq 0 && ! contains "ChangeLog" "${excludevcs[@]}"; then
 | 
				
			||||||
            run ${VCS} add ChangeLog
 | 
					            run --no-check ${VCS} add ChangeLog
 | 
				
			||||||
        fi
 | 
					        fi
 | 
				
			||||||
    fi
 | 
					    fi
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@@ -593,7 +596,6 @@ copy ${MY_NAME}
 | 
				
			|||||||
copy ax_init_standard_project.m4
 | 
					copy ax_init_standard_project.m4
 | 
				
			||||||
copy ax_cxx_compile_stdcxx.m4
 | 
					copy ax_cxx_compile_stdcxx.m4
 | 
				
			||||||
copy ax_check_qt.m4
 | 
					copy ax_check_qt.m4
 | 
				
			||||||
copy makefile_test.inc.am
 | 
					 | 
				
			||||||
copy resolve-debbuilddeps.sh
 | 
					copy resolve-debbuilddeps.sh
 | 
				
			||||||
copy resolve-rpmbuilddeps.sh
 | 
					copy resolve-rpmbuilddeps.sh
 | 
				
			||||||
copy build-in-docker.sh
 | 
					copy build-in-docker.sh
 | 
				
			||||||
@@ -1508,7 +1510,7 @@ if testtag AX_USE_DOXYGEN; then
 | 
				
			|||||||
        sed -i ':a;/\\$/{s///;N;s/ *\n */ /g;ba}' doc/doxyfile.in
 | 
					        sed -i ':a;/\\$/{s///;N;s/ *\n */ /g;ba}' doc/doxyfile.in
 | 
				
			||||||
        if test $exists -eq 0; then
 | 
					        if test $exists -eq 0; then
 | 
				
			||||||
            if test -n "${VCS}" -a $novcs -eq 0 && ! contains "doc/doxyfile" "${excludevcs[@]}"; then
 | 
					            if test -n "${VCS}" -a $novcs -eq 0 && ! contains "doc/doxyfile" "${excludevcs[@]}"; then
 | 
				
			||||||
                run ${VCS} add doc/doxyfile.in
 | 
					                run --no-check ${VCS} add doc/doxyfile.in
 | 
				
			||||||
                if test "${VCS}" = "svn"; then
 | 
					                if test "${VCS}" = "svn"; then
 | 
				
			||||||
                    run svn propset svn:keywords "Id" doc/doxyfile.in
 | 
					                    run svn propset svn:keywords "Id" doc/doxyfile.in
 | 
				
			||||||
                fi
 | 
					                fi
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -295,7 +295,7 @@ case "$mode" in
 | 
				
			|||||||
            docker exec ${DOCKER_ID} bash -c "echo 'Pin-Priority: -100' >> /etc/apt/preferences"
 | 
					            docker exec ${DOCKER_ID} bash -c "echo 'Pin-Priority: -100' >> /etc/apt/preferences"
 | 
				
			||||||
            docker exec ${DOCKER_ID} bash -c "echo >> /etc/apt/preferences"
 | 
					            docker exec ${DOCKER_ID} bash -c "echo >> /etc/apt/preferences"
 | 
				
			||||||
        done
 | 
					        done
 | 
				
			||||||
        if test -n "${keys[@]}"; then # fix dependency bug in cosmic and stretch
 | 
					        if test -n "${keys[*]}"; then # fix dependency bug in cosmic and stretch
 | 
				
			||||||
            docker exec ${DOCKER_ID} apt-get install ${OPTIONS} ${PREVENT// /- }- gnupg
 | 
					            docker exec ${DOCKER_ID} apt-get install ${OPTIONS} ${PREVENT// /- }- gnupg
 | 
				
			||||||
            for key in "${keys[@]}"; do
 | 
					            for key in "${keys[@]}"; do
 | 
				
			||||||
                wget -O- "$key" \
 | 
					                wget -O- "$key" \
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user