Skip to content

Commit 0771bec

Browse files
committed
Implement feature contitionals
Now configure script can be called with options like --without-ivy --without-gradle --without-generators to disable particular feature.
1 parent e541d1f commit 0771bec

2 files changed

Lines changed: 43 additions & 25 deletions

File tree

configure

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,23 @@ vars_re=$(echo $vars | sed 's/ /\\|/g')
7070
eval $(for _; do echo "$_"; done |
7171
sed -n 's/^--\('"$vars_re"'\)=\(.*\)$/\1="\2"/;T;p')
7272

73+
conds="
74+
ivy
75+
gradle
76+
generators
77+
"
78+
79+
for _ in $conds; do
80+
eval "with_$_=true"
81+
done
82+
83+
conds_re=$(echo $conds | sed 's/ /\\|/g')
84+
condvars_re=with_$(echo $conds | sed 's/ /\\|with_/g')
85+
86+
eval $(for _; do echo "$_"; done |
87+
sed -n 's/^--without-\('"$conds_re"'\)$/with_\1=false/;T;p')
88+
89+
7390
eval $(for _; do echo "$_"; done |
7491
sed -n 's/^--jvm=\([^=]*\)=\(.*\)$/jvms="${jvms}\1=\2 "/;T;p')
7592

@@ -90,5 +107,5 @@ test -z "${abrtlibdir}" && abrtlibdir="${prefix}/lib/abrt-java-connector"
90107

91108
eval $(sed -n 's/^%_\('"$vars_re"'\)\ *\(.*\)$/\1="\2"/;T;s/%{_\(.*}\)/${\1/;p' macros.d/macros.javapackages-filesystem)
92109

93-
set | sed -n 's/^\('"$vars_re"'\)=/&/;T;p' >config.status
110+
set | sed -n 's/^\('"$vars_re\\|$condvars_re"'\)=/&/;T;p' >config.status
94111
echo "jvms=\"${jvms}\"" >>config.status

install

Lines changed: 25 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -203,41 +203,42 @@ inst_data java-utils/maven_depmap.py "${javadir}-utils"
203203

204204
inst_data target/macros.javapackages-compat "${rpmmacrodir}"
205205

206-
exec >files-generators
206+
if $with_generators; then
207+
exec >files-generators
207208

208-
dir "${rpmconfigdir}/fileattrs"
209+
dir "${rpmconfigdir}/fileattrs"
209210

210-
inst_exec target/maven.prov "${rpmconfigdir}" maven.prov
211-
inst_exec target/maven.req "${rpmconfigdir}" maven.req
212-
inst_exec target/osgi.prov "${rpmconfigdir}" osgi.prov
213-
inst_exec target/osgi.req "${rpmconfigdir}" osgi.req
214-
inst_exec target/javadoc.req "${rpmconfigdir}" javadoc.req
211+
inst_exec target/maven.prov "${rpmconfigdir}" maven.prov
212+
inst_exec target/maven.req "${rpmconfigdir}" maven.req
213+
inst_exec target/osgi.prov "${rpmconfigdir}" osgi.prov
214+
inst_exec target/osgi.req "${rpmconfigdir}" osgi.req
215+
inst_exec target/javadoc.req "${rpmconfigdir}" javadoc.req
215216

216-
inst_data target/maven.attr "${rpmconfigdir}/fileattrs" maven.attr
217-
inst_data target/osgi.attr "${rpmconfigdir}/fileattrs" osgi.attr
218-
inst_data target/javadoc.attr "${rpmconfigdir}/fileattrs" javadoc.attr
219-
220-
inst_config etc/javapackages-config.json "${javaconfdir}"
217+
inst_data target/maven.attr "${rpmconfigdir}/fileattrs" maven.attr
218+
inst_data target/osgi.attr "${rpmconfigdir}/fileattrs" osgi.attr
219+
inst_data target/javadoc.attr "${rpmconfigdir}/fileattrs" javadoc.attr
221220

221+
inst_config etc/javapackages-config.json "${javaconfdir}"
222+
fi
222223

223224
exec >files-maven
224225

225226
# Nothing
226227

227228

228-
exec >files-ivy
229-
230-
dir "${sysconfdir}/ivy"
231-
232-
inst_data configs/ivy-local-classpath "${sysconfdir}/ant.d"
233-
inst_data configs/ivysettings.xml "${sysconfdir}/ivy"
234-
235-
236-
exec >files-gradle
229+
if $with_ivy; then
230+
exec >files-ivy
231+
dir "${sysconfdir}/ivy"
232+
inst_data configs/ivy-local-classpath "${sysconfdir}/ant.d"
233+
inst_data configs/ivysettings.xml "${sysconfdir}/ivy"
234+
fi
237235

238-
inst_exec target/gradle-local "${bindir}"
239-
inst_data gradle/init.gradle "${datadir}/gradle-local"
240-
inst_data target/gradle_build.7 "${mandir}/man7"
236+
if $with_gradle; then
237+
exec >files-gradle
238+
inst_exec target/gradle-local "${bindir}"
239+
inst_data gradle/init.gradle "${datadir}/gradle-local"
240+
inst_data target/gradle_build.7 "${mandir}/man7"
241+
fi
241242

242243
exec >files-python
243244
(cd ./python && "${pyinterpreter}" setup.py install -O1 --skip-build --prefix "${prefix}" --root "${DEST}") >&2

0 commit comments

Comments
 (0)