Skip to content

Commit

Permalink
Updated Makefile for use DESTDIR, PREFIX and SYSCONFDIR
Browse files Browse the repository at this point in the history
And adapted debian packaging.
  • Loading branch information
davidmoreno committed Oct 3, 2024
1 parent 6e245e3 commit 78749d5
Show file tree
Hide file tree
Showing 2 changed files with 45 additions and 35 deletions.
74 changes: 42 additions & 32 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,19 @@ JOBS:=$(shell nproc)
# stalls the parallelist waiting to compile the Pre Compiled Headers.
CMAKE_EXTRA_ARGS := -DCMAKE_CXX_COMPILER=${CXX} -DENABLE_PCH=OFF

# the final directory after proper install of normal files
ifeq ($(PREFIX),)
PREFIX := /usr/local
endif
# the final directory after proper install of configuration files
ifeq ($(SYSCONFDIR),)
SYSCONFDIR := /usr/local/etc
endif
# the intermediate directory needed by the package manager
ifeq ($(DESTDIR),)
DESTDIR := ""
endif


.PHONY: help
help:
Expand Down Expand Up @@ -121,45 +134,42 @@ deb:

dpkg-buildpackage --no-sign

ifneq ($(DESTDIR),)
PREFIX := $(DESTDIR)
endif
ifeq ($(PREFIX),)
PREFIX := /usr/local
endif
.PHONY: install

install: install-rtpmidid install-librtpmidid0 install-librtpmidid0-dev

USR=$(DESTDIR)$(PREFIX)
ETC=$(DESTDIR)$(SYSCONFDIR)

install-rtpmidid: build man
mkdir -p $(PREFIX)/bin/
cp build/src/rtpmidid $(PREFIX)/bin/
mkdir -p $(USR)/bin/
cp build/src/rtpmidid $(USR)/bin/
cd cli && make compile
cp build/rtpmidid-cli $(PREFIX)/bin/rtpmidid-cli
mkdir -p $(PREFIX)/etc/systemd/system/
cp debian/rtpmidid.service $(PREFIX)/etc/systemd/system/
mkdir -p $(PREFIX)/etc/rtpmidid/
cp default.ini $(PREFIX)/etc/rtpmidid/
mkdir -p $(PREFIX)/share/doc/rtpmidid/
cp README.md $(PREFIX)/share/doc/rtpmidid/
cp LICENSE-daemon.txt $(PREFIX)/share/doc/rtpmidid/LICENSE.txt
mkdir -p $(PREFIX)/share/man/man1/
cp build/man/rtpmidid.1 $(PREFIX)/share/man/man1/
cp build/man/rtpmidid-cli.1 $(PREFIX)/share/man/man1/
cp build/rtpmidid-cli $(USR)/bin/rtpmidid-cli
mkdir -p $(ETC)/systemd/system/
cp debian/rtpmidid.service $(ETC)/systemd/system/
mkdir -p $(ETC)/rtpmidid/
cp default.ini $(ETC)/rtpmidid/
mkdir -p $(USR)/share/doc/rtpmidid/
cp README.md $(USR)/share/doc/rtpmidid/
cp LICENSE-daemon.txt $(USR)/share/doc/rtpmidid/LICENSE.txt
mkdir -p $(USR)/share/man/man1/
cp build/man/rtpmidid.1 $(USR)/share/man/man1/
cp build/man/rtpmidid-cli.1 $(USR)/share/man/man1/

install-librtpmidid0: build
mkdir -p $(PREFIX)/lib/
cp -a build/lib/lib*so* $(PREFIX)/lib/
mkdir -p $(PREFIX)/share/doc/librtpmidid0/
cp README.md $(PREFIX)/share/doc/librtpmidid0/
cp README.librtpmidid.md $(PREFIX)/share/doc/librtpmidid0/
cp LICENSE-lib.txt $(PREFIX)/share/doc/librtpmidid0/LICENSE.txt
mkdir -p $(USR)/lib/
cp -a build/lib/lib*so* $(USR)/lib/
mkdir -p $(USR)/share/doc/librtpmidid0/
cp README.md $(USR)/share/doc/librtpmidid0/
cp README.librtpmidid.md $(USR)/share/doc/librtpmidid0/
cp LICENSE-lib.txt $(USR)/share/doc/librtpmidid0/LICENSE.txt

install-librtpmidid0-dev: build
mkdir -p $(PREFIX)/lib/ $(PREFIX)/include/
cp -a build/lib/lib*.a $(PREFIX)/lib/
cp -a include/rtpmidid $(PREFIX)/include/
mkdir -p $(PREFIX)/share/doc/librtpmidid0-dev/
cp README.md $(PREFIX)/share/doc/librtpmidid0-dev/
cp README.librtpmidid.md $(PREFIX)/share/doc/librtpmidid0-dev/
cp LICENSE-lib.txt $(PREFIX)/share/doc/librtpmidid0-dev/LICENSE.txt
mkdir -p $(USR)/lib/ $(USR)/include/
cp -a build/lib/lib*.a $(USR)/lib/
cp -a include/rtpmidid $(USR)/include/
mkdir -p $(USR)/share/doc/librtpmidid0-dev/
cp README.md $(USR)/share/doc/librtpmidid0-dev/
cp README.librtpmidid.md $(USR)/share/doc/librtpmidid0-dev/
cp LICENSE-lib.txt $(USR)/share/doc/librtpmidid0-dev/LICENSE.txt
6 changes: 3 additions & 3 deletions debian/rules
Original file line number Diff line number Diff line change
Expand Up @@ -22,13 +22,13 @@ override_dh_auto_build:
override_dh_auto_install:

override_dh_install:
make install-rtpmidid PREFIX=debian/rtpmidid/usr
make install-rtpmidid DESTDIR=debian/rtpmidid/ SYSCONFDIR=etc PREFIX=usr

# We shouldn't ship service file in /etc/systemd/system
rm -rf debian/rtpmidid/etc/systemd

make install-librtpmidid0 PREFIX=debian/librtpmidid0/usr
make install-librtpmidid0-dev PREFIX=debian/librtpmidid0-dev/usr
make install-librtpmidid0 DESTDIR=debian/librtpmidid0/ SYSCONFDIR=etc PREFIX=usr
make install-librtpmidid0-dev DESTDIR=debian/librtpmidid0-dev/ SYSCONFDIR=etc PREFIX=usr

# Move the unversioned symlink into the -dev package.
mv debian/librtpmidid0/usr/lib/*so debian/librtpmidid0-dev/usr/lib
Expand Down

0 comments on commit 78749d5

Please sign in to comment.