jenkins-core-weekly: update to 2.491
[oi-userland.git] / components / library / libsecret / Makefile
blobdf6c2c0683065c0f573a23ea672450115250b6c1
2 # This file and its contents are supplied under the terms of the
3 # Common Development and Distribution License ("CDDL"), version 1.0.
4 # You may only use this file in accordance with the terms of version
5 # 1.0 of the CDDL.
7 # A full copy of the text of the CDDL should have accompanied this
8 # source. A copy of the CDDL is also available via the Internet at
9 # http://www.illumos.org/license/CDDL.
13 # Copyright 2016 Alexander Pyhalov
16 BUILD_BITS= 64_and_32
17 BUILD_STYLE= meson
18 USE_DEFAULT_TEST_TRANSFORMS= yes
19 USE_COMMON_TEST_MASTER= no
21 include ../../../make-rules/shared-macros.mk
23 COMPONENT_NAME= libsecret
24 HUMAN_VERSION= 0.21.4
25 COMPONENT_SUMMARY= GObject-based library for storing and receiving secrets
26 COMPONENT_ARCHIVE_HASH= sha256:163d08d783be6d4ab9a979ceb5a4fecbc1d9660d3c34168c581301cd53912b20
27 COMPONENT_FMRI= library/$(COMPONENT_NAME)
28 COMPONENT_CLASSIFICATION=System/Security
29 COMPONENT_LICENSE= LGPL-2.1-only
30 COMPONENT_LICENSE_FILE= COPYING
32 COMPONENT_FMRI.$(COMPONENT_NAME)-32= $(COMPONENT_FMRI)/32
33 COMPONENT_SUMMARY.$(COMPONENT_NAME)-32= $(COMPONENT_SUMMARY) (32-bit)
35 include $(WS_MAKE_RULES)/gnome.mk
36 include $(WS_MAKE_RULES)/common.mk
38 # There is no 32-bit gobject-introspection
39 CONFIGURE_OPTIONS.32 += -Dintrospection=false
40 # vapi files and man pages created during the 64-bit build are enough. They
41 # would overlap otherwise anyway.
42 CONFIGURE_OPTIONS.32 += -Dvapi=false
43 CONFIGURE_OPTIONS.32 += -Dmanpage=false
44 # The documentation build is not possible without introspection.
45 # Also, the documentation built during the 64-bit build is enough.
46 CONFIGURE_OPTIONS.32 += -Dgtk_doc=false
47 # There is neither libgcrypt nor gnutls with 32-bit support
48 CONFIGURE_OPTIONS.32 += -Dcrypto=disabled
50 # Drop 32-bit binaries
51 COMPONENT_POST_INSTALL_ACTION.32 += $(RM) -r $(PROTOUSRBINDIR32) ;
52 # Drop include and locale files created during the 32-bit build. The 64-bit
53 # build produces same files at the same location so we will use those.
54 COMPONENT_POST_INSTALL_ACTION.32 += $(RM) -r $(PROTOUSRINCDIR) ;
55 COMPONENT_POST_INSTALL_ACTION.32 += $(RM) -r $(PROTOUSRSHARELOCALEDIR) ;
57 # Testing needs an X server
58 TEST_REQUIRED_PACKAGES += x11/server/xvfb
59 COMPONENT_PRE_TEST_ACTION += /usr/bin/Xvfb :0 >/dev/null 2>&1 &
60 COMPONENT_TEST_ENV += DISPLAY=:0
61 COMPONENT_POST_TEST_ACTION += /usr/bin/pkill -x Xvfb ;
63 # Some tests are using mlock(3c) and expects it to pass. Since mlock() is
64 # restricted function in illumos we need to make sure the additional privileges
65 # are granted.
66 COMPONENT_PRE_TEST_ACTION += \
67 /usr/bin/ppriv $$$$ | $(GNU_GREP) -q 'E:.*proc_lock_memory' || ( \
68 /usr/bin/printf '\nERROR: The proc_lock_memory privilege is needed!!!\n\n' ; \
69 /usr/bin/printf 'Use\n\n\tusermod -K defaultpriv=basic,%s %s\n' \
70 'proc_lock_memory' '$(shell /usr/bin/id -u -n)' ; \
71 /usr/bin/printf '\nto grant the required privileges.\n\n' ; \
72 exit 1 ) ;
74 # Manually added dependencies
75 REQUIRED_PACKAGES += developer/vala
76 REQUIRED_PACKAGES += library/desktop/gobject/gobject-introspection
78 # Auto-generated dependencies
79 REQUIRED_PACKAGES += library/glib2
80 REQUIRED_PACKAGES += library/glib2/32
81 REQUIRED_PACKAGES += system/library
82 REQUIRED_PACKAGES += system/library/security/libgcrypt