From 58269553ae543cd8557cdeef78a2afda50cb1f79 Mon Sep 17 00:00:00 2001 From: Mike Gabriel Date: Fri, 11 Jun 2021 15:43:32 +0200 Subject: debian/*: Fix DEB builds (GTK-3+ only for now) after CMake switch-over. --- debian/control | 118 +++++++++++++-------- .../libayatana-appindicator3-0.1-cil-dev.install | 1 + debian/libayatana-appindicator3-0.1-cil.install | 1 + .../libayatana-appindicator3-0.1-cil.installcligac | 3 + debian/libayatana-appindicator3-1.symbols | 10 ++ debian/rules | 35 +++--- 6 files changed, 107 insertions(+), 61 deletions(-) create mode 100644 debian/libayatana-appindicator3-0.1-cil-dev.install create mode 100644 debian/libayatana-appindicator3-0.1-cil.install create mode 100644 debian/libayatana-appindicator3-0.1-cil.installcligac diff --git a/debian/control b/debian/control index 7473a03..f2281bc 100644 --- a/debian/control +++ b/debian/control @@ -4,7 +4,8 @@ Priority: optional XS-Python-Version: all Maintainer: Mike Gabriel Build-Depends: debhelper (>= 9), - dh-autoreconf, + cmake, + cmake-extras, dpkg-dev (>= 1.16.1.1), at-spi2-core, cli-common-dev (>= 0.8~) [amd64 arm64 armel armhf i386 mipsel ppc64el s390x kfreebsd-amd64 kfreebsd-i386 powerpc ppc64], @@ -22,6 +23,8 @@ Build-Depends: debhelper (>= 9), libgtk-3-dev (>= 2.91.3), libgtk2.0-dev (>= 2.12.0), procps, + gtk-sharp3-gapi [amd64 arm64 armel armhf i386 mipsel ppc64el s390x kfreebsd-amd64 kfreebsd-i386 powerpc ppc64], + libgtk3.0-cil-dev [amd64 arm64 armel armhf i386 mipsel ppc64el s390x kfreebsd-amd64 kfreebsd-i386 powerpc ppc64], gtk-sharp2-gapi [amd64 arm64 armel armhf i386 mipsel ppc64el s390x kfreebsd-amd64 kfreebsd-i386 powerpc ppc64], libgtk2.0-cil-dev [amd64 arm64 armel armhf i386 mipsel ppc64el s390x kfreebsd-amd64 kfreebsd-i386 powerpc ppc64], libdbus-glib-1-dev (>= 0.82), @@ -36,45 +39,45 @@ Homepage: https://github.com/AyatanaIndicators/libayatana-appindicator Vcs-Git: https://github.com/AyatanaIndicators/libayatana-appindicator Vcs-Browser: https://github.com/AyatanaIndicators/libayatana-appindicator -Package: libayatana-appindicator1 -Architecture: any -Depends: ${shlibs:Depends}, - ${misc:Depends}, -Description: Ayatana Application Indicators (GTK-2+ version) - A library and indicator to take menus from applications and place them in - the panel. - . - This package contains shared libraries to be used by applications compiled - against GTK-2+. +#Package: libayatana-appindicator1 +#Architecture: any +#Depends: ${shlibs:Depends}, +# ${misc:Depends}, +#Description: Ayatana Application Indicators (GTK-2+ version) +# A library and indicator to take menus from applications and place them in +# the panel. +# . +# This package contains shared libraries to be used by applications compiled +# against GTK-2+. -Package: gir1.2-ayatanaappindicator-0.1 -Section: introspection -Architecture: any -Depends: ${misc:Depends}, - ${gir:Depends}, -Description: Typelib files for libayatana-appindicator1 (GTK-2+ version) - A library and indicator to take menus from applications and place them in - the panel. - . - This package can be used by other packages using the GIRepository format - to generate dynamic bindings (GTK-2+ version). +#Package: gir1.2-ayatanaappindicator-0.1 +#Section: introspection +#Architecture: any +#Depends: ${misc:Depends}, +# ${gir:Depends}, +#Description: Typelib files for libayatana-appindicator1 (GTK-2+ version) +# A library and indicator to take menus from applications and place them in +# the panel. +# . +# This package can be used by other packages using the GIRepository format +# to generate dynamic bindings (GTK-2+ version). -Package: libayatana-appindicator-dev -Section: libdevel -Architecture: any -Depends: ${shlibs:Depends}, - ${misc:Depends}, - libgtk2.0-dev, - gir1.2-ayatanaappindicator-0.1 (= ${binary:Version}), - libdbusmenu-glib-dev (>= 0.1.8), - libdbus-glib-1-dev (>= 0.76), - libayatana-appindicator1 (= ${binary:Version}), -Description: Ayatana Application Indicators (development files, GTK-2+ version) - A library and indicator to take menus from applications and place them in - the panel. - . - This package contains files that are needed to build applications - (GTK-2+ version). +#Package: libayatana-appindicator-dev +#Section: libdevel +#Architecture: any +#Depends: ${shlibs:Depends}, +# ${misc:Depends}, +# libgtk2.0-dev, +# gir1.2-ayatanaappindicator-0.1 (= ${binary:Version}), +# libdbusmenu-glib-dev (>= 0.1.8), +# libdbus-glib-1-dev (>= 0.76), +# libayatana-appindicator1 (= ${binary:Version}), +#Description: Ayatana Application Indicators (development files, GTK-2+ version) +# A library and indicator to take menus from applications and place them in +# the panel. +# . +# This package contains files that are needed to build applications +# (GTK-2+ version). Package: libayatana-appindicator-doc Section: doc @@ -126,27 +129,52 @@ Description: Typelib files for libayatana-appindicator3-1 (GTK-3+ version) This package can be used by other packages using the GIRepository format to generate dynamic bindings (GTK-3+ version). -Package: libayatana-appindicator0.1-cil +#Package: libayatana-appindicator0.1-cil +#Section: cli-mono +#Architecture: amd64 arm64 armel armhf i386 mipsel ppc64el s390x kfreebsd-amd64 kfreebsd-i386 powerpc ppc64 +#Depends: ${shlibs:Depends}, +# ${misc:Depends}, +# ${cli:Depends}, +#Description: CLI bindings for libayatana-appindicator +# This package provides the appindicator-sharp assembly that allows CLI (.NET) +# programs to take menus from applications and place them in the panel. +# . +# This package contains assemblies to be used by GTK-2+ Mono applications. + +#Package: libayatana-appindicator0.1-cil-dev +#Section: cli-mono +#Architecture: amd64 arm64 armel armhf i386 mipsel ppc64el s390x kfreebsd-amd64 kfreebsd-i386 powerpc ppc64 +#Depends: ${shlibs:Depends}, +# ${misc:Depends}, +# ${cli:Depends}, +# libayatana-appindicator0.1-cil (= ${binary:Version}), +#Description: Ayatana Application Indicators for Mono (GTK-2+ variant) +# A library and indicator to take menus from applications and place them in +# the panel. +# . +# This package contains files that are needed to build Mono applications. + +Package: libayatana-appindicator3-0.1-cil Section: cli-mono Architecture: amd64 arm64 armel armhf i386 mipsel ppc64el s390x kfreebsd-amd64 kfreebsd-i386 powerpc ppc64 Depends: ${shlibs:Depends}, ${misc:Depends}, ${cli:Depends}, -Description: CLI bindings for libayatana-appindicator +Description: CLI bindings for libayatana-appindicator3 This package provides the appindicator-sharp assembly that allows CLI (.NET) programs to take menus from applications and place them in the panel. . - This package contains assemblies to be used by Mono applications. + This package contains assemblies to be used by GTK-2+ Mono applications. -Package: libayatana-appindicator0.1-cil-dev +Package: libayatana-appindicator3-0.1-cil-dev Section: cli-mono Architecture: amd64 arm64 armel armhf i386 mipsel ppc64el s390x kfreebsd-amd64 kfreebsd-i386 powerpc ppc64 Depends: ${shlibs:Depends}, ${misc:Depends}, ${cli:Depends}, - libayatana-appindicator0.1-cil (= ${binary:Version}), -Description: Ayatana Application Indicators for Mono + libayatana-appindicator3-0.1-cil (= ${binary:Version}), +Description: Ayatana Application Indicators for Mono (GTK-3+ variant) A library and indicator to take menus from applications and place them in the panel. . - This package contains files that are needed to build Mono applications. + This package contains files that are needed to build GTK-3+ Mono applications. diff --git a/debian/libayatana-appindicator3-0.1-cil-dev.install b/debian/libayatana-appindicator3-0.1-cil-dev.install new file mode 100644 index 0000000..57152eb --- /dev/null +++ b/debian/libayatana-appindicator3-0.1-cil-dev.install @@ -0,0 +1 @@ +usr/lib/*/pkgconfig/ayatana-appindicator3-sharp-0.1.pc diff --git a/debian/libayatana-appindicator3-0.1-cil.install b/debian/libayatana-appindicator3-0.1-cil.install new file mode 100644 index 0000000..d481a30 --- /dev/null +++ b/debian/libayatana-appindicator3-0.1-cil.install @@ -0,0 +1 @@ +usr/lib/*/cli/ayatana-appindicator3-sharp-0.1/* /usr/lib/cli/ayatana-appindicator3-sharp-0.1/ diff --git a/debian/libayatana-appindicator3-0.1-cil.installcligac b/debian/libayatana-appindicator3-0.1-cil.installcligac new file mode 100644 index 0000000..c6c3188 --- /dev/null +++ b/debian/libayatana-appindicator3-0.1-cil.installcligac @@ -0,0 +1,3 @@ +/usr/lib/cli/ayatana-appindicator3-sharp-0.1/ayatana-appindicator3-sharp.dll +/usr/lib/cli/ayatana-appindicator3-sharp-0.1/policy.0.0.ayatana-appindicator3-sharp.dll +/usr/lib/cli/ayatana-appindicator3-sharp-0.1/policy.0.1.ayatana-appindicator3-sharp.dll diff --git a/debian/libayatana-appindicator3-1.symbols b/debian/libayatana-appindicator3-1.symbols index cb8f189..eedb189 100644 --- a/debian/libayatana-appindicator3-1.symbols +++ b/debian/libayatana-appindicator3-1.symbols @@ -1,4 +1,14 @@ libayatana-appindicator3.so.1 libayatana-appindicator3-1 #MINVER# + _application_service_marshal_VOID__BOOLEAN_STRING_OBJECT@Base 0.5.90 + _application_service_marshal_VOID__INT_INT@Base 0.5.90 + _application_service_marshal_VOID__INT_STRING@Base 0.5.90 + _application_service_marshal_VOID__INT_STRING_STRING@Base 0.5.90 + _application_service_marshal_VOID__INT_UINT@Base 0.5.90 + _application_service_marshal_VOID__STRING_INT_STRING_STRING_STRING_STRING_STRING@Base 0.5.90 + _application_service_marshal_VOID__STRING_STRING@Base 0.5.90 + _generate_id@Base 0.5.90 + _notification_item@Base 0.5.90 + _notification_watcher@Base 0.5.90 app_indicator_build_menu_from_desktop@Base 0.2.92 app_indicator_category_get_type@Base 0.2.92 app_indicator_get_attention_icon@Base 0.2.92 diff --git a/debian/rules b/debian/rules index 7783b5d..6b42b7d 100755 --- a/debian/rules +++ b/debian/rules @@ -2,7 +2,8 @@ include /usr/share/dpkg/architecture.mk -FLAVORS = gtk2 gtk3 +#FLAVORS = gtk2 gtk3 +FLAVORS = gtk3 export DEB_BUILD_MAINT_OPTIONS = hardening=+all DPKG_EXPORT_BUILDFLAGS = 1 @@ -10,24 +11,23 @@ include /usr/share/dpkg/buildflags.mk API_VERSION = 0.1 -CONFIGURE_COMMON_FLAGS = --disable-scrollkeeper --enable-introspection +CONFIGURE_COMMON_FLAGS = -DENABLE_TESTS=ON ifeq (,$(filter $(DEB_HOST_ARCH),amd64 arm64 armel armhf i386 mipsel ppc64el s390x kfreebsd-amd64 kfreebsd-i386 powerpc ppc64)) - CONFIGURE_COMMON_FLAGS += --disable-mono-test +# CONFIGURE_COMMON_FLAGS += -DENABLE_MONO_TESTS=OFF + CONFIGURE_COMMON_FLAGS += else dh_extra_args = ,cli endif -CONFIGURE_FLAGS_gtk2 = --with-gtk=2 --enable-gtk-doc -CONFIGURE_FLAGS_gtk3 = --with-gtk=3 --enable-gtk-doc=no +#CONFIGURE_FLAGS_gtk2 = -DENABLE_GTK2=ON -DENABLE_GTK_DOC=ON +#CONFIGURE_FLAGS_gtk3 = -DENABLE_GTK3=ON -DENABLE_GTK_DOC=ON +CONFIGURE_FLAGS_gtk3 = export DPKG_GENSYMBOLS_CHECK_LEVEL = 4 CFLAGS += -fPIC %: - dh $@ --with autoreconf,gir$(dh_extra_args) - -override_dh_autoreconf: - NOCONFIGURE=1 dh_autoreconf ./autogen.sh + dh $@ --with gir$(dh_extra_args) override_dh_auto_configure: $(FLAVORS:%=doconfigure-%) @@ -49,18 +49,21 @@ override_dh_install: find debian/tmp -name \*.a -exec rm {} \; rm -rf debian/tmp/*/usr/lib/mono rm -rf debian/tmp/*/usr/share/vala/vapi/ayatana-appindicator*-0.1.deps - dh_install -plibayatana-appindicator1 --fail-missing --sourcedir=debian/tmp/gtk2 - dh_install -pgir1.2-ayatanaappindicator-0.1 --fail-missing --sourcedir=debian/tmp/gtk2 - dh_install -plibayatana-appindicator-dev --fail-missing --sourcedir=debian/tmp/gtk2 - dh_install -plibayatana-appindicator-doc --fail-missing --sourcedir=debian/tmp/gtk2 + #dh_install -plibayatana-appindicator1 --fail-missing --sourcedir=debian/tmp/gtk2 + #dh_install -pgir1.2-ayatanaappindicator-0.1 --fail-missing --sourcedir=debian/tmp/gtk2 + #dh_install -plibayatana-appindicator-dev --fail-missing --sourcedir=debian/tmp/gtk2 + dh_install -plibayatana-appindicator-doc --fail-missing --sourcedir=debian/tmp/gtk3 dh_install -plibayatana-appindicator3-1 --fail-missing --sourcedir=debian/tmp/gtk3 dh_install -plibayatana-appindicator3-dev --fail-missing --sourcedir=debian/tmp/gtk3 dh_install -pgir1.2-ayatanaappindicator3-0.1 --fail-missing --sourcedir=debian/tmp/gtk3 if echo amd64 arm64 armel armhf i386 mipsel ppc64el s390x kfreebsd-amd64 kfreebsd-i386 powerpc ppc64 | grep -q $(DEB_HOST_ARCH); then \ - dh_install -plibayatana-appindicator0.1-cil --fail-missing --sourcedir=debian/tmp/gtk2; \ - dh_install -plibayatana-appindicator0.1-cil-dev --fail-missing --sourcedir=debian/tmp/gtk2; \ + dh_install -plibayatana-appindicator3-0.1-cil --fail-missing --sourcedir=debian/tmp/gtk3; \ + dh_install -plibayatana-appindicator3-0.1-cil-dev --fail-missing --sourcedir=debian/tmp/gtk3; \ fi - + # these belong into above if clause, once GTK-2+ builds are possible again... + # dh_install -plibayatana-appindicator0.1-cil --fail-missing --sourcedir=debian/tmp/gtk2; \ + # dh_install -plibayatana-appindicator0.1-cil-dev --fail-missing --sourcedir=debian/tmp/gtk2; \ + override_dh_auto_test: mkdir -p $(CURDIR)/debian/tmphome-gtk2 export HOME=$(CURDIR)/debian/tmphome-gtk2 && dh_auto_test --no-parallel --builddirectory=build/gtk2 -- cgit v1.2.3