configure

Sun, 16 Apr 2023 14:08:19 +0200

author
Olaf Wintermann <olaf.wintermann@gmail.com>
date
Sun, 16 Apr 2023 14:08:19 +0200
changeset 745
aea83a43b09a
parent 742
7e67689241fd
child 746
a569148841ff
permissions
-rwxr-xr-x

merge

742
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
1 #!/bin/sh
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
2
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
3
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
4 PREFIX=/usr
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
5 EPREFIX=$PREFIX
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
6
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
7 BINDIR=
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
8 SBINDIR=
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
9 LIBDIR=
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
10 LIBEXECDIR=
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
11 DATADIR=
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
12 SYSCONFDIR=
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
13 SHAREDSTATEDIR=
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
14 LOCALSTATEDIR=
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
15 INCLUDEDIR=
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
16 INFODIR=
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
17 MANDIR=
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
18
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
19 OS=`uname -s`
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
20 OS_VERSION=`uname -r`
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
21
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
22 TEMP_DIR=".tmp-`uname -n`"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
23 mkdir -p $TEMP_DIR
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
24 if [ $? -ne 0 ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
25 echo "Cannot create tmp dir"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
26 echo "Abort"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
27 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
28 touch $TEMP_DIR/options
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
29 touch $TEMP_DIR/features
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
30
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
31 # features
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
32
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
33 # help text
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
34 printhelp()
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
35 {
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
36 echo "Usage: $0 [OPTIONS]..."
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
37 cat << __EOF__
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
38 Installation directories:
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
39 --prefix=PREFIX path prefix for architecture-independent files
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
40 [/usr]
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
41 --exec-prefix=EPREFIX path prefix for architecture-dependent files
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
42 [PREFIX]
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
43
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
44 --bindir=DIR user executables [EPREFIX/bin]
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
45 --sbindir=DIR system admin executables [EPREFIX/sbin]
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
46 --libexecdir=DIR program executables [EPREFIX/libexec]
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
47 --sysconfdir=DIR system configuration files [PREFIX/etc]
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
48 --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
49 --localstatedir=DIR modifiable single-machine data [PREFIX/var]
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
50 --libdir=DIR object code libraries [EPREFIX/lib]
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
51 --includedir=DIR C header files [PREFIX/include]
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
52 --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
53 --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
54 --infodir=DIR info documentation [DATAROOTDIR/info]
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
55 --mandir=DIR man documentation [DATAROOTDIR/man]
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
56
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
57 __EOF__
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
58 }
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
59
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
60 #
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
61 # parse arguments
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
62 #
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
63 for ARG in $@
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
64 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
65 case "$ARG" in
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
66 "--prefix="*) PREFIX=${ARG#--prefix=} ;;
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
67 "--exec-prefix="*) EPREFIX=${ARG#--exec-prefix=} ;;
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
68 "--bindir="*) BINDIR=${ARG#----bindir=} ;;
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
69 "--sbindir="*) SBINDIR=${ARG#--sbindir=} ;;
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
70 "--libdir="*) LIBDIR=${ARG#--libdir=} ;;
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
71 "--libexecdir="*) LIBEXECDIR=${ARG#--libexecdir=} ;;
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
72 "--datadir="*) DATADIR=${ARG#--datadir=} ;;
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
73 "--sysconfdir="*) SYSCONFDIR=${ARG#--sysconfdir=} ;;
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
74 "--sharedstatedir="*) SHAREDSTATEDIR=${ARG#--sharedstatedir=} ;;
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
75 "--localstatedir="*) LOCALSTATEDIR=${ARG#--localstatedir=} ;;
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
76 "--includedir="*) INCLUDEDIR=${ARG#--includedir=} ;;
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
77 "--infodir="*) INFODIR=${ARG#--infodir=} ;;
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
78 "--mandir"*) MANDIR=${ARG#--mandir} ;;
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
79 "--help"*) printhelp; exit 1 ;;
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
80 "-"*) echo "unknown option: $ARG"; exit 1 ;;
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
81 esac
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
82 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
83
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
84 # set dir variables
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
85 if [ -z "$BINDIR" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
86 BINDIR=$EPREFIX/bin
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
87 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
88 if [ -z "$SBINDIR" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
89 SBINDIR=$EPREFIX/sbin
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
90 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
91 if [ -z "$LIBDIR" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
92 LIBDIR=$EPREFIX/lib
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
93 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
94 if [ -z "$LIBEXEC" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
95 LIBEXECDIR=$EPREFIX/libexec
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
96 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
97 if [ -z "$DATADIR" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
98 DATADIR=$PREFIX/share
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
99 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
100 if [ -z "$SYSCONFDIR" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
101 SYSCONFDIR=$PREFIX/etc
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
102 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
103 if [ -z "$SHAREDSTATEDIR" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
104 SHAREDSTATEDIR=$PREFIX/com
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
105 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
106 if [ -z "$LOCALSTATEDIR" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
107 LOCALSTATEDIR=$PREFIX/var
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
108 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
109 if [ -z "$INCLUDEDIR" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
110 INCLUDEDIR=$PREFIX/include
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
111 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
112 if [ -z "$INFODIR" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
113 INFODIR=$PREFIX/info
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
114 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
115 if [ -z "$MANDIR" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
116 MANDIR=$PREFIX/man
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
117 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
118
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
119 which pkg-config > /dev/null
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
120 if [ $? -eq 0 ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
121 PKG_CONFIG=pkg-config
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
122 else
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
123 PKG_CONFIG=false
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
124 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
125
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
126 # Simple uname based platform detection
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
127 # $PLATFORM is used for platform dependent dependency selection
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
128 printf "detect platform... "
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
129 if [ $OS = SunOS ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
130 PLATFORM="solaris sunos unix svr4"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
131 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
132 if [ $OS = Linux ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
133 PLATFORM="linux unix"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
134 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
135 if [ $OS = FreeBSD ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
136 PLATFORM="freebsd bsd unix"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
137 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
138 if [ $OS = Darwin ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
139 PLATFORM="macos osx bsd unix"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
140 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
141 echo $OS | grep "MINGW" > /dev/null
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
142 if [ $? -eq 0 ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
143 PLATFORM="windows mingw"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
144 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
145
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
146 if [ -z "$PLATFORM" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
147 PLATFORM="unix"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
148 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
149
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
150 for p in $PLATFORM
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
151 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
152 PLATFORM_NAME=$p
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
153 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
154 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
155 echo $PLATFORM_NAME
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
156
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
157 isplatform()
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
158 {
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
159 for p in $PLATFORM
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
160 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
161 if [ $p = $1 ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
162 return 0
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
163 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
164 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
165 return 1
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
166 }
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
167 isnotplatform()
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
168 {
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
169 for p in $PLATFORM
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
170 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
171 if [ $p = $1 ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
172 return 1
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
173 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
174 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
175 return 0
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
176 }
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
177
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
178 # generate config.mk and config.h
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
179 cat > $TEMP_DIR/config.mk << __EOF__
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
180 #
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
181 # config.mk generated by configure
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
182 #
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
183
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
184 # general vars
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
185
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
186 PREFIX=$PREFIX
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
187 EPREFIX=$EPREFIX
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
188
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
189 BINDIR=$BINDIR
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
190 SBINDIR=$SBINDIR
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
191 LIBDIR=$LIBDIR
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
192 LIBEXECDIR=$LIBEXECDIR
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
193 DATADIR=$DATADIR
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
194 SYSCONFDIR=$SYSCONFDIR
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
195 SHAREDSTATEDIR=$SHAREDSTATEDIR
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
196 LOCALSTATEDIR=$LOCALSTATEDIR
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
197 INCLUDEDIR=$INCLUDEDIR
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
198 INFODIR=$INFODIR
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
199 MANDIR=$MANDIR
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
200
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
201 __EOF__
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
202
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
203 echo > $TEMP_DIR/make.mk
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
204
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
205 ENV_CFLAGS=$CFLAGS
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
206 ENV_LDFLAGS=$LDFLAGS
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
207 ENV_CXXFLAGS=$CXXFLAGS
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
208
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
209 # Toolchain detection
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
210 # this will insert make vars to config.mk
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
211 . make/toolchain.sh
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
212
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
213 # add user specified flags to config.mk
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
214 echo >> $TEMP_DIR/config.mk
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
215 if [ ! -z "${ENV_CFLAGS}" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
216 echo "CFLAGS += $ENV_CFLAGS" >> $TEMP_DIR/config.mk
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
217 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
218 if [ ! -z "${ENV_CXXFLAGS}" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
219 echo "CXXFLAGS += $ENV_CXXFLAGS" >> $TEMP_DIR/config.mk
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
220 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
221 if [ ! -z "${ENV_LDFLAGS}" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
222 echo "LDFLAGS += $ENV_LDFLAGS" >> $TEMP_DIR/config.mk
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
223 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
224
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
225 #
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
226 # DEPENDENCIES
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
227 #
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
228
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
229 dependency_curl()
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
230 {
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
231 printf "checking for curl... "
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
232 # dependency curl platform="windows"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
233 while true
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
234 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
235 if isnotplatform "windows"; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
236 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
237 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
238 CFLAGS="$CFLAGS -I/mingw/include"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
239 LDFLAGS="$LDFLAGS -lcurl"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
240 echo yes
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
241 return 0
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
242 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
243
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
244 # dependency curl platform="macos"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
245 while true
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
246 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
247 if isnotplatform "macos"; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
248 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
249 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
250 curl-config --cflags > /dev/null
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
251 if [ $? -eq 0 ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
252 CFLAGS="$CFLAGS `curl-config --cflags`"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
253 else
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
254 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
255 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
256 curl-config --ldflags > /dev/null
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
257 if [ $? -eq 0 ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
258 LDFLAGS="$LDFLAGS `curl-config --ldflags`"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
259 else
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
260 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
261 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
262 echo yes
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
263 return 0
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
264 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
265
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
266 # dependency curl
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
267 while true
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
268 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
269 if [ -z "$PKG_CONFIG" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
270 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
271 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
272 $PKG_CONFIG libcurl
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
273 if [ $? -ne 0 ] ; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
274 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
275 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
276 CFLAGS="$CFLAGS `$PKG_CONFIG --cflags libcurl`"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
277 LDFLAGS="$LDFLAGS `$PKG_CONFIG --libs libcurl`"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
278 echo yes
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
279 return 0
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
280 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
281
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
282 # dependency curl
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
283 while true
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
284 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
285 curl-config --cflags > /dev/null
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
286 if [ $? -eq 0 ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
287 CFLAGS="$CFLAGS `curl-config --cflags`"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
288 else
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
289 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
290 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
291 curl-config --ldflags > /dev/null
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
292 if [ $? -eq 0 ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
293 LDFLAGS="$LDFLAGS `curl-config --ldflags`"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
294 else
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
295 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
296 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
297 which curl-config > /dev/null
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
298 if [ $? -ne 0 ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
299 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
300 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
301 echo yes
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
302 return 0
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
303 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
304
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
305 echo no
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
306 return 1
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
307 }
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
308 dependency_openssl()
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
309 {
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
310 printf "checking for openssl... "
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
311 # dependency openssl platform="windows"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
312 while true
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
313 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
314 if isnotplatform "windows"; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
315 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
316 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
317 LDFLAGS="$LDFLAGS -lssl -lcrypto"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
318 echo yes
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
319 return 0
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
320 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
321
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
322 # dependency openssl platform="macos"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
323 while true
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
324 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
325 if isnotplatform "macos"; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
326 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
327 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
328 LDFLAGS="$LDFLAGS -framework CoreFoundation"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
329 echo yes
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
330 return 0
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
331 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
332
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
333 # dependency openssl platform="bsd"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
334 while true
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
335 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
336 if isnotplatform "bsd"; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
337 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
338 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
339 if isplatform "macos"; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
340 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
341 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
342 LDFLAGS="$LDFLAGS -lssl -lcrypto"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
343 echo yes
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
344 return 0
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
345 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
346
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
347 # dependency openssl
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
348 while true
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
349 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
350 if [ -z "$PKG_CONFIG" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
351 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
352 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
353 $PKG_CONFIG openssl
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
354 if [ $? -ne 0 ] ; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
355 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
356 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
357 CFLAGS="$CFLAGS `$PKG_CONFIG --cflags openssl`"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
358 LDFLAGS="$LDFLAGS `$PKG_CONFIG --libs openssl`"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
359 echo yes
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
360 return 0
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
361 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
362
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
363 echo no
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
364 return 1
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
365 }
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
366 dependency_libxml2()
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
367 {
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
368 printf "checking for libxml2... "
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
369 # dependency libxml2 platform="windows"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
370 while true
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
371 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
372 if isnotplatform "windows"; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
373 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
374 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
375 xml2-config --cflags > /dev/null
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
376 if [ $? -eq 0 ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
377 CFLAGS="$CFLAGS `xml2-config --cflags`"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
378 else
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
379 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
380 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
381 xml2-config --libs > /dev/null
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
382 if [ $? -eq 0 ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
383 LDFLAGS="$LDFLAGS `xml2-config --libs`"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
384 else
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
385 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
386 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
387 echo yes
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
388 return 0
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
389 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
390
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
391 # dependency libxml2 platform="macos"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
392 while true
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
393 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
394 if isnotplatform "macos"; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
395 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
396 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
397 xml2-config --cflags > /dev/null
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
398 if [ $? -eq 0 ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
399 CFLAGS="$CFLAGS `xml2-config --cflags`"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
400 else
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
401 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
402 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
403 xml2-config --libs > /dev/null
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
404 if [ $? -eq 0 ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
405 LDFLAGS="$LDFLAGS `xml2-config --libs`"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
406 else
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
407 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
408 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
409 echo yes
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
410 return 0
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
411 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
412
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
413 # dependency libxml2
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
414 while true
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
415 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
416 if [ -z "$PKG_CONFIG" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
417 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
418 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
419 $PKG_CONFIG libxml-2.0
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
420 if [ $? -ne 0 ] ; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
421 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
422 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
423 CFLAGS="$CFLAGS `$PKG_CONFIG --cflags libxml-2.0`"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
424 LDFLAGS="$LDFLAGS `$PKG_CONFIG --libs libxml-2.0`"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
425 echo yes
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
426 return 0
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
427 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
428
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
429 # dependency libxml2
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
430 while true
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
431 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
432 xml2-config --cflags > /dev/null
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
433 if [ $? -eq 0 ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
434 CFLAGS="$CFLAGS `xml2-config --cflags`"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
435 else
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
436 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
437 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
438 xml2-config --libs > /dev/null
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
439 if [ $? -eq 0 ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
440 LDFLAGS="$LDFLAGS `xml2-config --libs`"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
441 else
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
442 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
443 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
444 echo yes
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
445 return 0
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
446 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
447
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
448 echo no
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
449 return 1
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
450 }
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
451
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
452 DEPENDENCIES_FAILED=
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
453 ERROR=0
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
454 # general dependencies
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
455 CFLAGS=
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
456 LDFLAGS=
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
457 while true
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
458 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
459 while true
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
460 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
461
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
462 LDFLAGS="$LDFLAGS -lpthread"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
463
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
464 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
465 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
466
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
467 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
468 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
469 while true
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
470 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
471 if isnotplatform "bsd"; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
472 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
473 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
474 if isplatform "macos"; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
475 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
476 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
477 while true
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
478 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
479
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
480 CFLAGS="$CFLAGS -I/usr/local/include"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
481 LDFLAGS="$LDFLAGS -L/usr/local/lib"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
482
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
483 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
484 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
485
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
486 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
487 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
488 while true
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
489 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
490 if isnotplatform "macos"; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
491 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
492 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
493 while true
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
494 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
495
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
496 cat >> $TEMP_DIR/make.mk << __EOF__
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
497 OBJ_EXT = .o
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
498 LIB_EXT = .a
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
499
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
500 __EOF__
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
501
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
502 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
503 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
504
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
505 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
506 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
507 while true
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
508 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
509 if isnotplatform "unix"; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
510 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
511 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
512 if isplatform "macos"; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
513 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
514 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
515 while true
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
516 do
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
517
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
518 cat >> $TEMP_DIR/make.mk << __EOF__
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
519 OBJ_EXT = .o
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
520 LIB_EXT = .a
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
521
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
522 __EOF__
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
523
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
524 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
525 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
526
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
527 break
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
528 done
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
529
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
530 # add general dependency flags to config.mk
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
531 echo >> $TEMP_DIR/config.mk
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
532 if [ ! -z "${CFLAGS}" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
533 echo "CFLAGS += $CFLAGS" >> $TEMP_DIR/config.mk
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
534 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
535 if [ ! -z "${CXXFLAGS}" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
536 echo "CXXFLAGS += $CXXFLAGS" >> $TEMP_DIR/config.mk
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
537 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
538 if [ ! -z "${LDFLAGS}" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
539 echo "LDFLAGS += $LDFLAGS" >> $TEMP_DIR/config.mk
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
540 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
541
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
542 #
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
543 # OPTION VALUES
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
544 #
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
545
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
546 #
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
547 # TARGETS
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
548 #
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
549 CFLAGS=
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
550 CXXFLAGS=
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
551 LDFLAGS=
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
552
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
553 # Target: dav
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
554 CFLAGS=
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
555 LDFLAGS=
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
556 CXXFLAGS=
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
557
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
558 dependency_curl
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
559 if [ $? -ne 0 ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
560 DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED curl "
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
561 ERROR=1
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
562 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
563 dependency_libxml2
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
564 if [ $? -ne 0 ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
565 DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED libxml2 "
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
566 ERROR=1
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
567 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
568 dependency_openssl
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
569 if [ $? -ne 0 ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
570 DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED openssl "
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
571 ERROR=1
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
572 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
573
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
574 # Features
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
575
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
576
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
577 echo >> $TEMP_DIR/config.mk
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
578 if [ ! -z "${CFLAGS}" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
579 echo "DAV_CFLAGS += $CFLAGS" >> $TEMP_DIR/config.mk
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
580 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
581 if [ ! -z "${CXXFLAGS}" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
582 echo "DAV_CXXFLAGS += $CXXFLAGS" >> $TEMP_DIR/config.mk
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
583 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
584 if [ ! -z "${LDFLAGS}" ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
585 echo "DAV_LDFLAGS += $LDFLAGS" >> $TEMP_DIR/config.mk
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
586 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
587
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
588 if [ $ERROR -ne 0 ]; then
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
589 echo
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
590 echo "Error: Unresolved dependencies"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
591 echo $DEPENDENCIES_FAILED
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
592 rm -Rf $TEMP_DIR
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
593 exit 1
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
594 fi
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
595
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
596 echo "configure finished"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
597 echo
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
598 echo "Build Config:"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
599 echo " PREFIX: $PREFIX"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
600 echo " TOOLCHAIN: $TOOLCHAIN_NAME"
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
601 echo
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
602 cat $TEMP_DIR/config.mk $TEMP_DIR/make.mk > config.mk
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
603 rm -Rf $TEMP_DIR
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
604
7e67689241fd new build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
605

mercurial