summaryrefslogtreecommitdiff
path: root/configure
blob: 0af6d2a04d4d3b3f6715811e8ec37b40ac0a4125 (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
108
109
#!/bin/sh

for i in `seq 30`; do
    echo "Lots of output to emulate automake... ok"
    echo "Testing for things you'll never use... fail"
    echo "Satisfying the fortran77 lobby... ok"
    echo "Burning CPU time checking for the bloody obvious... ok"
done
echo "Automake emulated successfully"

INST_ROOT='/usr/local'
prefix="/usr/local"

for arg in $*; do
    shift 1
    case $arg in
        "--redo" | "-r")
            if [ -f ./var_cache ]; then
                . ./var_cache
            fi
            ;;
        "--prefix" | "-p") 
            prefix=shift $*
            ;;
        --prefix=*)
            prefix=`echo $arg | sed 's/^--prefix=//g'`
            ;;
        "--help" | "-h") 
            echo "Usage:"
            echo "      --prefix | -p: The prefix to install to"
            break;
            ;;
        *) echo "Unrecognized argument $arg";;
    esac
done

OS=`uname`
MACH=`uname -m`

echo export INST_ROOT=$prefix > config.mk

# ?m config vars
echo '#define Instroot "'$prefix'"' > config.h
echo '#define Asmcmd {"as", "-g", "-o", NULL}' >> config.h
echo '#define Arcmd {"ar", "-rcs", NULL}' >> config.h
echo '#define Ldcmd {"ld", "-o", NULL}' >> config.h
echo '#define Defaultasm Gnugas' >> config.h
echo '#define Objsuffix ".o"' >> config.h
echo 'export SYSCLASS=posixy' >> config.mk

# mbld config vars
echo "pkg config = " > mbld/config.myr
echo "const Instroot = \"$prefix\"" >> mbld/config.myr
echo "const Objsuffix = \".o\"" >> mbld/config.myr
echo "const Linkcmd = [\"ld\", \"-o\"]" >> mbld/config.myr
echo "const Arcmd = [\"ar\", \"-rcs\"]" >> mbld/config.myr
echo "const Ascmd = [\"as\", \"-g\"]" >> mbld/config.myr
echo "const Directlib = false" >> mbld/config.myr
echo "const Runtime = \"_myrrt.o\"" >> mbld/config.myr
echo "const Manpath = \"share/man/man\"" >> mbld/config.myr
case $OS in
    *Linux*)
        echo '#define Symprefix ""' >> config.h
        echo '#define Defaultasm Gnugas' >> config.h
        echo 'export SYS=linux' >> config.mk
        echo 'const Sys = "Linux"' >> mbld/config.myr
        ;;
    *Darwin*)
        echo '#define Symprefix "_"' >> config.h
        echo 'export SYS=osx' >> config.mk
        echo 'const Sys = "OSX"' >> mbld/config.myr
        ;;
    *FreeBSD*)
        echo '#define Symprefix ""' >> config.h
        echo '#define Defaultasm Gnugas' >> config.h
        echo 'export SYS=freebsd' >> config.mk
        echo 'const Sys = "FreeBSD"' >> mbld/config.myr
        ;;
    *)
        echo ''
        echo '********************************'
        echo 'Unknown system'
        echo 'Cannot build'
        echo '********************************'
        rm -f config.h config.mk
        exit 1
        ;;
esac
echo ";;" >> mbld/config.myr

case $MACH in
    *x86_64*)
        echo 'export ARCH=x64' >> config.mk
        echo 'const Arch = "x64"' >> mbld/config.myr
        ;;
    *)
        echo ''
        echo '********************************'
        echo 'Unknown system'
        echo 'Cannot build'
        echo '********************************'
esac

echo prefix=$prefix > var_cache

cat << EOF
    Building with:
        prefix=$prefix
EOF