From 6bc79aef64a2fb8e75f661ffc1f66caa0dc24893 Mon Sep 17 00:00:00 2001 From: Sergio Vavassori Date: Thu, 18 May 2023 19:58:40 +0200 Subject: [PATCH 1/7] Builds a simple debian package on tag --- .github/workflows/package.yml | 57 +++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 .github/workflows/package.yml diff --git a/.github/workflows/package.yml b/.github/workflows/package.yml new file mode 100644 index 0000000..37d6c1f --- /dev/null +++ b/.github/workflows/package.yml @@ -0,0 +1,57 @@ +name: Debian packaging + +on: + push: + tags: [ 'v[0-9]+.[0-9]+.[0-9]+' ] + +jobs: + build: + permissions: + contents: write + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + + - name: Install packaged dependencies + run: .github/install_dependencies + + - name: Configure + run: | + cmake -B ${{github.workspace}}/build_Release_NFM -DCMAKE_BUILD_TYPE=Release -DNFM=TRUE + + - name: Build + run: | + VERBOSE=1 cmake --build ${{github.workspace}}/build_Release_NFM -j + + - name: create .deb content structure + run: | + mkdir --parents .debpkg/lib/systemd/system/ + sed 's|/usr/local/bin|/usr/bin|g' init.d/rtl_airband.service > .debpkg/lib/systemd/system/rtl_airband.service + + mkdir --parents .debpkg/usr/bin + cp build_Release_NFM/src/rtl_airband .debpkg/usr/bin/ + + mkdir --parents .debpkg/usr/share/rtl_airband/config + cp config/*.conf .debpkg/usr/share/rtl_airband/config/ + + mkdir --parents .debpkg/usr/share/doc/rtl_airband + cp README.md LICENSE .debpkg/usr/share/doc/rtl_airband/ + gzip --keep --stdout NEWS.md > .debpkg/usr/share/doc/rtl_airband/NEWS.md.gz + + - uses: jiro4989/build-deb-action@v3 + with: + package: rtl-airband + package_root: .debpkg + maintainer: charlie-foxtrot + version: ${{ github.ref }} # refs/tags/v*.*.* + arch: 'amd64' + depends: 'libc6 (>= 2.34), libconfig++9v5 (>= 1.5-0.4), libmp3lame0 (>= 3.100), libshout3 (>= 2.4.5), librtlsdr0 (>= 0.6.0), libsoapysdr0.8 (>= 0.8.1), libfftw3-single3 (>= 3.3.8), libpulse0 (>= 14.2)' + desc: 'RTLSDR Airband - A multiband decoder for AM and NFM signals' + compress_type: xz + + - name: Release + uses: softprops/action-gh-release@v1 + with: + files: rtl-airband_*_amd64.deb + fail_on_unmatched_files: true + From 64551daa2f6fc9981b527154dfd15281e960ba7a Mon Sep 17 00:00:00 2001 From: Sergio Vavassori Date: Thu, 15 Jun 2023 00:28:33 +0200 Subject: [PATCH 2/7] Adds new package workflow with separate scripts --- .github/install_dependencies | 42 ---------- .github/workflows/build.yml | 115 +++++++++++++++++++++++++- Dockerfile | 48 +++++++++++ config/basic_emergency.conf | 30 +++++++ script/install_debian_dependencies.sh | 17 ++++ script/install_dependencies.sh | 21 +++++ script/install_macos_dependencies.sh | 13 +++ script/package.sh | 74 +++++++++++++++++ script/snapshot_version.sh | 23 ++++++ 9 files changed, 339 insertions(+), 44 deletions(-) delete mode 100755 .github/install_dependencies create mode 100644 Dockerfile create mode 100644 config/basic_emergency.conf create mode 100755 script/install_debian_dependencies.sh create mode 100755 script/install_dependencies.sh create mode 100755 script/install_macos_dependencies.sh create mode 100755 script/package.sh create mode 100755 script/snapshot_version.sh diff --git a/.github/install_dependencies b/.github/install_dependencies deleted file mode 100755 index 31147d0..0000000 --- a/.github/install_dependencies +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash - -unameOut="$(uname -s)" - -echo "Running on ${unameOut} as ${USER}" - -case "${unameOut}" in - Linux*) - echo "Installing Linux dependencies" - sudo apt-get update -y - sudo apt-get install -y \ - build-essential \ - cmake \ - libmp3lame-dev \ - libshout3-dev \ - libconfig++-dev \ - libfftw3-dev \ - librtlsdr-dev \ - libsoapysdr-dev \ - libpulse-dev - ;; - - Darwin*) - echo "Installing MacOS dependencies" - brew update - brew upgrade - brew install \ - lame \ - libshout \ - libconfig \ - fftw \ - librtlsdr \ - soapysdr \ - pulseaudio \ - pkg-config - - ;; - - *) - echo "Error: Machine not supported" - exit -1 -esac diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f80b908..5188dc6 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -2,7 +2,7 @@ name: Test build on: push: - branches: [main, unstable] + branches: [main, unstable, feature/debian-package] pull_request: schedule: - cron: '39 13 * * *' # run daily @@ -19,7 +19,7 @@ jobs: uses: actions/checkout@main - name: Install packaged dependencies - run: .github/install_dependencies + run: script/install_dependencies.sh - name: Configure run: | @@ -47,3 +47,114 @@ jobs: - name: Test run run: /usr/local/bin/rtl_airband -v + + - name: Set snapshot version + id: sha + run: echo "snapshot_version=$(script/snapshot_version.sh)" >> $GITHUB_OUTPUT + + - name: Create debian package + if: runner.os == 'Linux' + run: | + pkg_dir="$(mktemp --directory)" + export PACKAGE="rtl-airband" + export VERSION="${{ steps.sha.outputs.snapshot_version }}" + export ARCH="$(dpkg --print-architecture)" + export MAINTAINER="charlie-foxtrot" + export DEPENDS="libc6 (>= 2.34), libconfig++9v5 (>= 1.5-0.4), libmp3lame0 (>= 3.100), libshout3 (>= 2.4.5), librtlsdr0 (>= 0.6.0), libsoapysdr0.8 (>= 0.8.1), libfftw3-single3 (>= 3.3.8), libpulse0 (>= 14.2)" + export DESCRIPTION="RTLSDR Airband - A multiband decoder for AM and NFM signals" + script/package.sh "${pkg_dir}" + + # TODO use brew for macOS? https://brew.sh/ + - name: Create macOS package + if: runner.os == 'macOS' + run: | + tar -zcvf rtl-airband_${{ steps.sha.outputs.snapshot_version }}_${{ matrix.os }}.tgz build_Release_NFM/src/rtl_airband + + - name: "Upload package as artifact" + uses: actions/upload-artifact@v3 + with: + name: "rtl-airband_${{ steps.sha.outputs.snapshot_version }}_${{ matrix.os }}" + path: | + *.deb + *.tgz + retention-days: 7 + + build-foreign-arch: + needs: build + runs-on: ubuntu-latest + permissions: + contents: write + packages: write + steps: + - name: Checkout repository + uses: actions/checkout@main + + - name: Set up Docker Buildx + id: buildx + uses: docker/setup-buildx-action@v2 + + - name: Available build platforms + run: echo ${{ steps.buildx.outputs.platforms }} + + - name: Login to GHCR + if: github.event_name != 'pull_request' + uses: docker/login-action@v2 + with: + registry: ghcr.io + username: ${{ github.repository_owner }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Docker metadata + id: meta_worker + uses: docker/metadata-action@v4 + with: + # ghcr.io/charlie-foxtrot/rtl-airband + images: | + ghcr.io/svavassori/rtl-airband + # generate Docker tags based on the following events/attributes + tags: | + type=schedule + type=ref,event=branch + type=ref,event=pr + type=ref,event=tag + type=semver,pattern={{version}} + type=semver,pattern={{major}}.{{minor}} + type=semver,pattern={{major}} + type=sha,prefix={{branch}}- + + - name: Build and push Docker images + uses: docker/build-push-action@v4 + with: + cache-to: type=local,dest=/tmp/buildx-cache + context: . + file: Dockerfile + platforms: linux/amd64,linux/arm64,linux/arm/v7,linux/arm/v6 + outputs: type=image + push: ${{ github.event_name != 'pull_request' }} + tags: ${{ steps.meta_worker.outputs.tags }} + labels: ${{ steps.meta_worker.outputs.labels }} + + - name: "Extract debian packages from docker cache" + run: | + mkdir packages + find /tmp/buildx-cache/ -type f -size +50k -a -size -512k | xargs -I {} tar -xvf {} --strip-components=1 --directory=packages/ + + - name: Set snapshot version + id: sha + run: echo "snapshot_version=$(script/snapshot_version.sh)" >> $GITHUB_OUTPUT + + - name: "Upload packages as artifacts" + uses: actions/upload-artifact@v3 + with: + name: "rtl-airband_${{ steps.sha.outputs.snapshot_version }}_multiarch-deb" + path: "packages/*.deb" + retention-days: 7 + + - name: Release packages + uses: softprops/action-gh-release@v1 + with: + files: packages/*.deb + prerelease: ${{ github.ref_type != 'tag' }} + name: ${{ github.ref_name }}-${{ steps.sha.outputs.snapshot_version }} + tag_name: ${{ github.ref_name }}-${{ steps.sha.outputs.snapshot_version }} + fail_on_unmatched_files: true diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..711b9e9 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,48 @@ +FROM debian:12.0-slim AS build + +# copy script files +WORKDIR /build +COPY script /build/script + +# install development dependencies +RUN export DEBIAN_FRONTEND="noninteractive" \ + && apt-get update \ + && apt-get upgrade --quiet --yes \ + && apt-get install --quiet --yes --no-install-recommends \ + gettext-base `# provides envsubst` \ + git `# to extract commit info` \ + && script/install_debian_dependencies.sh \ + && rm -rf /var/lib/apt/lists/* + +# copy the rest of the project +COPY . /build + +# configure and build +RUN cmake --compile-no-warning-as-error -B build_Release_NFM -DCMAKE_BUILD_TYPE=Release -DNFM=TRUE \ + && VERBOSE=1 cmake --build build_Release_NFM -j$(nproc) + +# create .deb content structure and package it +RUN pkg_dir="$(mktemp --directory)" \ + && PACKAGE="rtl-airband" \ + VERSION="${VERSION:-$(script/snapshot_version.sh)}" \ + ARCH="$(dpkg --print-architecture)" \ + MAINTAINER="charlie-foxtrot" \ + DEPENDS="libc6 (>= 2.34), libconfig++9v5 (>= 1.5-0.4), libmp3lame0 (>= 3.100), libshout3 (>= 2.4.5), librtlsdr0 (>= 0.6.0), libsoapysdr0.8 (>= 0.8.1), libfftw3-single3 (>= 3.3.8), libpulse0 (>= 14.2)" \ + DESCRIPTION="RTLSDR Airband - A multiband decoder for AM and NFM signals" \ + script/package.sh "${pkg_dir}" + +FROM debian:12.0-slim as install +COPY --from=build /build/rtl-airband*.deb /tmp +RUN export DEBIAN_FRONTEND="noninteractive" \ + && apt-get update \ + && apt-get upgrade --quiet --yes \ + && apt-get install --quiet --yes --no-install-recommends \ + /tmp/rtl-airband*.deb \ + # && rm /tmp/rtl-airband*.deb \ + && rm -rf /var/lib/apt/lists/* + +# trick to get all the content without the additional "COPY" layer +#FROM scratch +#COPY --from=install / / +ENTRYPOINT ["/usr/bin/rtl_airband"] +CMD [ "-e", "-f", "-c", "/usr/share/rtl_airband/config/default.conf" ] diff --git a/config/basic_emergency.conf b/config/basic_emergency.conf new file mode 100644 index 0000000..7b864a0 --- /dev/null +++ b/config/basic_emergency.conf @@ -0,0 +1,30 @@ +# This is a minimalistic configuration file for RTLSDR-Airband. +# Just a single RTL dongle with one emergency AM channel. +# +# Refer to https://github.com/charlie-foxtrot/RTLSDR-Airband/wiki +# for description of keywords and config syntax. + +devices: +({ + type = "rtlsdr"; + index = 0; + gain = 25; + centerfreq = 121; + correction = 48; + channels: + ( + { + freq = 121.5; + outputs: ( + { + type = "file"; + directory = "/tmp"; + filename_template = "E1_"; + name = "Tower Emergency"; + genre = "ATC"; + } + ); + } + ); + } +); diff --git a/script/install_debian_dependencies.sh b/script/install_debian_dependencies.sh new file mode 100755 index 0000000..cc82b4b --- /dev/null +++ b/script/install_debian_dependencies.sh @@ -0,0 +1,17 @@ +#! /bin/bash + +set -o errexit +set -o nounset + +export DEBIAN_FRONTEND="noninteractive" +apt-get update +apt-get install --quiet --yes --no-install-recommends \ + build-essential \ + cmake \ + libconfig++-dev \ + libfftw3-dev \ + libmp3lame-dev \ + libpulse-dev \ + librtlsdr-dev \ + libshout3-dev \ + libsoapysdr-dev diff --git a/script/install_dependencies.sh b/script/install_dependencies.sh new file mode 100755 index 0000000..4809fca --- /dev/null +++ b/script/install_dependencies.sh @@ -0,0 +1,21 @@ +#!/bin/bash + +unameOut="$(uname -s)" + +echo "Running on ${unameOut} as ${USER}" + +case "${unameOut}" in + Linux*) + echo "Installing Linux dependencies" + sudo script/install_debian_dependencies.sh + ;; + + Darwin*) + echo "Installing MacOS dependencies" + script/install_macos_dependencies.sh + ;; + + *) + echo "Error: Machine not supported" + exit -1 +esac diff --git a/script/install_macos_dependencies.sh b/script/install_macos_dependencies.sh new file mode 100755 index 0000000..3db5f80 --- /dev/null +++ b/script/install_macos_dependencies.sh @@ -0,0 +1,13 @@ +#! /bin/bash + +brew update +brew upgrade +brew install \ + lame \ + libshout \ + libconfig \ + fftw \ + librtlsdr \ + soapysdr \ + pulseaudio \ + pkg-config diff --git a/script/package.sh b/script/package.sh new file mode 100755 index 0000000..5750cf2 --- /dev/null +++ b/script/package.sh @@ -0,0 +1,74 @@ +#!/bin/bash + +set -o errexit +set -o noclobber +set -o nounset +set -o pipefail + +if [ -z "$1" ] + then + echo "Usage: $0 package_root [ compress_type ]" + echo "compress_type must be one of the types accepted by dpkg-deb (-Z), default to 'xz'" + exit 1 +fi + +readonly package_root="$1" +readonly compress_type="${2:-xz}" + +# calculate uncompressed size in kB, rounded up +package_root_size="$(du --bytes --summarize --exclude=DEBIAN "${package_root}"/ | awk '{print $1}')" +readonly package_root_size +readonly installed_size="$(( (package_root_size + 1024 - 1) / 1024 ))" + +# # creates control file +mkdir -p "${package_root}/DEBIAN/" +cat << EOF | envsubst > "${package_root}/DEBIAN/control" +Package: ${PACKAGE} +Version: ${VERSION} +Installed-Size: ${installed_size} +Architecture: ${ARCH} +Maintainer: ${MAINTAINER} +Depends: ${DEPENDS} +Description: ${DESCRIPTION} +Homepage: https://github.com/charlie-foxtrot/RTLSDR-Airband.git +EOF + +# post install script to symlink default config +cat << EOF > "${package_root}/DEBIAN/postinst" +#!/bin/sh + +set -o errexit + +if [ ! -e /usr/share/rtl_airband/config/default.conf ]; then + ln --symbolic /usr/share/rtl_airband/config/basic_emergency.conf /usr/share/rtl_airband/config/default.conf +fi +EOF + +# pre remove script to delete postinst symlink +cat << EOF > "${package_root}/DEBIAN/prerm" +#!/bin/sh + +set -o errexit + +if [ -L /usr/share/rtl_airband/config/default.conf ]; then + rm /usr/share/rtl_airband/config/default.conf +fi +EOF + +chmod 755 "${package_root}/DEBIAN/postinst" "${package_root}/DEBIAN/prerm" + + +# creates package structure +mkdir --parents "${package_root}/lib/systemd/system/" +sed 's|/usr/local/bin|/usr/bin|g' init.d/rtl_airband.service > "${package_root}/lib/systemd/system/rtl_airband.service" +mkdir --parents "${package_root}/usr/bin" +cp build_Release_NFM/src/rtl_airband "${package_root}/usr/bin/" +mkdir --parents "${package_root}/usr/share/rtl_airband/config" +cp config/*.conf "${package_root}/usr/share/rtl_airband/config/" +mkdir --parents "${package_root}/usr/share/doc/rtl_airband" +cp README.md LICENSE "${package_root}/usr/share/doc/rtl_airband/" +gzip --keep --stdout NEWS.md > "${package_root}/usr/share/doc/rtl_airband/NEWS.md.gz" + +# package +readonly DEB_FILE="${PACKAGE}_${VERSION}_${ARCH}.deb" +dpkg-deb -Z"${compress_type}" --root-owner-group --build "${package_root}" "$DEB_FILE" diff --git a/script/snapshot_version.sh b/script/snapshot_version.sh new file mode 100755 index 0000000..1a1b417 --- /dev/null +++ b/script/snapshot_version.sh @@ -0,0 +1,23 @@ +#!/bin/bash + +set -o errexit +set -o nounset +set -o pipefail + +# if it has a tag on current coommit, use that. +tag=$(git tag --points-at HEAD | { grep --max-count=1 -E "[0-9\.]+" || true; }) + +if [ -n "${tag}" ]; then + echo "${tag}" + exit 0 +fi + +# otherwise it reads the current version from CMakeLists.txt to build package snapshot version +# e.g. 1.2.3+git20210105.ab123cd +current_version=$(grep "(RTL_AIRBAND_VERSION_" CMakeLists.txt | tr '\n' '.' | tr -Cd '0-9.' | sed 's/\.$//g') +commit_date=$(TZ=UTC0 git show --quiet --date='format-local:%Y%m%d' --format="%cd") +commit_hash=$(git show --quiet --format='%h') + +package_snapshot_version="${current_version}+git${commit_date}.${commit_hash}" + +echo "${package_snapshot_version}" From d5e2302f5110099b3fb97cb415677cc2149161cf Mon Sep 17 00:00:00 2001 From: Sergio Vavassori Date: Tue, 27 Jun 2023 00:05:02 +0200 Subject: [PATCH 3/7] Downloads all artifacts to publish them as (pre-)release --- .github/workflows/build.yml | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 5188dc6..1a1f019 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -68,7 +68,7 @@ jobs: - name: Create macOS package if: runner.os == 'macOS' run: | - tar -zcvf rtl-airband_${{ steps.sha.outputs.snapshot_version }}_${{ matrix.os }}.tgz build_Release_NFM/src/rtl_airband + tar -zcvf rtl-airband_${{ steps.sha.outputs.snapshot_version }}_${{ matrix.os }}.tar.gz build_Release_NFM/src/rtl_airband - name: "Upload package as artifact" uses: actions/upload-artifact@v3 @@ -76,7 +76,7 @@ jobs: name: "rtl-airband_${{ steps.sha.outputs.snapshot_version }}_${{ matrix.os }}" path: | *.deb - *.tgz + *.tar.gz retention-days: 7 build-foreign-arch: @@ -149,11 +149,23 @@ jobs: name: "rtl-airband_${{ steps.sha.outputs.snapshot_version }}_multiarch-deb" path: "packages/*.deb" retention-days: 7 + + - name: "Download all OS packages" + run: mkdir /tmp/other-artifacts + + - uses: actions/download-artifact@v3 + with: + path: /tmp/other-artifacts + + - name: "Copy artifacts into packages directory" + run: find /tmp/other-artifacts -type f -exec mv {} packages/ \; - name: Release packages uses: softprops/action-gh-release@v1 with: - files: packages/*.deb + files: | + packages/*.deb + packages/*.tar.gz prerelease: ${{ github.ref_type != 'tag' }} name: ${{ github.ref_name }}-${{ steps.sha.outputs.snapshot_version }} tag_name: ${{ github.ref_name }}-${{ steps.sha.outputs.snapshot_version }} From a08bc582a632eaba83141c2a5cab18941a8c1d54 Mon Sep 17 00:00:00 2001 From: Sergio Vavassori Date: Mon, 26 Jun 2023 20:40:03 +0200 Subject: [PATCH 4/7] Adds macOS-13 --- .github/workflows/build.yml | 2 +- script/install_macos_dependencies.sh | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 1a1f019..4703bfd 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -11,7 +11,7 @@ jobs: build: strategy: matrix: - os: [ ubuntu-22.04, macos-latest, rpi3b, macos-11, macos-12, ubuntu-latest, ubuntu-20.04 ] + os: [ ubuntu-22.04, macos-latest, rpi3b, macos-11, macos-12, macos-13, ubuntu-latest, ubuntu-20.04 ] runs-on: ${{ matrix.os }} timeout-minutes: 35 # runtime across all OSs, runs can get queued and mac runs take 15-20 min steps: diff --git a/script/install_macos_dependencies.sh b/script/install_macos_dependencies.sh index 3db5f80..c73ab23 100755 --- a/script/install_macos_dependencies.sh +++ b/script/install_macos_dependencies.sh @@ -11,3 +11,4 @@ brew install \ soapysdr \ pulseaudio \ pkg-config +brew link openssl From 946f17a9d6af9bc9566a3221038d9ce962e78b36 Mon Sep 17 00:00:00 2001 From: Sergio Vavassori Date: Mon, 26 Jun 2023 20:50:37 +0200 Subject: [PATCH 5/7] Temporary disable Raspberry PI 3 worker --- .github/workflows/build.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4703bfd..d4ebd61 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -11,7 +11,8 @@ jobs: build: strategy: matrix: - os: [ ubuntu-22.04, macos-latest, rpi3b, macos-11, macos-12, macos-13, ubuntu-latest, ubuntu-20.04 ] + os: [ ubuntu-22.04, macos-latest, macos-11, macos-12, macos-13, ubuntu-latest, ubuntu-20.04 ] + # TODO: re-enable before creating PR: rpi3b, runs-on: ${{ matrix.os }} timeout-minutes: 35 # runtime across all OSs, runs can get queued and mac runs take 15-20 min steps: From 04d4e9b2afab6599b52355b7e6f48a92c679487f Mon Sep 17 00:00:00 2001 From: svavassori Date: Sat, 8 Jul 2023 13:21:35 +0200 Subject: [PATCH 6/7] Fix typo in script/package.sh Co-authored-by: charlie-foxtrot <13514783+charlie-foxtrot@users.noreply.github.com> --- script/package.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/script/package.sh b/script/package.sh index 5750cf2..a85805c 100755 --- a/script/package.sh +++ b/script/package.sh @@ -20,7 +20,7 @@ package_root_size="$(du --bytes --summarize --exclude=DEBIAN "${package_root}"/ readonly package_root_size readonly installed_size="$(( (package_root_size + 1024 - 1) / 1024 ))" -# # creates control file +# creates control file mkdir -p "${package_root}/DEBIAN/" cat << EOF | envsubst > "${package_root}/DEBIAN/control" Package: ${PACKAGE} From e69962c427421db324e18ecc2dfbd892a418711d Mon Sep 17 00:00:00 2001 From: Sergio Vavassori Date: Sat, 8 Jul 2023 13:20:09 +0200 Subject: [PATCH 7/7] Add commit to remember version order dependency --- CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index bcff877..e396aab 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,6 +1,7 @@ cmake_minimum_required (VERSION 3.1) project (RTLSDR-Airband CXX) +# major, minor and patch should be kept in this order for script/shapshot_version.sh to work. set (RTL_AIRBAND_VERSION_MAJOR 4) set (RTL_AIRBAND_VERSION_MINOR 1) set (RTL_AIRBAND_VERSION_PATCH 1)