43 lines
932 B
Bash
Executable File
43 lines
932 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
function cmakebuild() {
|
|
cd $1
|
|
if [[ ! -z "${2:-}" ]]; then
|
|
git checkout $2
|
|
fi
|
|
mkdir build
|
|
cd build
|
|
cmake ..
|
|
make
|
|
make install
|
|
cd ../..
|
|
rm -rf $1
|
|
}
|
|
|
|
cd /tmp
|
|
|
|
STATIC_PACKAGES="libusb-1.0-0"
|
|
BUILD_PACKAGES="git libusb-1.0-0-dev cmake make gcc g++ pkg-config"
|
|
|
|
if [[ -z ${1:-} ]]; then
|
|
apt-get update
|
|
apt-get -y install --no-install-recommends $STATIC_PACKAGES $BUILD_PACKAGES
|
|
|
|
git clone https://github.com/osmocom/rtl-sdr.git
|
|
# release 2.0.1 from master as of 2024-02-04
|
|
cmakebuild rtl-sdr 420086af84d7eaaf98ff948cd11fea2cae71734a
|
|
|
|
git clone https://github.com/pothosware/SoapyRTLSDR.git
|
|
cmakebuild SoapyRTLSDR soapy-rtl-sdr-0.3.1
|
|
fi
|
|
|
|
if [[ -z ${FULL_BUILD:-} || ${1:-} == 'clean' ]]; then
|
|
echo "Cleaning from $0"
|
|
apt-get -y purge --autoremove $BUILD_PACKAGES
|
|
if [[ -z ${FULL_BUILD:-} ]]; then
|
|
apt-get clean
|
|
rm -rf /var/lib/apt/lists/*
|
|
fi
|
|
fi
|