]>
Commit | Line | Data |
---|---|---|
54fb3a5e MT |
1 | |
2 | ############################################################################### | |
3 | # | |
4 | # Function definitions of the naoki build system | |
5 | # | |
6 | ############################################################################### | |
7 | ||
8 | include $(PKGROOT)/gmsl | |
9 | ||
10 | DO_PACKAGE_FILENAME = $(1)$(call DO_PKG_SUFFIX,$(1)) | |
11 | ||
12 | DO_PKG_SUFFIX = \ | |
13 | -$(if $(PKG_VER-$(1)),$(PKG_VER-$(1)),$(PKG_VER))-$(DISTRO_SNAME)$(DISTRO_EPOCH)-$(PKG_ARCH).$(if $(PKG_REL-$(1)),$(PKG_REL-$(1)),$(PKG_REL)).ipk | |
14 | ||
15 | define DO_INIT | |
16 | # Run ldconfig | |
17 | ldconfig | |
18 | endef | |
19 | ||
20 | define DO_PACKAGE | |
21 | @echo "#####################################################################" | |
22 | @echo "# $(1) - Package build started" | |
23 | @echo "#####################################################################" | |
24 | ||
25 | @$(foreach var,$(PKG_VARIABLES),$(if $($(var)-$(1)),$(var)="$(strip $($(var)-$(1)))",$(var)="$(strip $($(var)))")) \ | |
26 | $(DIR_TOOLS)/packager $(1) $(DIR_PACKAGES)/$(call DO_PACKAGE_FILENAME,$(1)) | |
27 | ||
28 | @echo "#####################################################################" | |
29 | @echo "# $(1) - Package build finished" | |
30 | @echo "#####################################################################" | |
31 | ||
32 | endef | |
33 | ||
34 | define DO_FILELIST | |
35 | @echo "# Filelist dump" | |
36 | @cd $(BUILDROOT) && find -ls | |
37 | endef | |
38 | ||
235217d2 MT |
39 | define DO_PACKAGE_VARIABLE |
40 | @echo $(if $($(1)-$(2)),$(1)="\"$(strip $($(1)-$(2)))\"",$(1)="\"$(strip $($(1)))\"") | |
41 | ||
42 | endef | |
43 | ||
44 | define DO_PACKAGE_INFO | |
45 | @echo "PKG_NAME=\"$(1)\"" | |
46 | $(foreach var,$(PKG_VARIABLES),$(call DO_PACKAGE_VARIABLE,$(var),$(1))) | |
47 | ||
48 | @echo | |
49 | ||
50 | endef | |
51 | ||
54fb3a5e MT |
52 | define __INSTALL_DEFAULT |
53 | -mkdir -pv $(BUILDROOT)/etc/default | |
d51f073b | 54 | cd $(DIR_APP) && cp -vf $(1) $(BUILDROOT)/etc/default/$(subst .default,,$(notdir $(1))) |
54fb3a5e MT |
55 | |
56 | endef | |
57 | ||
58 | define DO_INSTALL_DEFAULT | |
59 | $(foreach file,$(PKG_DEFAULT_FILES),$(call __INSTALL_DEFAULT,$(file))) | |
60 | endef | |
61 | ||
62 | define __INSTALL_INIT | |
63 | -mkdir -pv $(BUILDROOT)/etc/init | |
d51f073b | 64 | cd $(DIR_APP) && cp -vf $(1) $(BUILDROOT)/etc/init/$(subst .init,.conf,$(notdir $(1))) |
54fb3a5e MT |
65 | |
66 | endef | |
67 | ||
68 | define DO_INSTALL_INIT | |
69 | $(foreach file,$(PKG_INIT_FILES),$(call __INSTALL_INIT,$(file))) | |
70 | endef | |
71 | ||
72 | define __INSTALL_PAM | |
73 | -mkdir -pv $(BUILDROOT)/etc/pam.d | |
d51f073b | 74 | cd $(DIR_APP) && cp -vf $(1) $(BUILDROOT)/etc/pam.d/$(subst .pam,,$(notdir $(1))) |
54fb3a5e MT |
75 | |
76 | endef | |
77 | ||
78 | define DO_INSTALL_PAM | |
79 | $(foreach file,$(PKG_PAM_FILES),$(call __INSTALL_PAM,$(file))) | |
80 | endef | |
81 | ||
82 | define DO_PYTHON_COMPILE | |
235217d2 | 83 | @find $(BUILDROOT) -name "*.py" | xargs $(BUILD_TOOLS)/py-compile |
54fb3a5e MT |
84 | endef |
85 | ||
86 | define DO_FIX_LIBTOOL | |
87 | # remove rpath from libtool | |
88 | @if [ -e "libtool" ]; then \ | |
89 | sed -i libtool \ | |
90 | -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \ | |
91 | -e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g'; \ | |
92 | fi | |
93 | endef | |
94 | ||
95 | define DO_PREPARE | |
96 | # Initialize the environment at the beginning | |
97 | $(DO_INIT) | |
98 | ||
99 | @echo "#####################################################################" | |
100 | @echo "# $(PKG_NAME) - Preparation started" | |
101 | @echo "#####################################################################" | |
102 | ||
103 | $(STAGE_PREPARE) | |
104 | ||
105 | @echo "#####################################################################" | |
106 | @echo "# $(PKG_NAME) - Preparation finished" | |
107 | @echo "#####################################################################" | |
108 | endef | |
109 | ||
110 | define DO_BUILD | |
111 | @echo "#####################################################################" | |
112 | @echo "# $(PKG_NAME) - Build started" | |
113 | @echo "#####################################################################" | |
114 | ||
115 | $(STAGE_BUILD) | |
116 | ||
117 | @echo "#####################################################################" | |
118 | @echo "# $(PKG_NAME) - Build finished" | |
119 | @echo "#####################################################################" | |
120 | endef | |
121 | ||
122 | define DO_TEST | |
123 | @echo "#####################################################################" | |
124 | @echo "# $(PKG_NAME) - Test started" | |
125 | @echo "#####################################################################" | |
126 | ||
127 | $(STAGE_TEST) | |
128 | ||
129 | @echo "#####################################################################" | |
130 | @echo "# $(PKG_NAME) - Test finished" | |
131 | @echo "#####################################################################" | |
132 | endef | |
133 | ||
134 | define DO_INSTALL | |
135 | @echo "#####################################################################" | |
136 | @echo "# $(PKG_NAME) - Install started" | |
137 | @echo "#####################################################################" | |
138 | ||
139 | -mkdir -pv $(BUILDROOT) | |
140 | ||
141 | $(STAGE_INSTALL) | |
142 | ||
143 | $(DO_INSTALL_DEFAULT) | |
144 | $(DO_INSTALL_INIT) | |
145 | $(DO_INSTALL_PAM) | |
146 | ||
147 | $(DO_PYTHON_COMPILE) | |
148 | ||
149 | @echo "#####################################################################" | |
150 | @echo "# $(PKG_NAME) - Install finished" | |
151 | @echo "#####################################################################" | |
152 | ||
153 | $(DO_QUALITY_AGENT) | |
154 | $(DO_FILELIST) | |
155 | endef | |
156 | ||
157 | STAGE_PACKAGE_TARGETS = $(call reverse,$(PKG_PACKAGES_FILES)) | |
158 | STAGE_DONE = $(ROOT)/.done | |
159 | ||
160 | define STAGE_PREPARE | |
161 | $(if $(PKG_TARBALL),cd $(DIR_SRC) && $(DO_EXTRACT) $(DIR_DL)/$(PKG_TARBALL)) | |
162 | ||
163 | $(if $(PKG_PATCHES),$(DO_PATCHES)) | |
164 | ||
165 | $(STAGE_PREPARE_CMDS) | |
166 | $(STAGE_PREPARE_CMDS2) | |
167 | endef | |
168 | ||
169 | STAGE_BUILD_TARGETS = | |
170 | ||
171 | define STAGE_BUILD | |
172 | cd $(DIR_APP) && \ | |
173 | $(CONFIGURE_ENVIRONMENT) \ | |
174 | ./configure \ | |
175 | $(CONFIGURE_OPTIONS) | |
176 | ||
177 | $(DO_FIX_LIBTOOL) | |
178 | $(STAGE_CONFIGURE_CMDS) | |
179 | ||
180 | cd $(DIR_APP) && make $(STAGE_BUILD_TARGETS) $(PARALLELISMFLAGS) | |
181 | $(STAGE_BUILD_CMDS) | |
182 | endef | |
183 | ||
184 | STAGE_INSTALL_TARGETS = install | |
185 | ||
186 | define STAGE_INSTALL | |
187 | cd $(DIR_APP) && make $(STAGE_INSTALL_TARGETS) DESTDIR=$(BUILDROOT) | |
188 | ||
189 | $(STAGE_INSTALL_CMDS) | |
190 | endef |