mirror of
https://github.com/element-hq/synapse
synced 2024-08-19 09:10:52 +00:00
This is basically a contrived way of adding a `Recommends` on `libpq5`, to fix #5653. The way this is supposed to happen in debhelper is to run `dh_shlibdeps`, which in turn runs `dpkg-shlibdeps`, which spits things out into `debian/<package>.substvars` whence they can later be included by `control`. Previously, we had disabled `dh_shlibdeps`, mostly because `dpkg-shlibdeps` gets confused about PIL's interdependent objects, but that's not really the right thing to do and there is another way to work around that. Since we don't always use postgres, we don't necessarily want a hard Depends on libpq5, so I've actually ended up adding an explicit invocation of `dpkg-shlibdeps` for `psycopg2`. I've also updated the build-depends list for the package, which was missing a couple of entries.
36 lines
1.1 KiB
Makefile
Executable file
36 lines
1.1 KiB
Makefile
Executable file
#!/usr/bin/make -f
|
|
#
|
|
# Build Debian package using https://github.com/spotify/dh-virtualenv
|
|
#
|
|
|
|
# assume we only have one package
|
|
PACKAGE_NAME:=`dh_listpackages`
|
|
|
|
override_dh_systemd_enable:
|
|
dh_systemd_enable --name=matrix-synapse
|
|
|
|
override_dh_installinit:
|
|
dh_installinit --name=matrix-synapse
|
|
|
|
# we don't really want to strip the symbols from our object files.
|
|
override_dh_strip:
|
|
|
|
override_dh_shlibdeps:
|
|
# make the postgres package's dependencies a recommendation
|
|
# rather than a hard dependency.
|
|
find debian/$(PACKAGE_NAME)/ -path '*/site-packages/psycopg2/*.so' | \
|
|
xargs dpkg-shlibdeps -Tdebian/$(PACKAGE_NAME).substvars \
|
|
-pshlibs1 -dRecommends
|
|
|
|
# all the other dependencies can be normal 'Depends' requirements,
|
|
# except for PIL's, which is self-contained and which confuses
|
|
# dpkg-shlibdeps.
|
|
dh_shlibdeps -X site-packages/PIL/.libs -X site-packages/psycopg2
|
|
|
|
override_dh_virtualenv:
|
|
./debian/build_virtualenv
|
|
|
|
# We are restricted to compat level 9 (because xenial), so have to
|
|
# enable the systemd bits manually.
|
|
%:
|
|
dh $@ --with python-virtualenv --with systemd
|