parent
76ff85e5bb
commit
e5fee507ce
@ -0,0 +1,257 @@
|
||||
cmake_minimum_required(VERSION 3.18.4)
|
||||
|
||||
# dvmhost
|
||||
file(GLOB dvmhost_SRC
|
||||
# DMR module
|
||||
"dmr/*.h"
|
||||
"dmr/*.cpp"
|
||||
"dmr/acl/*.h"
|
||||
"dmr/acl/*.cpp"
|
||||
"dmr/data/*.h"
|
||||
"dmr/data/*.cpp"
|
||||
"dmr/edac/*.h"
|
||||
"dmr/edac/*.cpp"
|
||||
"dmr/lc/*.h"
|
||||
"dmr/lc/*.cpp"
|
||||
"dmr/packet*.h"
|
||||
"dmr/packet/*.cpp"
|
||||
|
||||
# P25 module
|
||||
"p25/*.h"
|
||||
"p25/*.cpp"
|
||||
"p25/acl/*.h"
|
||||
"p25/acl/*.cpp"
|
||||
"p25/data/*.h"
|
||||
"p25/data/*.cpp"
|
||||
"p25/dfsi/*.h"
|
||||
"p25/dfsi/*.cpp"
|
||||
"p25/dfsi/packet/*.h"
|
||||
"p25/dfsi/packet/*.cpp"
|
||||
"p25/edac/*.h"
|
||||
"p25/edac/*.cpp"
|
||||
"p25/lc/*.h"
|
||||
"p25/lc/*.cpp"
|
||||
"p25/lookups/*.h"
|
||||
"p25/lookups/*.cpp"
|
||||
"p25/packet/*.h"
|
||||
"p25/packet/*.cpp"
|
||||
|
||||
# NXDN module
|
||||
"nxdn/*.h"
|
||||
"nxdn/*.cpp"
|
||||
"nxdn/acl/*.h"
|
||||
"nxdn/acl/*.cpp"
|
||||
"nxdn/channel/*.h"
|
||||
"nxdn/channel/*.cpp"
|
||||
"nxdn/lc/*.h"
|
||||
"nxdn/lc/*.cpp"
|
||||
"nxdn/packet/*.h"
|
||||
"nxdn/packet/*.cpp"
|
||||
|
||||
# Core
|
||||
"edac/*.h"
|
||||
"edac/*.cpp"
|
||||
"host/*.h"
|
||||
"host/*.cpp"
|
||||
"host/calibrate/*.h"
|
||||
"host/calibrate/*.cpp"
|
||||
"host/setup/*.h"
|
||||
"host/setup/*.cpp"
|
||||
"lookups/*.h"
|
||||
"lookups/*.cpp"
|
||||
"modem/*.h"
|
||||
"modem/*.cpp"
|
||||
"modem/port/*.h"
|
||||
"modem/port/*.cpp"
|
||||
"network/*.h"
|
||||
"network/*.cpp"
|
||||
"network/json/*.h"
|
||||
"yaml/*.h"
|
||||
"yaml/*.cpp"
|
||||
"*.h"
|
||||
"*.cpp"
|
||||
)
|
||||
|
||||
# dvmcmd
|
||||
file(GLOB dvmcmd_SRC
|
||||
"network/UDPSocket.h"
|
||||
"network/UDPSocket.cpp"
|
||||
"remote/*.h"
|
||||
"remote/*.cpp"
|
||||
"edac/SHA256.h"
|
||||
"edac/SHA256.cpp"
|
||||
"Defines.h"
|
||||
"Thread.h"
|
||||
"Thread.cpp"
|
||||
"Log.h"
|
||||
"Log.cpp"
|
||||
"Utils.h"
|
||||
"Utils.cpp"
|
||||
)
|
||||
|
||||
# digital mode options
|
||||
option(ENABLE_DMR "Enable DMR Digtial Mode" on)
|
||||
option(ENABLE_P25 "Enable P25 Digital Mode" on)
|
||||
option(ENABLE_NXDN "Enable NXDN Digital Mode" off)
|
||||
option(ENABLE_DFSI_SUPPORT "Enable P25 DFSI Transport Support" off)
|
||||
|
||||
message(CHECK_START "DMR Digital Mode")
|
||||
if (ENABLE_DMR)
|
||||
add_definitions(-DENABLE_DMR)
|
||||
message(CHECK_PASS "enabled")
|
||||
else ()
|
||||
message(CHECK_PASS "disabled")
|
||||
endif (ENABLE_DMR)
|
||||
message(CHECK_START "P25 Digital Mode")
|
||||
if (ENABLE_P25)
|
||||
add_definitions(-DEANBLE_P25)
|
||||
message(CHECK_PASS "enabled")
|
||||
else ()
|
||||
message(CHECK_PASS "disabled")
|
||||
endif (ENABLE_P25)
|
||||
message(CHECK_START "NXDN Digital Mode")
|
||||
if (ENABLE_NXDN)
|
||||
add_definitions(-DENABLE_NXDN)
|
||||
message(CHECK_PASS "enabled")
|
||||
else ()
|
||||
message(CHECK_PASS "disabled")
|
||||
endif (ENABLE_NXDN)
|
||||
message(CHECK_START "P25 DFSI Support")
|
||||
if (ENABLE_DFSI_SUPPORT)
|
||||
add_definitions(-DENABLE_DFSI_SUPPORT)
|
||||
message(CHECK_PASS "enabled")
|
||||
else ()
|
||||
message(CHECK_PASS "disabled")
|
||||
endif (ENABLE_DFSI_SUPPORT)
|
||||
|
||||
# debug options
|
||||
option(DEBUG_DMR_PDU_DATA "" off)
|
||||
option(DEBUG_CRC "" off)
|
||||
option(DEBUG_MODEM_CAL "" off)
|
||||
option(DEBUG_MODEM "" off)
|
||||
option(DEBUG_NXDN_FACCH1 "" off)
|
||||
option(DEBUG_NXDN_SACCH "" off)
|
||||
option(DEBUG_NXDN_UDCH "" off)
|
||||
option(DEBUG_NXDN_LICH "" off)
|
||||
option(DEBUG_NXDN_CAC "" off)
|
||||
option(DEBUG_P25_PDU_DATA "" off)
|
||||
option(DEBUG_P25_HDU "" off)
|
||||
option(DEBUG_P25_LDU1 "" off)
|
||||
option(DEBUG_P25_LDU2 "" off)
|
||||
option(DEBUG_P25_TDULC "" off)
|
||||
option(DEBUG_P25_TSBK "" off)
|
||||
option(DEBUG_P25_DFSI "" off)
|
||||
option(DEBUG_RINGBUFFER "" off)
|
||||
|
||||
if (DEBUG_DMR_PDU_DATA)
|
||||
add_definitions(-DDEBUG_DMR_PDU_DATA)
|
||||
endif (DEBUG_DMR_PDU_DATA)
|
||||
if (DEBUG_CRC)
|
||||
add_definitions(-DDEBUG_CRC)
|
||||
endif (DEBUG_CRC)
|
||||
if (DEBUG_MODEM_CAL)
|
||||
add_definitions(-DDEBUG_MODEM_CAL)
|
||||
endif (DEBUG_MODEM_CAL)
|
||||
if (DEBUG_MODEM)
|
||||
add_definitions(-DDEBUG_MODEM)
|
||||
endif (DEBUG_MODEM)
|
||||
if (DEBUG_NXDN_FACCH1)
|
||||
add_definitions(-DDEBUG_NXDN_FACCH1)
|
||||
endif (DEBUG_NXDN_FACCH1)
|
||||
if (DEBUG_NXDN_SACCH)
|
||||
add_definitions(-DDEBUG_NXDN_SACCH)
|
||||
endif (DEBUG_NXDN_SACCH)
|
||||
if (DEBUG_NXDN_UDCH)
|
||||
add_definitions(-DDEBUG_NXDN_UDCH)
|
||||
endif (DEBUG_NXDN_UDCH)
|
||||
if (DEBUG_NXDN_LICH)
|
||||
add_definitions(-DDEBUG_NXDN_LICH)
|
||||
endif (DEBUG_NXDN_LICH)
|
||||
if (DEBUG_NXDN_CAC)
|
||||
add_definitions(-DDEBUG_NXDN_CAC)
|
||||
endif (DEBUG_NXDN_CAC)
|
||||
if (DEBUG_P25_PDU_DATA)
|
||||
add_definitions(-DDEBUG_P25_PDU_DATA)
|
||||
endif (DEBUG_P25_PDU_DATA)
|
||||
if (DEBUG_P25_HDU)
|
||||
add_definitions(-DDEBUG_P25_HDU)
|
||||
endif (DEBUG_P25_HDU)
|
||||
if (DEBUG_P25_LDU1)
|
||||
add_definitions(-DDEBUG_P25_LDU1)
|
||||
endif (DEBUG_P25_LDU1)
|
||||
if (DEBUG_P25_LDU2)
|
||||
add_definitions(-DDEBUG_P25_LDU2)
|
||||
endif (DEBUG_P25_LDU2)
|
||||
if (DEBUG_P25_TDULC)
|
||||
add_definitions(-DDEBUG_P25_TDULC)
|
||||
endif (DEBUG_P25_TDULC)
|
||||
if (DEBUG_P25_TSBK)
|
||||
add_definitions(-DDEBUG_P25_TSBK)
|
||||
endif (DEBUG_P25_TSBK)
|
||||
if (DEBUG_P25_DFSI)
|
||||
add_definitions(-DDEBUG_P25_DFSI)
|
||||
endif (DEBUG_P25_DFSI)
|
||||
if (DEBUG_RINGBUFFER)
|
||||
add_definitions(-DDEBUG_RINGBUFFER)
|
||||
endif (DEBUG_RINGBUFFER)
|
||||
|
||||
# cross-compile options
|
||||
option(CROSS_COMPILE_ARM "Cross-compile for 32-bit ARM" off)
|
||||
option(CROSS_COMPILE_AARCH64 "Cross-compile for 64-bit ARM" off)
|
||||
option(CROSS_COMPILE_RPI_ARM "Cross-compile for (old RPi) 32-bit ARM" off)
|
||||
|
||||
set(CMAKE_C_COMPILER gcc)
|
||||
set(CMAKE_CXX_COMPILER g++)
|
||||
|
||||
message(CHECK_START "Cross compiling for 32-bit ARM")
|
||||
if (CROSS_COMPILE_ARM)
|
||||
set(CMAKE_C_COMPILER arm-linux-gnueabihf-gcc)
|
||||
set(CMAKE_CXX_COMPILER arm-linux-gnueabihf-g++)
|
||||
message(CHECK_PASS "yes")
|
||||
else ()
|
||||
message(CHECK_PASS "no")
|
||||
endif (CROSS_COMPILE_ARM)
|
||||
message(CHECK_START "Cross compiling for 64-bit ARM")
|
||||
if (CROSS_COMPILE_AARCH64)
|
||||
set(CMAKE_C_COMPILER aarch64-linux-gnu-gcc)
|
||||
set(CMAKE_CXX_COMPILER aarch64-linux-gnu-g++)
|
||||
message(CHECK_PASS "yes")
|
||||
else ()
|
||||
message(CHECK_PASS "no")
|
||||
endif (CROSS_COMPILE_AARCH64)
|
||||
message(CHECK_START "Cross compiling for (old RPi) 32-bit ARM")
|
||||
if (CROSS_COMPILE_RPI_ARM)
|
||||
set(CMAKE_C_COMPILER /opt/tools/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc)
|
||||
set(CMAKE_CXX_COMPILER /opt/tools/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf-g++)
|
||||
message(CHECK_PASS "yes")
|
||||
else ()
|
||||
message(CHECK_PASS "no")
|
||||
endif (CROSS_COMPILE_RPI_ARM)
|
||||
|
||||
set(THREADS_PREFER_PTHREAD_FLAG ON)
|
||||
|
||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY .)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -O3 -Wall -std=c++0x")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -O3 -Wall -std=c++0x")
|
||||
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -g -O3 -Wall -std=c++0x -s")
|
||||
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -g -O3 -Wall -std=c++0x -s")
|
||||
|
||||
set(GIT_VER "")
|
||||
set(GIT_VER_HASH "")
|
||||
execute_process(COMMAND git describe --abbrev=8 --dirty --always --tags WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR} OUTPUT_VARIABLE GIT_VER OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
execute_process(COMMAND git describe --abbrev=8 --always --tags WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR} OUTPUT_VARIABLE GIT_VER_HASH OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
|
||||
add_definitions(-D__GIT_VER__="${GIT_VER}")
|
||||
add_definitions(-D__GIT_VER_HASH__="${GIT_VER_HASH}")
|
||||
|
||||
project(dvmhost)
|
||||
find_package(Threads REQUIRED)
|
||||
add_executable(dvmhost ${dvmhost_SRC})
|
||||
target_include_directories(dvmhost PRIVATE .)
|
||||
target_link_libraries(dvmhost PRIVATE Threads::Threads util)
|
||||
|
||||
project(dvmcmd)
|
||||
find_package(Threads REQUIRED)
|
||||
add_executable(dvmcmd ${dvmcmd_SRC})
|
||||
target_link_libraries(dvmcmd PRIVATE Threads::Threads)
|
||||
target_include_directories(dvmcmd PRIVATE .)
|
||||
@ -1,208 +0,0 @@
|
||||
CC = gcc
|
||||
CXX = g++
|
||||
STRIP = strip
|
||||
armCC = arm-linux-gnueabihf-gcc
|
||||
armCXX = arm-linux-gnueabihf-g++
|
||||
armSTRIP = arm-linux-gnueabihf-strip
|
||||
aarch64CC = aarch64-linux-gnu-gcc
|
||||
aarch64CXX = aarch64-linux-gnu-g++
|
||||
aarch64STRIP= aarch64-linux-gnu-strip
|
||||
rpi-armCC = /opt/tools/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc
|
||||
rpi-armCXX = /opt/tools/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf-g++
|
||||
rpi-armSTRIP= /opt/tools/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf-strip
|
||||
|
||||
CFLAGS = -g -O3 -Wall -std=c++0x -pthread -I.
|
||||
HSTFLAGS= -DENABLE_DMR -DENABLE_P25
|
||||
CMDFLAGS = -I..
|
||||
LIBS = -lpthread -lutil
|
||||
LDFLAGS = -g
|
||||
|
||||
TAR_ARCH =
|
||||
ifneq ($(ARCH),)
|
||||
TAR_ARCH = "_$(ARCH)"
|
||||
endif
|
||||
|
||||
GITFLAGS=
|
||||
GIT_VER =
|
||||
GIT_VER_HASH =
|
||||
ifneq ("$(wildcard .git)",)
|
||||
GIT_VER = \"$(shell git describe --abbrev=8 --dirty --always --tags)\"
|
||||
GIT_VER_HASH = \"$(shell git describe --abbrev=8 --always --tags)\"
|
||||
GITFLAGS= -D__GIT_VER__=$(GIT_VER) -D__GIT_VER_HASH__=$(GIT_VER_HASH)
|
||||
endif
|
||||
|
||||
HOST_BIN = dvmhost
|
||||
HOST_OBJECTS = \
|
||||
edac/AMBEFEC.o \
|
||||
edac/BCH.o \
|
||||
edac/BPTC19696.o \
|
||||
edac/CRC.o \
|
||||
edac/Golay2087.o \
|
||||
edac/Golay24128.o \
|
||||
edac/Hamming.o \
|
||||
edac/QR1676.o \
|
||||
edac/RS129.o \
|
||||
edac/RS634717.o \
|
||||
edac/SHA256.o \
|
||||
dmr/acl/AccessControl.o \
|
||||
dmr/data/Data.o \
|
||||
dmr/data/DataHeader.o \
|
||||
dmr/data/EMB.o \
|
||||
dmr/data/EmbeddedData.o \
|
||||
dmr/edac/Trellis.o \
|
||||
dmr/lc/CSBK.o \
|
||||
dmr/lc/FullLC.o \
|
||||
dmr/lc/LC.o \
|
||||
dmr/lc/PrivacyLC.o \
|
||||
dmr/lc/ShortLC.o \
|
||||
dmr/packet/ControlSignaling.o \
|
||||
dmr/packet/Data.o \
|
||||
dmr/packet/Voice.o \
|
||||
dmr/Control.o \
|
||||
dmr/Slot.o \
|
||||
dmr/SlotType.o \
|
||||
dmr/Sync.o \
|
||||
lookups/AffiliationLookup.o \
|
||||
lookups/IdenTableLookup.o \
|
||||
lookups/RadioIdLookup.o \
|
||||
lookups/RSSIInterpolator.o \
|
||||
lookups/TalkgroupIdLookup.o \
|
||||
nxdn/acl/AccessControl.o \
|
||||
nxdn/channel/CAC.o \
|
||||
nxdn/channel/FACCH1.o \
|
||||
nxdn/channel/LICH.o \
|
||||
nxdn/channel/SACCH.o \
|
||||
nxdn/channel/UDCH.o \
|
||||
nxdn/lc/PacketInformation.o \
|
||||
nxdn/lc/RCCH.o \
|
||||
nxdn/lc/RTCH.o \
|
||||
nxdn/packet/Data.o \
|
||||
nxdn/packet/Trunk.o \
|
||||
nxdn/packet/Voice.o \
|
||||
nxdn/Audio.o \
|
||||
nxdn/Control.o \
|
||||
nxdn/Convolution.o \
|
||||
nxdn/Sync.o \
|
||||
nxdn/NXDNUtils.o \
|
||||
p25/acl/AccessControl.o \
|
||||
p25/data/DataBlock.o \
|
||||
p25/data/DataHeader.o \
|
||||
p25/data/LowSpeedData.o \
|
||||
p25/dfsi/LC.o \
|
||||
p25/dfsi/packet/DFSITrunk.o \
|
||||
p25/dfsi/packet/DFSIVoice.o \
|
||||
p25/edac/Trellis.o \
|
||||
p25/lc/LC.o \
|
||||
p25/lc/TDULC.o \
|
||||
p25/lc/TSBK.o \
|
||||
p25/lookups/P25AffiliationLookup.o \
|
||||
p25/packet/Data.o \
|
||||
p25/packet/Trunk.o \
|
||||
p25/packet/Voice.o \
|
||||
p25/Audio.o \
|
||||
p25/Control.o \
|
||||
p25/NID.o \
|
||||
p25/Sync.o \
|
||||
p25/P25Utils.o \
|
||||
modem/port/IModemPort.o \
|
||||
modem/port/ISerialPort.o \
|
||||
modem/port/ModemNullPort.o \
|
||||
modem/port/UARTPort.o \
|
||||
modem/port/PseudoPTYPort.o \
|
||||
modem/port/UDPPort.o \
|
||||
modem/Modem.o \
|
||||
network/UDPSocket.o \
|
||||
network/RemoteControl.o \
|
||||
network/BaseNetwork.o \
|
||||
network/Network.o \
|
||||
yaml/Yaml.o \
|
||||
host/Console.o \
|
||||
host/calibrate/HostCal.o \
|
||||
host/setup/HostSetup.o \
|
||||
host/Host.o \
|
||||
Log.o \
|
||||
Mutex.o \
|
||||
Thread.o \
|
||||
Timer.o \
|
||||
StopWatch.o \
|
||||
Utils.o \
|
||||
HostMain.o
|
||||
CMD_BIN = dvmcmd
|
||||
CMD_OBJECTS = \
|
||||
remote/RemoteCommand.cmd.o \
|
||||
edac/SHA256.cmd.o \
|
||||
network/UDPSocket.cmd.o \
|
||||
Thread.cmd.o \
|
||||
Log.cmd.o \
|
||||
Utils.cmd.o
|
||||
|
||||
.PHONY: dvmhost dvmcmd all strip clean install dpkg tarball
|
||||
|
||||
all: dvmhost dvmcmd
|
||||
dvmhost: $(HOST_OBJECTS)
|
||||
$($(ARCH)CXX) $(HOST_OBJECTS) $(CFLAGS) $(HSTFLAGS) $(GITFLAGS) $(LIBS) -o $(HOST_BIN)
|
||||
dvmcmd: $(CMD_OBJECTS)
|
||||
$($(ARCH)CXX) $(CMD_OBJECTS) $(GITFLAGS) $(CFLAGS) $(CMDFLAGS) $(LIBS) -o $(CMD_BIN)
|
||||
%.o: %.cpp
|
||||
$($(ARCH)CXX) $(CFLAGS) $(HSTFLAGS) $(GITFLAGS) -c -o $@ $<
|
||||
%.cmd.o: %.cpp
|
||||
$($(ARCH)CXX) $(CFLAGS) $(HSTFLAGS) $(CMDFLAGS) $(GITFLAGS) -c -o $@ $<
|
||||
strip:
|
||||
-$($(ARCH)STRIP) $(HOST_BIN)
|
||||
-$($(ARCH)STRIP) $(CMD_BIN)
|
||||
clean:
|
||||
$(RM) $(HOST_BIN) $(HOST_OBJECTS) $(CMD_BIN) $(CMD_OBJECTS) *.o *.d *.bak *~
|
||||
$(RM) -r dpkg_build tar_build
|
||||
$(RM) dvmhost_1.0.0* dvmhost-dbgsym*.deb
|
||||
|
||||
install: all
|
||||
mkdir -p /opt/dvm/bin || true
|
||||
install -m 755 $(HOST_BIN) /opt/dvm/bin/
|
||||
install -m 755 $(CMD_BIN) /opt/dvm/bin/
|
||||
mkdir -p /opt/dvm || true
|
||||
install -m 644 config.example.yml /opt/dvm/config.yml
|
||||
install -m 644 iden_table.dat /opt/dvm/iden_table.dat
|
||||
install -m 644 RSSI.dat /opt/dvm/RSSI.dat
|
||||
install -m 644 rid_acl.example.dat /opt/dvm/rid_acl.dat
|
||||
install -m 644 tg_acl.example.dat /opt/dvm/tg_acl.dat
|
||||
install -m 755 start-dvm.sh /opt/dvm
|
||||
install -m 755 stop-dvm.sh /opt/dvm
|
||||
install -m 755 dvm-watchdog.sh /opt/dvm
|
||||
install -m 755 stop-watchdog.sh /opt/dvm
|
||||
sed -i 's/filePath: ./filePath: \/opt\/dvm\/log\//' /opt/dvm/config.yml
|
||||
sed -i 's/activityFilePath: ./activityFilePath: \/opt\/dvm\/log\//' /opt/dvm/config.yml
|
||||
sed -i 's/file: iden_table.dat/file: \/opt\/dvm\/iden_table.dat/' /opt/dvm/config.yml
|
||||
sed -i 's/file: rid_acl.dat/file: \/opt\/dvm\/rid_acl.dat/' /opt/dvm/config.yml
|
||||
sed -i 's/file: tg_acl.dat/file: \/opt\/dvm\/tg_acl.dat/' /opt/dvm/config.yml
|
||||
mkdir -p /opt/dvm/log || true
|
||||
|
||||
dpkg: clean
|
||||
which debuild || (echo "debuild is missing? Is 'devscripts' package installed?"; exit 1)
|
||||
tar -caf ../dvmhost_1.0.0.orig.tar.gz --exclude=.git --exclude=.gitattributes --exclude=.gitignore --exclude=.vscode -v .
|
||||
mv ../dvmhost_1.0.0.orig.tar.gz .
|
||||
mkdir -p dpkg_build
|
||||
cd dpkg_build; tar xvf ../dvmhost_1.0.0.orig.tar.gz .; debuild -us -uc
|
||||
tarball: clean dvmhost dvmcmd strip
|
||||
mkdir -p tar_build/dvm
|
||||
mkdir -p tar_build/dvm/bin
|
||||
cp -v $(HOST_BIN) tar_build/dvm/bin
|
||||
cp -v $(CMD_BIN) tar_build/dvm/bin
|
||||
cp *.sh tar_build/dvm
|
||||
chmod +x tar_build/dvm/*.sh
|
||||
cp -v config*.yml tar_build/dvm
|
||||
cp -v *.dat tar_build/dvm
|
||||
cd tar_build; tar czvf ../dvmhost_1.0.0$(TAR_ARCH).tar.gz *
|
||||
|
||||
install-service: install
|
||||
@useradd --user-group -M --system dvmhost --shell /bin/false || true
|
||||
@usermod --groups dialout --append dvmhost || true
|
||||
@chown dvmhost:dvmhost /opt/dvm/config.yml
|
||||
@chown dvmhost:dvmhost /opt/dvm/iden_table.dat
|
||||
@chown dvmhost:dvmhost /opt/dvm/RSSI.dat
|
||||
@chown dvmhost:dvmhost /opt/dvm/rid_acl.dat
|
||||
@chown dvmhost:dvmhost /opt/dvm/tg_acl.dat
|
||||
@chown dvmhost:dvmhost /opt/dvm/log
|
||||
@cp ./linux/dvmhost.service /lib/systemd/system/
|
||||
|
||||
uninstall-service:
|
||||
@rm -f /lib/systemd/system/dvmhost.service || true
|
||||
Loading…
Reference in new issue