blob: cfcf23d7dee105e08b0429d7d5c1fdd3a8d6a3e2 (
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
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
|
# setup environment variables for building OpenSCAD against custom built
# dependency libraries. works on Linux/BSD.
#
# Please see the 'uni-build-dependencies.sh' file for usage information
#
setenv_common()
{
if [ ! $BASEDIR ]; then
if [ -f openscad.pro ]; then
# if in main openscad dir, put under $HOME
BASEDIR=$HOME/openscad_deps
else
# otherwise, assume its being run 'out of tree'. treat it somewhat like
# "configure" or "cmake", so you can build dependencies where u wish.
echo "Warning: Not in OpenSCAD src dir... using current directory as base of build"
BASEDIR=$PWD/openscad_deps
fi
fi
DEPLOYDIR=$BASEDIR
export BASEDIR
export PATH=$BASEDIR/bin:$PATH
export LD_LIBRARY_PATH=$DEPLOYDIR/lib:$DEPLOYDIR/lib64
export LD_RUN_PATH=$DEPLOYDIR/lib:$DEPLOYDIR/lib64
export OPENSCAD_LIBRARIES=$DEPLOYDIR
export GLEWDIR=$DEPLOYDIR
echo BASEDIR: $BASEDIR
echo DEPLOYDIR: $DEPLOYDIR
echo PATH modified
echo LD_LIBRARY_PATH modified
echo LD_RUN_PATH modified
echo OPENSCAD_LIBRARIES modified
echo GLEWDIR modified
if [ "`uname -m | grep sparc64`" ]; then
echo detected sparc64. forcing 32 bit with export ABI=32
ABI=32
export ABI
fi
}
setenv_freebsd()
{
echo .... freebsd detected.
echo .... if you have freebsd >9, it is advisable to install
echo .... the clang compiler and re-run this script as
echo .... '. ./scripts/setenv-unibuild.sh clang'
setenv_common
QMAKESPEC=freebsd-g++
QTDIR=/usr/local/share/qt4
export QMAKESPEC
export QTDIR
}
setenv_netbsd()
{
setenv_common
echo --- netbsd build situation is complex. it comes with gcc4.5
echo --- which is incompatable with updated CGAL.
echo --- you may need to hack with newer gcc to make it work
QMAKESPEC=netbsd-g++
QTDIR=/usr/pkg/qt4
PATH=/usr/pkg/qt4/bin:$PATH
LD_LIBRARY_PATH=/usr/pkg/qt4/lib:$LD_LIBRARY_PATH
LD_LIBRARY_PATH=/usr/X11R7/lib:$LD_LIBRARY_PATH
LD_LIBRARY_PATH=/usr/pkg/lib:$LD_LIBRARY_PATH
export QMAKESPEC
export QTDIR
export PATH
export LD_LIBRARY_PATH
}
setenv_linux_clang()
{
export CC=clang
export CXX=clang++
export QMAKESPEC=unsupported/linux-clang
echo CC has been modified: $CC
echo CXX has been modified: $CXX
echo QMAKESPEC has been modified: $QMAKESPEC
}
setenv_freebsd_clang()
{
export CC=clang
export CXX=clang++
export QMAKESPEC=freebsd-clang
echo CC has been modified: $CC
echo CXX has been modified: $CXX
echo QMAKESPEC has been modified: $QMAKESPEC
}
setenv_netbsd_clang()
{
echo --------------------- this is not yet supported. netbsd 6 lacks
echo --------------------- certain things needed for clang support
export CC=clang
export CXX=clang++
export QMAKESPEC=./patches/mkspecs/netbsd-clang
echo CC has been modified: $CC
echo CXX has been modified: $CXX
echo QMAKESPEC has been modified: $QMAKESPEC
}
clean_note()
{
if [ $QT5_SETUP ]; then
QMAKEBIN=qmake
elif [ "`command -v qmake-qt4`" ]; then
QMAKEBIN=qmake-qt4
else
QMAKEBIN=qmake
fi
echo "Please re-run" $QMAKEBIN "and run 'make clean' if necessary"
}
setenv_qt5()
{
QT5_SETUP=true
if [ ! $QTDIR ]; then
QTDIR=/opt/qt5
echo Please set QTDIR before running this qt5 script. Assuming $QTDIR
fi
PATH=$QTDIR/bin:$PATH
LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
LD_RUN_PATH=$QTDIR/lib:$LD_RUN_PATH
if [ "`echo $CC | grep clang`" ]; then
if [ "`uname | grep -i linux`" ]; then
QMAKESPEC=linux-clang
echo QMAKESPEC has been modified: $QMAKESPEC
fi
fi
export QTDIR
export PATH
export LD_LIBRARY_PATH
export LD_RUN_PATH
export QMAKESPEC
echo QTDIR is set to: $QTDIR
echo PATH has been modified with $QTDIR/bin
echo LD_LIBRARY_PATH has been modified with $QTDIR/lib
echo LD_RUN_PATH has been modified with $QTDIR/lib
export QT5_SETUP
}
if [ "`uname | grep -i 'linux\|debian'`" ]; then
setenv_common
if [ "`echo $* | grep clang`" ]; then
setenv_linux_clang
fi
elif [ "`uname | grep -i freebsd`" ]; then
setenv_freebsd
if [ "`echo $* | grep clang`" ]; then
setenv_freebsd_clang
fi
elif [ "`uname | grep -i netbsd`" ]; then
setenv_netbsd
if [ "`echo $* | grep clang`" ]; then
setenv_netbsd_clang
fi
else
# guess
setenv_common
echo unknown system. guessed env variables. see 'setenv-unibuild.sh'
fi
if [ "`echo $* | grep qt5`" ]; then
setenv_qt5
fi
if [ -e $DEPLOYDIR/include/Qt ]; then
echo "Qt found under $DEPLOYDIR ... "
QTDIR=$DEPLOYDIR
export QTDIR
echo "QTDIR modified to $DEPLOYDIR"
fi
clean_note
|