comparison libinterp/module.mk @ 21653:09c086133228

simplify rules for building DOCSTRING files (bug #47745) * libinterp/module.mk, scripts/module.mk: Don't create separate .DOCSTRINGS file. Create DOCSTRINGS files in $(srcdir). Use move-if-change to avoid rebuilding docs in tarball distribution.
author John W. Eaton <jwe@octave.org>
date Thu, 28 Apr 2016 16:44:38 -0400
parents 3d99ba3d08c1
children 9631aac4b635
comparison
equal deleted inserted replaced
21652:2e07dcdc6139 21653:09c086133228
88 $(OPT_HANDLERS) \ 88 $(OPT_HANDLERS) \
89 $(ALL_DEF_FILES) \ 89 $(ALL_DEF_FILES) \
90 libinterp/builtins.cc 90 libinterp/builtins.cc
91 91
92 libinterp_EXTRA_DIST += \ 92 libinterp_EXTRA_DIST += \
93 libinterp/DOCSTRINGS \ 93 $(srcdir)/libinterp/DOCSTRINGS \
94 libinterp/build-env.in.cc \ 94 libinterp/build-env.in.cc \
95 libinterp/build-env-features.sh \ 95 libinterp/build-env-features.sh \
96 libinterp/find-defun-files.sh \ 96 libinterp/find-defun-files.sh \
97 libinterp/gendoc.pl \ 97 libinterp/gendoc.pl \
98 libinterp/genprops.awk \ 98 libinterp/genprops.awk \
289 $(simple_move_if_change_rule) 289 $(simple_move_if_change_rule)
290 endif 290 endif
291 291
292 if AMCOND_BUILD_DOCS 292 if AMCOND_BUILD_DOCS
293 293
294 DOCSTRING_FILES += libinterp/DOCSTRINGS 294 DOCSTRING_FILES += $(srcdir)/libinterp/DOCSTRINGS
295 295
296 libinterp/DOCSTRINGS: | libinterp/.DOCSTRINGS 296 $(srcdir)/libinterp/DOCSTRINGS: $(ALL_DEF_FILES) | libinterp/$(octave-dirstamp)
297 297 $(AM_V_GEN)rm -f $@-t && \
298 libinterp/.DOCSTRINGS: $(ALL_DEF_FILES) libinterp/gendoc.pl | libinterp/$(octave-dirstamp)
299 $(AM_V_GEN)rm -f $@-t $@ && \
300 if [ "x$(srcdir)" != "x." ] && [ -f $(srcdir)/libinterp/DOCSTRINGS ] && [ ! -f DOCSTRINGS ]; then \
301 cp $(srcdir)/libinterp/DOCSTRINGS libinterp/DOCSTRINGS; \
302 touch -r $(srcdir)/libinterp/DOCSTRINGS libinterp/DOCSTRINGS; \
303 fi && \
304 $(PERL) $(srcdir)/libinterp/gendoc.pl $(ALL_DEF_FILES) > $@-t && \ 298 $(PERL) $(srcdir)/libinterp/gendoc.pl $(ALL_DEF_FILES) > $@-t && \
305 mv $@-t $@ && \ 299 $(SHELL) $(srcdir)/build-aux/move-if-change $@-t $@
306 $(SHELL) $(srcdir)/build-aux/move-if-change $@ libinterp/DOCSTRINGS && \
307 touch $@
308
309 OCTAVE_INTERPRETER_TARGETS += \
310 libinterp/.DOCSTRINGS
311 300
312 endif 301 endif
313 302
314 OCTAVE_INTERPRETER_TARGETS += \ 303 OCTAVE_INTERPRETER_TARGETS += \
315 $(OCT_FILES) \ 304 $(OCT_FILES) \
354 .PHONY: install-oct uninstall-oct 343 .PHONY: install-oct uninstall-oct
355 344
356 if AMCOND_BUILD_DOCS 345 if AMCOND_BUILD_DOCS
357 install-built-in-docstrings: 346 install-built-in-docstrings:
358 $(MKDIR_P) $(DESTDIR)$(octetcdir) 347 $(MKDIR_P) $(DESTDIR)$(octetcdir)
359 $(INSTALL_DATA) libinterp/DOCSTRINGS $(DESTDIR)$(octetcdir)/built-in-docstrings 348 $(INSTALL_DATA) $(srcdir)/libinterp/DOCSTRINGS $(DESTDIR)$(octetcdir)/built-in-docstrings
360 349
361 uninstall-built-in-docstrings: 350 uninstall-built-in-docstrings:
362 rm -f $(DESTDIR)$(octetcdir)/built-in-docstrings 351 rm -f $(DESTDIR)$(octetcdir)/built-in-docstrings
363 endif 352 endif
364 .PHONY: install-built-in-docstrings uninstall-built-in-docstrings 353 .PHONY: install-built-in-docstrings uninstall-built-in-docstrings
375 $(LIBINTERP_BUILT_NODISTFILES) \ 364 $(LIBINTERP_BUILT_NODISTFILES) \
376 $(OCT_FILES) \ 365 $(OCT_FILES) \
377 $(LIBINTERP_TST_FILES) 366 $(LIBINTERP_TST_FILES)
378 367
379 libinterp_MAINTAINERCLEANFILES += \ 368 libinterp_MAINTAINERCLEANFILES += \
380 libinterp/.DOCSTRINGS \ 369 $(srcdir)/libinterp/DOCSTRINGS \
381 libinterp/DOCSTRINGS \
382 $(LIBINTERP_BUILT_DISTFILES) 370 $(LIBINTERP_BUILT_DISTFILES)
383 371
384 BUILT_DISTFILES += $(LIBINTERP_BUILT_DISTFILES) 372 BUILT_DISTFILES += $(LIBINTERP_BUILT_DISTFILES)
385 BUILT_NODISTFILES += $(LIBINTERP_BUILT_NODISTFILES) 373 BUILT_NODISTFILES += $(LIBINTERP_BUILT_NODISTFILES)
386 374