rtl-ais/Makefile

81 wiersze
2.1 KiB
Makefile
Czysty Zwykły widok Historia

2023-06-04 20:26:03 +00:00
CFLAGS?=-O2 -g -Wall
CFLAGS+= -I./aisdecoder -I ./aisdecoder/lib -I./tcp_listener
2023-05-24 10:18:40 +00:00
LD_EXTRA_PATHS= -L /usr/lib/arm-linux-gnueabihf/ -L /usr/lib/i386-linux-gnu/ -L /usr/lib/x86_64-linux-gnu/
LDFLAGS+=-lpthread -lm $(LD_EXTRA_PATHS)
2020-02-19 18:55:24 +00:00
ifeq ($(PREFIX),)
PREFIX := /usr/local
endif
2015-07-13 22:38:56 +00:00
UNAME := $(shell uname)
ifeq ($(UNAME),Linux)
#Conditional for Linux
CFLAGS+= $(shell pkg-config --cflags librtlsdr)
LD_LIBRTLSDR=$(shell pkg-config --libs librtlsdr)
#Ugly hack. Check if the output of pkg-config is long enough to be valid
LD_LIBRTLSDR_LENGTH := $(shell echo "$(LD_LIBRTLSDR)" | wc -c)
ifeq ($(shell test $(LD_LIBRTLSDR_LENGTH) -gt 13; echo $$?),0)
#The pkg-config output seem to be ok, let's use it
LDFLAGS+=$(shell pkg-config --libs librtlsdr)
else
#The pkg-config output seem to be too short, use the default lib name and default paths
LDFLAGS+=-lrtlsdr
endif
2015-07-13 22:38:56 +00:00
else
2015-07-22 15:57:32 +00:00
#
#ADD THE CORRECT PATH FOR LIBUSB AND RTLSDR
#TODO:
# CMAKE will be much better or create a conditional pkg-config
# RTLSDR
RTLSDR_INCLUDE=/tmp/rtl-sdr/include
RTLSDR_LIB=/tmp/rtl-sdr/build/src
# LIBUSB
LIBUSB_INCLUDE=/tmp/libusb/include/libusb-1.0
LIBUSB_LIB=/tmp/libusb/lib
2015-07-13 22:38:56 +00:00
2015-07-22 15:57:32 +00:00
ifeq ($(UNAME),Darwin)
#Conditional for OSX
CFLAGS+= -I/usr/local/include/ -I/opt/homebrew/include -I$(LIBUSB_INCLUDE) -I$(RTLSDR_INCLUDE)
LDFLAGS+= -L/usr/local/lib -L/opt/homebrew/lib -L$(LIBUSB_LIB) -L$(RTLSDR_LIB) -lrtlsdr -lusb-1.0
2015-07-22 15:57:32 +00:00
else
2015-07-13 22:38:56 +00:00
#Conditional for Windows
2015-07-22 15:57:32 +00:00
CFLAGS+=-I $(LIBUSB_INCLUDE) -I $(RTLSDR_INCLUDE)
LDFLAGS+=-L$(LIBUSB_INCLUDE) -L$(RTLSDR_LIB) -L/usr/lib -lusb-1.0 -lrtlsdr -lWs2_32
endif
2015-07-13 22:38:56 +00:00
endif
CC?=gcc
SOURCES= \
main.c rtl_ais.c convenience.c \
./aisdecoder/aisdecoder.c \
./aisdecoder/sounddecoder.c \
./aisdecoder/lib/receiver.c \
./aisdecoder/lib/protodec.c \
./aisdecoder/lib/hmalloc.c \
2016-05-10 22:01:09 +00:00
./aisdecoder/lib/filter.c \
./tcp_listener/tcp_listener.c
OBJECTS=$(SOURCES:.c=.o)
EXECUTABLE=rtl_ais
all: $(SOURCES) $(EXECUTABLE)
$(EXECUTABLE): $(OBJECTS)
$(CC) $(OBJECTS) -o $@ $(LDFLAGS)
.c.o:
$(CC) -c $< -o $@ $(CFLAGS)
clean:
2016-05-14 23:24:30 +00:00
rm -f $(OBJECTS) $(EXECUTABLE) $(EXECUTABLE).exe
2020-02-19 18:55:24 +00:00
install:
install -d -m 755 $(DESTDIR)/$(PREFIX)/bin
install -m 755 $(EXECUTABLE) "$(DESTDIR)/$(PREFIX)/bin/"