summaryrefslogtreecommitdiff
path: root/configure
blob: dca28c883733cfb028f23618142d270859b4b6c1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
#!/bin/sh
#
#
#  rhctl
#
#  Copyright (C) 2009 Christian Pointner <equinox@spreadspace.org>
#
#  This file is part of rhctl.
#
#  rhctl is free software: you can redistribute it and/or modify
#  it under the terms of the GNU General Public License as published by
#  the Free Software Foundation, either version 3 of the License, or
#  any later version.
#
#  rhctl is distributed in the hope that it will be useful,
#  but WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#  GNU General Public License for more details.
#
#  You should have received a copy of the GNU General Public License
#  along with rhctl. If not, see <http://www.gnu.org/licenses/>.
#

TARGET=`uname -s`

CFLAGS='-g -O2'
LDFLAGS='-g -Wall -O2'

PREFIX='/usr/local'
USERNAME='rhctl'
USERHOME='/var/run/rhctl'

print_usage() {
  echo "configure --help                    print this"
  echo "          --target=<TARGET>         build target i.e. Linux (default: autodetect)"
  echo "          --prefix=<PREFIX>         the installation prefix (default: /usr/local)"
  echo "          --username=<USERNAME>     create this user when installing (default: rhctl)"
  echo "          --userhome=<PATH>         the home directory of the user to be created  (default: /var/run/rhctl)"
}

for arg
do
  case $arg in
  --target=*)
    TARGET=${arg#--target=}
  ;;
  --prefix=*)
    PREFIX=${arg#--prefix=}
  ;;
  --username=*)
    USERNAME=${arg#--username=}
  ;;
  --userhome=*)
    USERHOME=${arg#--userhome=}
  ;;
  --help)
    print_usage
    exit 0
  ;;
  *)
    echo "Unknown argument: $arg"
    print_usage
    exit 1
  ;;
  esac
done

rm -f include.mk
case $TARGET in 
  Linux)
    echo "Linux specific build options"
  ;;
  OpenBSD|FreeBSD|NetBSD)
    echo "BSD specific build options"
    CFLAGS=$CFLAGS' -I/usr/local/include'
    LDFLAGS=$LDFLAGS' -L/usr/local/lib'
  ;;
  *)
    echo "Plattform not supported"
    exit 1;
  ;;
esac

if [ "x$PREFIX" = "x/usr" ]; then
 ETCDIR=/etc
else
 ETCDIR=$PREFIX/etc
fi

cat >> include.mk <<EOF
# this file was created automatically
# do not edit this file directly 
# use ./configure instead

TARGET := $TARGET
CC := gcc
CFLAGS := $CFLAGS
LDFLAGS := $LDFLAGS

SBINDIR := $PREFIX/sbin
MANDIR := $PREFIX/share/man
ETCDIR := $ETCDIR
USERNAME := $USERNAME
USERHOME := $USERHOME
EOF

exit 0