X-Git-Url: https://sigrok.org/gitweb/?p=sigrok-util.git;a=blobdiff_plain;f=cross-compile%2Flinux%2Fsigrok-cross-linux;h=2c8e559efde8cf6ae9a365bf1a4324a33600fae7;hp=a01173ab7c37aa97f8073ecae9f88c33cbaa2a03;hb=HEAD;hpb=ab2ccf3daeb8ede4f22f25a95a0cb6475e278066 diff --git a/cross-compile/linux/sigrok-cross-linux b/cross-compile/linux/sigrok-cross-linux index a01173a..6ba7037 100755 --- a/cross-compile/linux/sigrok-cross-linux +++ b/cross-compile/linux/sigrok-cross-linux @@ -15,8 +15,7 @@ ## GNU General Public License for more details. ## ## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +## along with this program; if not, see . ## set -e @@ -36,9 +35,20 @@ BUILDDIR=./build # The path where the libsigrok Python bindings will be installed. PYPATH=$PREFIX/lib/python2.7/site-packages +# JDK include path. Usually found automatically, except on FreeBSD. +if [ `uname` = "FreeBSD" ]; then + JDK="--with-jni-include-path=/usr/local/openjdk7/include" +fi + +# Edit this to control verbose build output. +# V="V=1 VERBOSE=1" + # Edit this to enable/disable/modify parallel compiles. PARALLEL="-j 2" +# Edit this to enable/disable building certain components. +BUILD_SIGROK_FIRMWARE_FX2LAFW=1 + # Uncomment the following lines to build with clang and run scan-build. # export CC=clang # export CXX=clang++ @@ -58,86 +68,94 @@ cd $BUILDDIR GIT_CLONE="git clone --depth=1" +REPO_BASE="git://sigrok.org" + # ----------------------------------------------------------------------------- # libserialport -$GIT_CLONE git://sigrok.org/libserialport +$GIT_CLONE $REPO_BASE/libserialport cd libserialport ./autogen.sh mkdir build cd build -../configure $C -$SB make $PARALLEL -make install +$SB ../configure $C +$SB make $PARALLEL $V +make install $V cd ../.. # libsigrok mkdir -p $PYPATH -$GIT_CLONE git://sigrok.org/libsigrok +$GIT_CLONE $REPO_BASE/libsigrok cd libsigrok ./autogen.sh mkdir build cd build -PKG_CONFIG_PATH=$P ../configure $C -$SB make $PARALLEL -PYTHONPATH=$PYPATH $SB make install -$SB make check +PKG_CONFIG_PATH=$P $SB ../configure $C $JDK +$SB make $PARALLEL $V +PYTHONPATH=$PYPATH $SB make install $V +$SB make check $V cd ../.. # libsigrokdecode -$GIT_CLONE git://sigrok.org/libsigrokdecode +$GIT_CLONE $REPO_BASE/libsigrokdecode cd libsigrokdecode ./autogen.sh mkdir build cd build -PKG_CONFIG_PATH=$P ../configure $C -$SB make $PARALLEL -make install -$SB make check +PKG_CONFIG_PATH=$P $SB ../configure $C +$SB make $PARALLEL $V +make install $V +$SB make check $V cd ../.. # sigrok-firmware -$GIT_CLONE git://sigrok.org/sigrok-firmware +$GIT_CLONE $REPO_BASE/sigrok-firmware cd sigrok-firmware ./autogen.sh mkdir build cd build # Nothing gets cross-compiled here, we just need 'make install' basically. -../configure $C -make install +$SB ../configure $C +make install $V cd ../.. +if [ $BUILD_SIGROK_FIRMWARE_FX2LAFW = 1 ]; then # sigrok-firmware-fx2lafw -$GIT_CLONE git://sigrok.org/sigrok-firmware-fx2lafw +$GIT_CLONE $REPO_BASE/sigrok-firmware-fx2lafw cd sigrok-firmware-fx2lafw ./autogen.sh mkdir build cd build # We're building the fx2lafw firmware on the host, no need to cross-compile. -../configure $C -make $PARALLEL -make install +$SB ../configure $C +make $PARALLEL $V +make install $V cd ../.. +fi # sigrok-cli -$GIT_CLONE git://sigrok.org/sigrok-cli +$GIT_CLONE $REPO_BASE/sigrok-cli cd sigrok-cli ./autogen.sh mkdir build cd build -PKG_CONFIG_PATH=$P ../configure $C -$SB make $PARALLEL -make install +if [ `uname` = "FreeBSD" ]; then + # Temporary fix for: http://sigrok.org/bugzilla/show_bug.cgi?id=552 + PKG_CONFIG_PATH=$P $SB ../configure $C LDFLAGS=-lusb +else + PKG_CONFIG_PATH=$P $SB ../configure $C +fi +$SB make $PARALLEL $V +make install $V cd ../.. # PulseView -$GIT_CLONE git://sigrok.org/pulseview +$GIT_CLONE $REPO_BASE/pulseview cd pulseview mkdir build cd build -PKG_CONFIG_PATH=$P $SB cmake -DCMAKE_INSTALL_PREFIX:PATH=$PREFIX -DDISABLE_WERROR=y -DENABLE_TESTS=y .. -$SB make $PARALLEL -make install -$SB make test +PKG_CONFIG_PATH=$P $SB cmake -DCMAKE_INSTALL_PREFIX:PATH=$PREFIX -DDISABLE_WERROR=y -DENABLE_TESTS=y -DCMAKE_EXPORT_COMPILE_COMMANDS=y .. +$SB make $PARALLEL $V +make install $V +$SB make test $V cd ../.. -