mirror of
https://github.com/scylladb/scylladb.git
synced 2026-04-20 00:20:47 +00:00
dh_installinit --name <service> is for forcing install debian/*.service and debian/*.default that does not matches with package name. And if we have subpackages, packager has responsibility to rename debian/*.service to debian/<subpackage>.*service. However, we currently mistakenly running dh_installinit --name scylla-node-exporter for debian/scylla-node-exporeter.service, the packaging system tries to find destination package for the .service, and does not find subpackage name on it, so it will pick first subpackage ordered by name, scylla-conf. To solve the issue, we just need to run dh_installinit without --name when $product == 'scylla'. Fixes #8163 Closes #8164
56 lines
1.7 KiB
Makefile
Executable File
56 lines
1.7 KiB
Makefile
Executable File
#!/usr/bin/make -f
|
|
|
|
include /usr/share/dpkg/pkg-info.mk
|
|
|
|
export PYBUILD_DISABLE=1
|
|
jobs := $(shell echo $$DEB_BUILD_OPTIONS | sed -r "s/.*parallel=([0-9]+).*/-j\1/")
|
|
ifneq ($(findstring housekeeping, $(DEB_BUILD_OPTIONS)),)
|
|
install_arg := --housekeeping
|
|
else
|
|
install_arg :=
|
|
endif
|
|
|
|
product := $(subst -server,,$(DEB_SOURCE))
|
|
|
|
override_dh_auto_configure:
|
|
|
|
override_dh_auto_build:
|
|
|
|
override_dh_auto_clean:
|
|
|
|
override_dh_auto_install:
|
|
dh_auto_install
|
|
./scylla/install.sh --packaging --root "$(CURDIR)/debian/tmp" $(install_arg) --sysconfdir "/etc/default"
|
|
# don't use default sysconfig file, use Debian version
|
|
cp scylla/dist/debian/sysconfig/scylla-housekeeping $(CURDIR)/debian/tmp/etc/default/
|
|
|
|
override_dh_installinit:
|
|
ifeq ($(product),scylla)
|
|
dh_installinit --no-start
|
|
else
|
|
dh_installinit --no-start --name scylla-server
|
|
dh_installinit --no-start --name scylla-node-exporter
|
|
endif
|
|
dh_installinit --no-start --name scylla-housekeeping-daily
|
|
dh_installinit --no-start --name scylla-housekeeping-restart
|
|
dh_installinit --no-start --name scylla-fstrim
|
|
|
|
override_dh_strip:
|
|
# The binaries (ethtool...patchelf) don't pass dh_strip after going through patchelf. Since they are
|
|
# already stripped, nothing is lost if we exclude them, so that's what we do.
|
|
dh_strip -Xlibprotobuf.so.15 -Xld.so -Xethtool -Xgawk -Xgzip -Xhwloc-calc -Xhwloc-distrib -Xifconfig -Xlscpu -Xnetstat -Xpatchelf --dbg-package=$(product)-server-dbg
|
|
find $(CURDIR)/debian/$(product)-server-dbg/usr/lib/debug/.build-id/ -name "*.debug" -exec objcopy --decompress-debug-sections {} \;
|
|
|
|
override_dh_makeshlibs:
|
|
|
|
override_dh_shlibdeps:
|
|
|
|
override_dh_fixperms:
|
|
dh_fixperms
|
|
chmod 755 $(CURDIR)/debian/$(product)-server/opt/scylladb/libreloc/ld.so
|
|
|
|
override_dh_strip_nondeterminism:
|
|
|
|
%:
|
|
dh $@
|