commit | author | age
|
480717
|
1 |
# |
AG |
2 |
# This file and its contents are supplied under the terms of the |
|
3 |
# Common Development and Distribution License ("CDDL)". You may |
|
4 |
# only use this file in accordance with the terms of the CDDL. |
|
5 |
# |
|
6 |
# A full copy of the text of the CDDL should have accompanied this |
|
7 |
# source. A copy of the CDDL is also available via the Internet at |
|
8 |
# http://www.illumos.org/license/CDDL. |
|
9 |
# |
|
10 |
|
|
11 |
# |
edb7fe
|
12 |
# Copyright 2021 Gary Mills |
1a2fc0
|
13 |
# Copyright 2022 Grueninger, Grueninger GmbH, (grueni). All rights reserved. |
480717
|
14 |
# |
AG |
15 |
|
5907f8
|
16 |
BUILD_STYLE= justmake |
MT |
17 |
|
480717
|
18 |
include ../../../make-rules/shared-macros.mk |
AG |
19 |
|
|
20 |
COMPONENT_NAME= pcs |
edb7fe
|
21 |
COMPONENT_VERSION= 0.10.1 |
5907f8
|
22 |
COMPONENT_REVISION= 2 |
480717
|
23 |
COMPONENT_FMRI= application/cluster/$(COMPONENT_NAME) |
AG |
24 |
COMPONENT_CLASSIFICATION= System/Shells |
|
25 |
COMPONENT_PROJECT_URL= https://github.com/ClusterLabs/pcs |
|
26 |
COMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION) |
|
27 |
COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz |
edb7fe
|
28 |
COMPONENT_ARCHIVE_HASH= sha256:61d36fc96c05a4724b76f45216a483e514c9da5b486ba77e906ae45722592cf2 |
480717
|
29 |
COMPONENT_ARCHIVE_URL= https://github.com/ClusterLabs/$(COMPONENT_NAME)/archive/$(COMPONENT_VERSION).tar.gz |
AG |
30 |
COMPONENT_LICENSE= GPLv2 |
|
31 |
COMPONENT_SUMMARY= Pacemaker command line interface and GUI. |
b25ecf
|
32 |
|
JMC |
33 |
# |
|
34 |
# The build process tries to use wget to download an archive without even a |
|
35 |
# check for the correct hash. In order to allow the build to work without |
|
36 |
# networking, we download it first. This will need to be updated if the |
|
37 |
# version or URL in "pcs/snmp/Makefile" changes. |
|
38 |
# |
edb7fe
|
39 |
PYAGENTX_VERSION= 0.4.pcs.2 |
b25ecf
|
40 |
COMPONENT_ARCHIVE_1= pyagentx-v$(PYAGENTX_VERSION).tar.gz |
edb7fe
|
41 |
COMPONENT_ARCHIVE_HASH_1= sha256:9aa8ec276e253ab8fffe04b786e322a1c1fe988e5e2af06fb617a43a4413d139 |
b25ecf
|
42 |
COMPONENT_ARCHIVE_URL_1= https://github.com/ondrejmular/pyagentx/archive/v$(PYAGENTX_VERSION).tar.gz |
JMC |
43 |
|
|
44 |
# |
|
45 |
# The package includes a private copy of a series of Ruby Gems. We must |
|
46 |
# download these in advance so that the build can run without network access. |
|
47 |
# |
edb7fe
|
48 |
COMPONENT_ARCHIVE_2= backports-3.11.4.gem |
GM |
49 |
COMPONENT_ARCHIVE_HASH_2= sha256:0ff9c1601e381e51f93fca3b9931b5e0de4ff0f359da536603fa40c1799750c3 |
b25ecf
|
50 |
COMPONENT_ARCHIVE_URL_2= https://rubygems.org/gems/$(COMPONENT_ARCHIVE_2) |
JMC |
51 |
CACHED_GEM_FILES += $(COMPONENT_ARCHIVE_2) |
|
52 |
|
|
53 |
COMPONENT_ARCHIVE_3= ethon-0.11.0.gem |
|
54 |
COMPONENT_ARCHIVE_HASH_3= sha256:88ec7960a8e00f76afc96ed15dcc8be0cb515f963fe3bb1d4e0b5c51f9d7e078 |
|
55 |
COMPONENT_ARCHIVE_URL_3= https://rubygems.org/gems/$(COMPONENT_ARCHIVE_3) |
|
56 |
CACHED_GEM_FILES += $(COMPONENT_ARCHIVE_3) |
|
57 |
|
|
58 |
COMPONENT_ARCHIVE_4= ffi-1.9.25.gem |
|
59 |
COMPONENT_ARCHIVE_HASH_4= sha256:f854f08f08190fec772a12e863f33761d02ad3efea3c3afcdeffc8a06313f54a |
|
60 |
COMPONENT_ARCHIVE_URL_4= https://rubygems.org/gems/$(COMPONENT_ARCHIVE_4) |
|
61 |
CACHED_GEM_FILES += $(COMPONENT_ARCHIVE_4) |
|
62 |
|
|
63 |
COMPONENT_ARCHIVE_5= json-2.1.0.gem |
|
64 |
COMPONENT_ARCHIVE_HASH_5= sha256:b76fd09b881088c6c64a12721a1528f2f747a1c2ee52fab4c1f60db8af946607 |
|
65 |
COMPONENT_ARCHIVE_URL_5= https://rubygems.org/gems/$(COMPONENT_ARCHIVE_5) |
|
66 |
CACHED_GEM_FILES += $(COMPONENT_ARCHIVE_5) |
|
67 |
|
|
68 |
COMPONENT_ARCHIVE_6= multi_json-1.13.1.gem |
|
69 |
COMPONENT_ARCHIVE_HASH_6= sha256:db8613c039b9501e6b2fb85efe4feabb02f55c3365bae52bba35381b89c780e6 |
|
70 |
COMPONENT_ARCHIVE_URL_6= https://rubygems.org/gems/$(COMPONENT_ARCHIVE_6) |
|
71 |
CACHED_GEM_FILES += $(COMPONENT_ARCHIVE_6) |
|
72 |
|
edb7fe
|
73 |
COMPONENT_ARCHIVE_7= mustermann-1.0.3.gem |
GM |
74 |
COMPONENT_ARCHIVE_HASH_7= sha256:219ecbefebccb10778273bbd64ae468e5da30ac55f346b93700b786feb7ccc53 |
b25ecf
|
75 |
COMPONENT_ARCHIVE_URL_7= https://rubygems.org/gems/$(COMPONENT_ARCHIVE_7) |
JMC |
76 |
CACHED_GEM_FILES += $(COMPONENT_ARCHIVE_7) |
|
77 |
|
edb7fe
|
78 |
COMPONENT_ARCHIVE_8= open4-1.3.4.gem |
GM |
79 |
COMPONENT_ARCHIVE_HASH_8= sha256:a1df037310624ecc1ea1d81264b11c83e96d0c3c1c6043108d37d396dcd0f4b1 |
b25ecf
|
80 |
COMPONENT_ARCHIVE_URL_8= https://rubygems.org/gems/$(COMPONENT_ARCHIVE_8) |
JMC |
81 |
CACHED_GEM_FILES += $(COMPONENT_ARCHIVE_8) |
|
82 |
|
edb7fe
|
83 |
COMPONENT_ARCHIVE_9= rack-2.0.6.gem |
GM |
84 |
COMPONENT_ARCHIVE_HASH_9= sha256:f5874ac9c2223ecc65fcad3120c884fc2a868c1c18f548ff676a6eb21bda8fdd |
b25ecf
|
85 |
COMPONENT_ARCHIVE_URL_9= https://rubygems.org/gems/$(COMPONENT_ARCHIVE_9) |
JMC |
86 |
CACHED_GEM_FILES += $(COMPONENT_ARCHIVE_9) |
|
87 |
|
edb7fe
|
88 |
COMPONENT_ARCHIVE_10= rack-protection-2.0.4.gem |
GM |
89 |
COMPONENT_ARCHIVE_HASH_10= sha256:582a96c5a1a0787f2ff4eaf2db71cdbf6183f69816e0e7bdddf6fcad32399d7a |
b25ecf
|
90 |
COMPONENT_ARCHIVE_URL_10= https://rubygems.org/gems/$(COMPONENT_ARCHIVE_10) |
JMC |
91 |
CACHED_GEM_FILES += $(COMPONENT_ARCHIVE_10) |
|
92 |
|
edb7fe
|
93 |
COMPONENT_ARCHIVE_11= rack-test-1.1.0.gem |
GM |
94 |
COMPONENT_ARCHIVE_HASH_11= sha256:154161f40f162b1c009a655b7b0c5de3a3102cc6d7d2e94b64e1f46ace800866 |
b25ecf
|
95 |
COMPONENT_ARCHIVE_URL_11= https://rubygems.org/gems/$(COMPONENT_ARCHIVE_11) |
JMC |
96 |
CACHED_GEM_FILES += $(COMPONENT_ARCHIVE_11) |
|
97 |
|
edb7fe
|
98 |
COMPONENT_ARCHIVE_12= sinatra-2.0.4.gem |
GM |
99 |
COMPONENT_ARCHIVE_HASH_12= sha256:30a084bd2c9906eb14194e75444a2dd22adc94c64071cbee59411b843aa4bcd7 |
b25ecf
|
100 |
COMPONENT_ARCHIVE_URL_12= https://rubygems.org/gems/$(COMPONENT_ARCHIVE_12) |
JMC |
101 |
CACHED_GEM_FILES += $(COMPONENT_ARCHIVE_12) |
|
102 |
|
edb7fe
|
103 |
COMPONENT_ARCHIVE_13= tilt-2.0.8.gem |
GM |
104 |
COMPONENT_ARCHIVE_HASH_13= sha256:2a3be6c56a8cc6338203c02910e20e858664b633adb550e1103804d75eae4000 |
b25ecf
|
105 |
COMPONENT_ARCHIVE_URL_13= https://rubygems.org/gems/$(COMPONENT_ARCHIVE_13) |
JMC |
106 |
CACHED_GEM_FILES += $(COMPONENT_ARCHIVE_13) |
|
107 |
|
5907f8
|
108 |
TEST_TARGET= $(NO_TESTS) |
480717
|
109 |
|
5907f8
|
110 |
include $(WS_MAKE_RULES)/common.mk |
e44754
|
111 |
include $(WS_MAKE_RULES)/ruby.mk |
480717
|
112 |
|
fb87dc
|
113 |
PATH=$(PATH.gnu):/usr/ruby/$(RUBY_VERSION)/bin |
G |
114 |
|
edb7fe
|
115 |
COMPONENT_INSTALL_ENV += DESTDIR="$(PROTO_DIR)" |
GM |
116 |
COMPONENT_INSTALL_ENV += am_cv_python_pythondir=$(PYTHON_VENDOR_PACKAGES) |
|
117 |
COMPONENT_INSTALL_ENV += am_cv_python_pyexecdir=$(PYTHON_VENDOR_PACKAGES) |
|
118 |
COMPONENT_INSTALL_ENV += PYTHON_SITELIB=$(PYTHON_VENDOR_PACKAGES) |
|
119 |
COMPONENT_INSTALL_ENV += PYTHON=$(PYTHON) |
|
120 |
COMPONENT_INSTALL_ENV += PATH=$(PATH) |
|
121 |
COMPONENT_INSTALL_ENV += BASH_COMPLETION_DIR=/usr/share/bash-completion/completions |
480717
|
122 |
|
b25ecf
|
123 |
# |
JMC |
124 |
# Unpack the pyagentx source into the build directory and pass its location to |
edb7fe
|
125 |
# make. If BUNDLE_PYAGENTX_SRC_DIR is set, "Makefile" will not use wget to |
b25ecf
|
126 |
# download the file. |
JMC |
127 |
# |
|
128 |
# Copy cached Ruby Gems to the bundle cache directory, and set |
|
129 |
# BUNDLE_CACHE_PATH so that "bundle install --local ..." can find them. |
|
130 |
# |
|
131 |
COMPONENT_PREP_ACTION += (mkdir -p $(BUILD_DIR) && cd $(BUILD_DIR) && \ |
|
132 |
tar xfz $(USERLAND_ARCHIVES)$(COMPONENT_ARCHIVE_1) && \ |
|
133 |
mkdir -p bundle_cache && \ |
|
134 |
for x in $(CACHED_GEM_FILES); do \ |
|
135 |
cp $(USERLAND_ARCHIVES)$$x bundle_cache/; \ |
|
136 |
done) |
edb7fe
|
137 |
COMPONENT_INSTALL_ENV += BUNDLE_PYAGENTX_SRC_DIR=$(BUILD_DIR)/pyagentx-$(PYAGENTX_VERSION) |
GM |
138 |
COMPONENT_INSTALL_ENV += BUNDLE_CACHE_PATH=../../bundle_cache |
480717
|
139 |
|
AG |
140 |
# beware of: the package has a combined build + install |
edb7fe
|
141 |
COMPONENT_BUILD_ACTION = echo 'No build target' |
GM |
142 |
|
|
143 |
# pytthon installation class overwrites the shebang during installation |
|
144 |
COMPONENT_POST_INSTALL_ACTION=( \ |
|
145 |
$(MKDIR) $(PROTO_DIR)/usr/share/pcs/examples; \ |
5907f8
|
146 |
$(MV) $(PROTO_DIR)/etc/logrotate.d $(PROTO_DIR)/usr/share/pcs/examples ) |
480717
|
147 |
|
d3e0bf
|
148 |
# Build dependencies |
HL |
149 |
REQUIRED_PACKAGES += library/ruby/bundler |
edd80b
|
150 |
REQUIRED_PACKAGES += system/font/truetype/liberation |
d3e0bf
|
151 |
|
b462d5
|
152 |
# Auto-generated dependencies |
5907f8
|
153 |
PYTHON_REQUIRED_PACKAGES += library/python/setuptools |
MT |
154 |
PYTHON_REQUIRED_PACKAGES += runtime/python |
480717
|
155 |
REQUIRED_PACKAGES += SUNWcs |
b462d5
|
156 |
REQUIRED_PACKAGES += library/libffi |
e44754
|
157 |
REQUIRED_PACKAGES += runtime/ruby-23 |
b462d5
|
158 |
REQUIRED_PACKAGES += shell/bash |
480717
|
159 |
REQUIRED_PACKAGES += system/library |