File: rules

package info (click to toggle)
opensnitch 1.6.9-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 5,980 kB
  • sloc: python: 12,604; ansic: 1,965; sh: 435; makefile: 239; xml: 50; sql: 3
file content (68 lines) | stat: -rwxr-xr-x 2,086 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#!/usr/bin/make -f
export DH_VERBOSE = 1
export DESTDIR := $(shell pwd)/debian/opensnitch
export UIDESTDIR := $(shell pwd)/debian/python3-opensnitch-ui
export EBPFDESTDIR := $(shell pwd)/debian/opensnitch-ebpf-modules

ifeq ($(DEB_BUILD_ARCH),amd64)
  WITH_EBPF := true
else ifeq ($(DEB_BUILD_ARCH),arm64)
  WITH_EBPF := true
else ifeq ($(DEB_BUILD_ARCH),riscv64)
  WITH_EBPF := true
else ifeq ($(DEB_BUILD_ARCH),s390x)
  WITH_EBPF := true
else ifeq ($(DEB_BUILD_ARCH),loong64)
  WITH_EBPF := true
else ifeq ($(DEB_BUILD_ARCH),ppc64)
  WITH_EBPF := true
else
  WITH_EBPF := false
endif

override_dh_installsystemd:
	dh_installsystemd --restart-after-upgrade

override_dh_auto_build:
	$(MAKE) protocol
# Workaround for Go build problem when building in _build
	mkdir -p _build/src/github.com/evilsocket/opensnitch/daemon/ui/protocol/
	cp daemon/ui/protocol/* _build/src/github.com/evilsocket/opensnitch/daemon/ui/protocol/
	dh_auto_build
	cd ui && python3 setup.py build --force
	if $(WITH_EBPF) ; then make -C ebpf_prog; fi

override_dh_auto_install:
# daemon
	mkdir -p $(DESTDIR)/usr/bin
	cp _build/bin/daemon $(DESTDIR)/usr/bin/opensnitchd
# GUI
	make -C ui/i18n
	cp -r ui/i18n/locales/ ui/opensnitch/i18n/
	pyrcc5 -o ui/opensnitch/resources_rc.py ui/opensnitch/res/resources.qrc
	sed -i 's/^import ui_pb2/from . import ui_pb2/' ui/opensnitch/ui_pb2*
	cd ui && python3 setup.py install --force --root=$(UIDESTDIR) --no-compile -O0 --install-layout=deb

# ebpf modules
	if $(WITH_EBPF); then \
	  mkdir -p $(EBPFDESTDIR)/usr/lib/opensnitchd/ebpf ; \
	  make -C ebpf_prog && cp ebpf_prog/opensnitch*o $(EBPFDESTDIR)/usr/lib/opensnitchd/ebpf/ ; \
	fi

# daemon
	dh_auto_install

%:
	dh $@ --builddirectory=_build --buildsystem=golang --with=golang,python3

override_dh_auto_clean:
	dh_auto_clean
	$(MAKE) clean
	$(RM) daemon/ui/protocol/ui_grpc.pb.go
	$(RM) ui/opensnitch/resources_rc.py
	$(RM) -r ui/opensnitch/i18n/
	$(RM) ui/i18n/locales/*/*.qm
	cd ui && python3 setup.py clean -a
	$(RM) -r ui/opensnitch_ui.egg-info/
	find ui -name \*.pyc -exec rm {} \;
	$(MAKE) -C ebpf_prog/ clean