summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Melki <christian.melki@t2data.com>2021-11-25 20:33:16 +0100
committerMichael Olbrich <m.olbrich@pengutronix.de>2021-11-27 12:02:21 +0100
commit8b91a4a637d8524c4264f7964c4735dc566a7306 (patch)
tree25c1c9271f260a71dda37a7c4c2e0fd0c9af87be
parent423ab3e0d44f52f52011785091cd7ade9d1725e8 (diff)
downloadptxdist-8b91a4a637d8524c4264f7964c4735dc566a7306.tar.gz
ptxdist-8b91a4a637d8524c4264f7964c4735dc566a7306.tar.xz
dump1090fa: New package. Version 6.1
dump1090 from FlightAware is an ADS-B decoder (Automatic Dependent Surveillance-Broadcast). ADS-B is used by aircrafts to signal their presence. Using a RTL (Realtek, very cheap) based SDR (Software Defined Radio), you can easily build your own ADS-B decoder. Signed-off-by: Christian Melki <christian.melki@t2data.com> Message-Id: <20211125193316.3301120-1-christian.melki@t2data.com> [mol: add missing NCURSES dependency] Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-rw-r--r--patches/dump1090fa-6.1/fix_cpufeatures_arch.patch61
-rw-r--r--patches/dump1090fa-6.1/series2
-rw-r--r--rules/dump1090fa.in9
-rw-r--r--rules/dump1090fa.make78
4 files changed, 150 insertions, 0 deletions
diff --git a/patches/dump1090fa-6.1/fix_cpufeatures_arch.patch b/patches/dump1090fa-6.1/fix_cpufeatures_arch.patch
new file mode 100644
index 000000000..270a35846
--- /dev/null
+++ b/patches/dump1090fa-6.1/fix_cpufeatures_arch.patch
@@ -0,0 +1,61 @@
+From 059e48b82beb4fb920cca977b02db1ceb48facb9 Mon Sep 17 00:00:00 2001
+From: Oliver Jowett <oliver.jowett@flightaware.com>
+Date: Thu, 23 Sep 2021 13:23:17 +0800
+Subject: [PATCH] Allow env vars (not only command line overrides) to set
+ CPUFEATURES_{ARCH,UNAME}. Change CPUFEATURES_{ARCH,UNAME} defaults to use
+ {ARCH,UNAME} values.
+
+Fixes #158
+---
+ Makefile | 8 ++++++--
+ Makefile.cpufeatures | 4 ++--
+ 2 files changed, 8 insertions(+), 4 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index a85d154c5..9d81ed157 100644
+--- a/Makefile
++++ b/Makefile
+@@ -39,7 +39,11 @@ else
+ LIMESDR ?= no
+ endif
+
+-UNAME := $(shell uname)
++HOST_UNAME := $(shell uname)
++HOST_ARCH := $(shell uname -m)
++
++UNAME ?= $(HOST_UNAME)
++ARCH ?= $(HOST_ARCH)
+
+ ifeq ($(UNAME), Linux)
+ CPPFLAGS += -D_DEFAULT_SOURCE
+@@ -150,7 +154,6 @@ endif
+ ## starch (runtime DSP code selection) mix, architecture-specific
+ ##
+
+-ARCH ?= $(shell uname -m)
+ ifneq ($(CPUFEATURES),yes)
+ # need to be able to detect CPU features at runtime to enable any non-standard compiler flags
+ STARCH_MIX := generic
+@@ -180,6 +183,7 @@ include dsp/generated/makefile.$(STARCH_MIX)
+ showconfig:
+ @echo "Building with:" >&2
+ @echo " Version string: $(DUMP1090_VERSION)" >&2
++ @echo " Architecture: $(ARCH)" >&2
+ @echo " DSP mix: $(STARCH_MIX)" >&2
+ @echo " RTLSDR support: $(RTLSDR)" >&2
+ @echo " BladeRF support: $(BLADERF)" >&2
+diff --git a/Makefile.cpufeatures b/Makefile.cpufeatures
+index 8c3b8418d..6b4289978 100644
+--- a/Makefile.cpufeatures
++++ b/Makefile.cpufeatures
+@@ -2,8 +2,8 @@
+
+ # cmake integration is a little tricky, so let's do this by hand for now
+
+-CPUFEATURES_UNAME := $(shell uname)
+-CPUFEATURES_ARCH := $(shell uname -m)
++CPUFEATURES_UNAME ?= $(UNAME)
++CPUFEATURES_ARCH ?= $(ARCH)
+
+ CPUFEATURES_OBJS := cpu_features/src/filesystem.o cpu_features/src/stack_line_reader.o cpu_features/src/string_view.o
+ CPUFEATURES_CFLAGS := -std=c99 -O -g -DSTACK_LINE_READER_BUFFER_SIZE=1024 -DNDEBUG
diff --git a/patches/dump1090fa-6.1/series b/patches/dump1090fa-6.1/series
new file mode 100644
index 000000000..cc3b46e66
--- /dev/null
+++ b/patches/dump1090fa-6.1/series
@@ -0,0 +1,2 @@
+fix_cpufeatures_arch.patch
+
diff --git a/rules/dump1090fa.in b/rules/dump1090fa.in
new file mode 100644
index 000000000..880d6e4a3
--- /dev/null
+++ b/rules/dump1090fa.in
@@ -0,0 +1,9 @@
+## SECTION=networking
+
+menuconfig DUMP1090FA
+ tristate
+ prompt "dump1090fa "
+ select LIBRTLSDR
+ select NCURSES
+ help
+ FlightAware MODE-S/ADS-B decoder.
diff --git a/rules/dump1090fa.make b/rules/dump1090fa.make
new file mode 100644
index 000000000..73f8bd01b
--- /dev/null
+++ b/rules/dump1090fa.make
@@ -0,0 +1,78 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2021 by Christian Melki <christian.melki@t2data.com>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_DUMP1090FA) += dump1090fa
+
+#
+# Paths and names
+#
+DUMP1090FA_VERSION := 6.1
+DUMP1090FA_MD5 := a7cb661bc23974f8bf7650ce26b6e0be
+DUMP1090FA := dump1090fa-$(DUMP1090FA_VERSION)
+DUMP1090FA_SUFFIX := tar.gz
+DUMP1090FA_URL := https://github.com/flightaware/dump1090/archive/refs/tags/v$(DUMP1090FA_VERSION).$(DUMP1090FA_SUFFIX)
+DUMP1090FA_SOURCE := $(SRCDIR)/$(DUMP1090FA).$(DUMP1090FA_SUFFIX)
+DUMP1090FA_DIR := $(BUILDDIR)/$(DUMP1090FA)
+DUMP1090FA_LICENSE := GPL-2.0-only
+DUMP1090FA_LICENSE_FILES := \
+ file://COPYING;md5=751419260aa954499f7abaabaa882bbe
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+DUMP1090FA_ARCH := $(call remove_quotes,$(PTXCONF_ARCH_STRING))
+ifeq ($(DUMP1090FA_ARCH),arm64)
+DUMP1090FA_ARCH := aarch64
+endif
+ifeq ($(DUMP1090FA_ARCH),i386)
+DUMP1090FA_ARCH := x86
+endif
+
+DUMP1090FA_CONF_TOOL := NO
+DUMP1090FA_MAKE_ENV := \
+ $(CROSS_ENV) \
+ BLADERF=no \
+ LIMESDR=no \
+ HACKRF=no \
+ RTLSDR=yes \
+ ARCH=$(DUMP1090FA_ARCH) \
+ CPUFEATURES_ARCH=$(DUMP1090FA_ARCH) \
+ CPUFEATURES_UNAME="Linux"
+
+# ----------------------------------------------------------------------------
+# Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/dump1090fa.install:
+ @$(call targetinfo)
+ @install -vD -m 755 $(DUMP1090FA_DIR)/dump1090 $(DUMP1090FA_PKGDIR)/usr/bin/dump1090-fa
+ $(call touch)
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/dump1090fa.targetinstall:
+ @$(call targetinfo)
+ @$(call install_init, dump1090fa)
+ @$(call install_fixup, dump1090fa,PRIORITY,optional)
+ @$(call install_fixup, dump1090fa,SECTION,base)
+ @$(call install_fixup, dump1090fa,AUTHOR,"Christian Melki <christian.melki@t2data.com>")
+ @$(call install_fixup, dump1090fa,DESCRIPTION,missing)
+
+ @$(call install_copy, dump1090fa, 0, 0, 0755, -, /usr/bin/dump1090-fa)
+
+ @$(call install_finish, dump1090fa)
+
+ @$(call touch)
+
+# vim: syntax=make