3 ## This file is part of the sigrok-util project.
5 ## Copyright (C) 2014 Uwe Hermann <uwe@hermann-uwe.de>
7 ## This program is free software; you can redistribute it and/or modify
8 ## it under the terms of the GNU General Public License as published by
9 ## the Free Software Foundation; either version 2 of the License, or
10 ## (at your option) any later version.
12 ## This program is distributed in the hope that it will be useful,
13 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
14 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 ## GNU General Public License for more details.
17 ## You should have received a copy of the GNU General Public License
18 ## along with this program; if not, see <http://www.gnu.org/licenses/>.
23 # Uncomment/set the following to match your cross-toolchain setup.
25 # TOOLCHAIN_TRIPLET=...
26 # C="--host=$TOOLCHAIN_TRIPLET"
27 # export PATH=$TOOLCHAIN/bin:$PATH
29 # The path where the compiled packages will be installed.
32 # The path where to download files to and where to build packages.
35 # The path where the libsigrok Python bindings will be installed.
36 PYPATH=$PREFIX/lib/python2.7/site-packages
38 # JDK include path. Usually found automatically, except on FreeBSD.
39 if [ `uname` = "FreeBSD" ]; then
40 JDK="--with-jni-include-path=/usr/local/openjdk7/include"
43 # Edit this to control verbose build output.
46 # Edit this to enable/disable/modify parallel compiles.
49 # Uncomment the following lines to build with clang and run scan-build.
52 # SB="scan-build -k -v"
54 # You usually don't need to change anything below this line.
56 # -----------------------------------------------------------------------------
58 P="$PREFIX/lib/pkgconfig"
59 C="$C --prefix=$PREFIX"
61 # Remove build directory contents (if any) and create a new build dir.
66 GIT_CLONE="git clone --depth=1"
68 REPO_BASE="git://sigrok.org"
70 # -----------------------------------------------------------------------------
73 $GIT_CLONE $REPO_BASE/libserialport
85 $GIT_CLONE $REPO_BASE/libsigrok
90 PKG_CONFIG_PATH=$P $SB ../configure $C $JDK
92 PYTHONPATH=$PYPATH $SB make install $V
97 $GIT_CLONE $REPO_BASE/libsigrokdecode
102 PKG_CONFIG_PATH=$P $SB ../configure $C
103 $SB make $PARALLEL $V
109 $GIT_CLONE $REPO_BASE/sigrok-firmware
114 # Nothing gets cross-compiled here, we just need 'make install' basically.
119 # sigrok-firmware-fx2lafw
120 $GIT_CLONE $REPO_BASE/sigrok-firmware-fx2lafw
121 cd sigrok-firmware-fx2lafw
125 # We're building the fx2lafw firmware on the host, no need to cross-compile.
132 $GIT_CLONE $REPO_BASE/sigrok-cli
137 if [ `uname` = "FreeBSD" ]; then
138 # Temporary fix for: http://sigrok.org/bugzilla/show_bug.cgi?id=552
139 PKG_CONFIG_PATH=$P $SB ../configure $C LDFLAGS=-lusb
141 PKG_CONFIG_PATH=$P $SB ../configure $C
143 $SB make $PARALLEL $V
148 $GIT_CLONE $REPO_BASE/pulseview
152 PKG_CONFIG_PATH=$P $SB cmake -DCMAKE_INSTALL_PREFIX:PATH=$PREFIX -DDISABLE_WERROR=y -DENABLE_TESTS=y -DCMAKE_EXPORT_COMPILE_COMMANDS=y ..
153 $SB make $PARALLEL $V