annotate Makefile.am @ 25897:440eb4707570

reorganize rules for building .oct files * build-aux/mk-pkg-add.sh: Move here from libinterp/mk-pkg-add.sh. * build-aux/module.mk, libinterp/module.mk: Update. * Makefile.am, libinterp/module.mk, libinterp/dldfcn/config-module.awk: Refactor rules for building .oct files and corresponding PKG_ADD files to allow .oct file sources in directories other than libinterp/dldfcn.
author John W. Eaton <jwe@octave.org>
date Fri, 14 Sep 2018 16:20:20 -0400
parents 95eb72d50fb0
children c3503d044340
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
15269
b42167e9d805 maint: Update Makefile.am comments to refer to Octave (program) rather than octave (command).
Rik <rik@octave.org>
parents: 15196
diff changeset
1 # Makefile for Octave
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
2 #
25054
6652d3823428 maint: Update copyright dates in all source files.
John W. Eaton <jwe@octave.org>
parents: 24899
diff changeset
3 # Copyright (C) 1993-2018 John W. Eaton
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
4 #
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
5 # This file is part of Octave.
19593
446c46af4b42 strip trailing whitespace from most source files
John W. Eaton <jwe@octave.org>
parents: 18914
diff changeset
6 #
24534
194eb4bd202b maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents: 24170
diff changeset
7 # Octave is free software: you can redistribute it and/or modify it
22755
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22323
diff changeset
8 # under the terms of the GNU General Public License as published by
24534
194eb4bd202b maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents: 24170
diff changeset
9 # the Free Software Foundation, either version 3 of the License, or
22755
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22323
diff changeset
10 # (at your option) any later version.
19593
446c46af4b42 strip trailing whitespace from most source files
John W. Eaton <jwe@octave.org>
parents: 18914
diff changeset
11 #
22755
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22323
diff changeset
12 # Octave is distributed in the hope that it will be useful, but
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22323
diff changeset
13 # WITHOUT ANY WARRANTY; without even the implied warranty of
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22323
diff changeset
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22323
diff changeset
15 # GNU General Public License for more details.
19593
446c46af4b42 strip trailing whitespace from most source files
John W. Eaton <jwe@octave.org>
parents: 18914
diff changeset
16 #
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
17 # You should have received a copy of the GNU General Public License
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
18 # along with Octave; see the file COPYING. If not, see
24534
194eb4bd202b maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents: 24170
diff changeset
19 # <https://www.gnu.org/licenses/>.
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
20
21975
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
21 # This Makefile requires GNU Make features.
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
22
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
23 export AWK
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
24 export GREP
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
25 export FIND
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
26 export SED
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
27 export SHELL
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
28 export PERL
24077
e483dcb5777d build the source distribution archives reproducibly
Mike Miller <mtmiller@octave.org>
parents: 23709
diff changeset
29 export TAR_OPTIONS
21975
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
30
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
31 version := ${OCTAVE_VERSION}
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
32 api_version := ${OCTAVE_API_VERSION}
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
33
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
34 ## AM_LIBTOOLFLAGS = --silent
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
35
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
36 AM_LFLAGS = @LFLAGS@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
37
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
38 AM_YFLAGS = -dv
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
39
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
40 # Fortran compiler flags.
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
41
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22125
diff changeset
42 AM_FFLAGS = ${FPICFLAG} @FFLAGS@
21975
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
43
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
44 # C compiler flags.
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
45
25593
90d43011e8e7 simplify usage of CFLAGS and CXXFLAGS (bug #48505)
John W. Eaton <jwe@octave.org>
parents: 25591
diff changeset
46 AM_CFLAGS = ${CPICFLAG} ${XTRA_CFLAGS} ${WARN_CFLAGS}
21975
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
47
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
48 # ifeq (${INCLUDE_DEPS},no)
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
49 # omit_deps = true;
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
50 # endif
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
51
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
52 # C++ compiler flags.
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
53
25593
90d43011e8e7 simplify usage of CFLAGS and CXXFLAGS (bug #48505)
John W. Eaton <jwe@octave.org>
parents: 25591
diff changeset
54 AM_CXXFLAGS = ${CXXPICFLAG} ${XTRA_CXXFLAGS} ${WARN_CXXFLAGS}
21975
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
55
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
56 FFTW_XCPPFLAGS = @FFTW_XCPPFLAGS@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
57 FFTW_XLDFLAGS = @FFTW_XLDFLAGS@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
58 FFTW_XLIBS = @FFTW_XLIBS@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
59
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
60 SPARSE_XCPPFLAGS = @SPARSE_XCPPFLAGS@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
61 SPARSE_XLDFLAGS = @SPARSE_XLDFLAGS@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
62 SPARSE_XLIBS = @SPARSE_XLIBS@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
63
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
64 GNULIB_LINK_DEPS = @GNULIB_LINK_DEPS@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
65
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
66 LIBOCTAVE_LINK_DEPS = @LIBOCTAVE_LINK_DEPS@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
67 LIBOCTAVE_LINK_OPTS = @LIBOCTAVE_LINK_OPTS@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
68
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
69 LIBOCTINTERP_LINK_DEPS = @LIBOCTINTERP_LINK_DEPS@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
70 LIBOCTINTERP_LINK_OPTS = @LIBOCTINTERP_LINK_OPTS@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
71
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
72 OCTAVE_LINK_DEPS = @OCTAVE_LINK_DEPS@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
73 OCTAVE_LINK_OPTS = @OCTAVE_LINK_OPTS@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
74
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
75 OCT_LINK_DEPS = @OCT_LINK_DEPS@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
76 OCT_LINK_OPTS = @OCT_LINK_OPTS@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
77
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
78 LIBOCTGUI_LINK_DEPS = @LIBOCTGUI_LINK_DEPS@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
79 LIBOCTGUI_LINK_OPTS = @LIBOCTGUI_LINK_OPTS@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
80
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
81 OCTAVE_GUI_LINK_DEPS = @OCTAVE_GUI_LINK_DEPS@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
82 OCTAVE_GUI_LINK_OPTS = @OCTAVE_GUI_LINK_OPTS@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
83
24077
e483dcb5777d build the source distribution archives reproducibly
Mike Miller <mtmiller@octave.org>
parents: 23709
diff changeset
84 # Options used for creating the source distribution.
e483dcb5777d build the source distribution archives reproducibly
Mike Miller <mtmiller@octave.org>
parents: 23709
diff changeset
85
24083
1457c018b683 maint: declare gzip compression options to stay compatible with Automake 1.14
Mike Miller <mtmiller@octave.org>
parents: 24077
diff changeset
86 GZIP_ENV = '--best --no-name'
24077
e483dcb5777d build the source distribution archives reproducibly
Mike Miller <mtmiller@octave.org>
parents: 23709
diff changeset
87 SOURCE_MTIME := \
e483dcb5777d build the source distribution archives reproducibly
Mike Miller <mtmiller@octave.org>
parents: 23709
diff changeset
88 $(shell $(SHELL) $(top_srcdir)/build-aux/get-source-mtime.sh "$(srcdir)")
e483dcb5777d build the source distribution archives reproducibly
Mike Miller <mtmiller@octave.org>
parents: 23709
diff changeset
89 TAR_OPTIONS = $(REPRODUCIBLE_TAR_FLAGS) --mtime=@$(SOURCE_MTIME)
e483dcb5777d build the source distribution archives reproducibly
Mike Miller <mtmiller@octave.org>
parents: 23709
diff changeset
90
21975
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
91 # The arguments passed to configure.
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
92
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
93 CONFIG_SUBDIRS = @subdirs@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
94
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
95 null =
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
96 ldpreloadsep = ${null}@ldpreloadsep@${null}
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
97
20328
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
98 image_DATA =
20293
d6879b59f46f eliminate recursive make invocation in examples directory tree
John W. Eaton <jwe@octave.org>
parents: 19841
diff changeset
99 octdata_DATA =
24889
92aaa85c06b8 build: use normal automake syntax for installing Qt help (bug #53006)
Mike Miller <mtmiller@octave.org>
parents: 24875
diff changeset
100 octdoc_DATA =
20293
d6879b59f46f eliminate recursive make invocation in examples directory tree
John W. Eaton <jwe@octave.org>
parents: 19841
diff changeset
101 octetc_DATA =
24899
1a46d174a483 include a proper definition of Octave's private font fallback directory
Mike Miller <mtmiller@octave.org>
parents: 24889
diff changeset
102 octfonts_DATA =
20326
8ef616eec739 eliminate recursive make invocation in libgui directory tree
John W. Eaton <jwe@octave.org>
parents: 20325
diff changeset
103 octlocale_DATA =
20293
d6879b59f46f eliminate recursive make invocation in examples directory tree
John W. Eaton <jwe@octave.org>
parents: 19841
diff changeset
104
25897
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
105 OCT_FILES =
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
106 OCT_FILE_LIBS =
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
107 OCT_FILE_PKG_ADD_FILES =
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
108
20342
0e2da885a410 fix lists of files to distribute
John W. Eaton <jwe@octave.org>
parents: 20328
diff changeset
109 DOC_TARGETS =
0e2da885a410 fix lists of files to distribute
John W. Eaton <jwe@octave.org>
parents: 20328
diff changeset
110
20327
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
111 BUILT_DISTFILES =
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
112 BUILT_NODISTFILES =
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
113 EXTRA_DIST =
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
114
23709
3b68aeeabc40 rename some build scripts for consistency and move them to where they are used
John W. Eaton <jwe@octave.org>
parents: 23647
diff changeset
115 GEN_CONFIG_SHELL =
3b68aeeabc40 rename some build scripts for consistency and move them to where they are used
John W. Eaton <jwe@octave.org>
parents: 23647
diff changeset
116
20327
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
117 BUILT_DISTFILES += \
20307
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
118 AUTHORS \
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
119 BUGS \
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
120 ChangeLog \
21598
cf552443c104 revise method of handling hg id for build info
John W. Eaton <jwe@octave.org>
parents: 21597
diff changeset
121 HG-ID \
20307
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
122 INSTALL.OCTAVE
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
123
20327
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
124 EXTRA_DIST += \
20385
956119b6e6d1 build: Restore AUTHORS, BUGS, and INSTALL.OCTAVE to source tarball
Mike Miller <mtmiller@octave.org>
parents: 20384
diff changeset
125 CITATION \
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
126 COPYING \
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
127 INSTALL \
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
128 NEWS \
24170
3dbd6409eeb9 Undo markdown usage for README (cset 312c00dd723a).
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents: 24169
diff changeset
129 README \
20385
956119b6e6d1 build: Restore AUTHORS, BUGS, and INSTALL.OCTAVE to source tarball
Mike Miller <mtmiller@octave.org>
parents: 20384
diff changeset
130 run-octave.in \
956119b6e6d1 build: Restore AUTHORS, BUGS, and INSTALL.OCTAVE to source tarball
Mike Miller <mtmiller@octave.org>
parents: 20384
diff changeset
131 $(BUILT_DISTFILES)
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
132
21413
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
133 AUTOCONF_SUBST_VARS = @AUTOCONF_SUBST_VARS@
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
134 ALL_SUBST_VARS = \
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
135 $(AUTOCONF_SUBST_VARS) \
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
136 abs_top_builddir \
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
137 abs_top_srcdir \
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
138 api_version \
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
139 version
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
140
20307
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
141 DIRSTAMP_FILES =
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
142
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
143 octave_dirstamp = $(am__leading_dot)octave-dirstamp
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
144
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
145 $(DIRSTAMP_FILES):
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
146 $(AM_V_GEN)$(MKDIR_P) $(@D) && \
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
147 : > $@
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
148
20306
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
149 CLEANFILES =
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
150 DISTCLEANFILES =
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
151 MAINTAINERCLEANFILES =
20307
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
152 info_TEXINFOS =
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
153 BUILT_SOURCES =
20308
bacaec9b5535 eliminate recursive make invocation in test directory tree
John W. Eaton <jwe@octave.org>
parents: 20307
diff changeset
154 TEST_FILES =
25453
e255f09dc70e initial framework for testing MEX files
John W. Eaton <jwe@octave.org>
parents: 25391
diff changeset
155 noinst_TEST_FILES =
20306
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
156
20345
10f67e9d1e70 keep list of built images separate from other images
John W. Eaton <jwe@octave.org>
parents: 20344
diff changeset
157 DOC_IMAGES_SRC =
10f67e9d1e70 keep list of built images separate from other images
John W. Eaton <jwe@octave.org>
parents: 20344
diff changeset
158 BUILT_DOC_IMAGES =
10f67e9d1e70 keep list of built images separate from other images
John W. Eaton <jwe@octave.org>
parents: 20344
diff changeset
159 BUILT_DOC_IMAGES_EPS =
10f67e9d1e70 keep list of built images separate from other images
John W. Eaton <jwe@octave.org>
parents: 20344
diff changeset
160 BUILT_DOC_IMAGES_PDF =
10f67e9d1e70 keep list of built images separate from other images
John W. Eaton <jwe@octave.org>
parents: 20344
diff changeset
161 BUILT_DOC_IMAGES_PNG =
10f67e9d1e70 keep list of built images separate from other images
John W. Eaton <jwe@octave.org>
parents: 20344
diff changeset
162 BUILT_DOC_IMAGES_TXT =
20328
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
163 DOC_IMAGES =
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
164 DOC_IMAGES_EPS =
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
165 DOC_IMAGES_PDF =
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
166 DOC_IMAGES_PNG =
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
167 DOC_IMAGES_TXT =
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
168
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
169 FCN_FILE_DIRS =
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
170 FCN_FILES =
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
171 GEN_FCN_FILES =
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
172 PKG_ADD_FILES =
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
173 SCRIPTS_IMAGES =
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
174 JAR_FILES =
20393
0fbe2e28ea84 build: Avoid triggering rebuild of docs when DOCSTRINGS regenerated (bug #45567)
Mike Miller <mtmiller@octave.org>
parents: 20391
diff changeset
175 DOCSTRING_FILES =
20307
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
176
20325
2d84d27dc9f0 eliminate recursive make invocation in src directory
John W. Eaton <jwe@octave.org>
parents: 20308
diff changeset
177 bin_PROGRAMS =
2d84d27dc9f0 eliminate recursive make invocation in src directory
John W. Eaton <jwe@octave.org>
parents: 20308
diff changeset
178 archlib_PROGRAMS =
2d84d27dc9f0 eliminate recursive make invocation in src directory
John W. Eaton <jwe@octave.org>
parents: 20308
diff changeset
179 noinst_HEADERS =
21229
a83e7a384ee0 create and install a subset of config.h in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 20412
diff changeset
180 nodist_noinst_HEADERS =
20325
2d84d27dc9f0 eliminate recursive make invocation in src directory
John W. Eaton <jwe@octave.org>
parents: 20308
diff changeset
181 OCTAVE_VERSION_LINKS =
2d84d27dc9f0 eliminate recursive make invocation in src directory
John W. Eaton <jwe@octave.org>
parents: 20308
diff changeset
182 OCTAVE_CROSS_TOOLS =
2d84d27dc9f0 eliminate recursive make invocation in src directory
John W. Eaton <jwe@octave.org>
parents: 20308
diff changeset
183 OCTAVE_INTERPRETER_TARGETS =
2d84d27dc9f0 eliminate recursive make invocation in src directory
John W. Eaton <jwe@octave.org>
parents: 20308
diff changeset
184
20326
8ef616eec739 eliminate recursive make invocation in libgui directory tree
John W. Eaton <jwe@octave.org>
parents: 20325
diff changeset
185 octlib_LTLIBRARIES =
8ef616eec739 eliminate recursive make invocation in libgui directory tree
John W. Eaton <jwe@octave.org>
parents: 20325
diff changeset
186 noinst_LTLIBRARIES =
8ef616eec739 eliminate recursive make invocation in libgui directory tree
John W. Eaton <jwe@octave.org>
parents: 20325
diff changeset
187
20327
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
188 octinclude_HEADERS =
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
189 nodist_octinclude_HEADERS =
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
190
25391
26070f36f1e7 Provide octave configuration files for pkg-config (bug #48775)
Carnë Draug <carandraug@octave.org>
parents: 25212
diff changeset
191 pkgconfig_DATA =
26070f36f1e7 Provide octave configuration files for pkg-config (bug #48775)
Carnë Draug <carandraug@octave.org>
parents: 25212
diff changeset
192
20327
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
193 DIST_SRC =
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
194
20325
2d84d27dc9f0 eliminate recursive make invocation in src directory
John W. Eaton <jwe@octave.org>
parents: 20308
diff changeset
195 ALL_LOCAL_TARGETS =
2d84d27dc9f0 eliminate recursive make invocation in src directory
John W. Eaton <jwe@octave.org>
parents: 20308
diff changeset
196
21384
ad1dbbd23f1d Makefile.am: Add libgnu.la to BUILT_SOURCES to generate it early (partial fix bug #45578).
Rik <rik@octave.org>
parents: 21382
diff changeset
197 # Subdirectories in which to run make recursively.
ad1dbbd23f1d Makefile.am: Add libgnu.la to BUILT_SOURCES to generate it early (partial fix bug #45578).
Rik <rik@octave.org>
parents: 21382
diff changeset
198 # Other directories are handled directly from this Makefile,
ad1dbbd23f1d Makefile.am: Add libgnu.la to BUILT_SOURCES to generate it early (partial fix bug #45578).
Rik <rik@octave.org>
parents: 21382
diff changeset
199 # but also review the included module.mk makefile fragments.
ad1dbbd23f1d Makefile.am: Add libgnu.la to BUILT_SOURCES to generate it early (partial fix bug #45578).
Rik <rik@octave.org>
parents: 21382
diff changeset
200
ad1dbbd23f1d Makefile.am: Add libgnu.la to BUILT_SOURCES to generate it early (partial fix bug #45578).
Rik <rik@octave.org>
parents: 21382
diff changeset
201 SUBDIRS = libgnu
ad1dbbd23f1d Makefile.am: Add libgnu.la to BUILT_SOURCES to generate it early (partial fix bug #45578).
Rik <rik@octave.org>
parents: 21382
diff changeset
202
ad1dbbd23f1d Makefile.am: Add libgnu.la to BUILT_SOURCES to generate it early (partial fix bug #45578).
Rik <rik@octave.org>
parents: 21382
diff changeset
203 # All of build depends on having libgnu.
ad1dbbd23f1d Makefile.am: Add libgnu.la to BUILT_SOURCES to generate it early (partial fix bug #45578).
Rik <rik@octave.org>
parents: 21382
diff changeset
204 # Add the library to BUILT_SOURCES so it is created early in the build process
ad1dbbd23f1d Makefile.am: Add libgnu.la to BUILT_SOURCES to generate it early (partial fix bug #45578).
Rik <rik@octave.org>
parents: 21382
diff changeset
205 # This is only a partial solution which works when 'make all' is used.
ad1dbbd23f1d Makefile.am: Add libgnu.la to BUILT_SOURCES to generate it early (partial fix bug #45578).
Rik <rik@octave.org>
parents: 21382
diff changeset
206 # See bug #45578.
ad1dbbd23f1d Makefile.am: Add libgnu.la to BUILT_SOURCES to generate it early (partial fix bug #45578).
Rik <rik@octave.org>
parents: 21382
diff changeset
207 BUILT_SOURCES += libgnu/libgnu.la
ad1dbbd23f1d Makefile.am: Add libgnu.la to BUILT_SOURCES to generate it early (partial fix bug #45578).
Rik <rik@octave.org>
parents: 21382
diff changeset
208
22014
b07c0f27dccc build: fix compilation error after 'make clean' (bug #47971)
Mike Miller <mtmiller@octave.org>
parents: 22011
diff changeset
209 libgnu/libgnu.la: oct-conf-post.h
22076
d9643bc3792a build: minor correction to workaround rule to build libgnu.la (bug #45578)
Mike Miller <mtmiller@octave.org>
parents: 22042
diff changeset
210 cd libgnu && $(MAKE) $(AM_MAKEFLAGS) all
21384
ad1dbbd23f1d Makefile.am: Add libgnu.la to BUILT_SOURCES to generate it early (partial fix bug #45578).
Rik <rik@octave.org>
parents: 21382
diff changeset
211
20327
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
212 include liboctave/module.mk
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
213 include libinterp/module.mk
20326
8ef616eec739 eliminate recursive make invocation in libgui directory tree
John W. Eaton <jwe@octave.org>
parents: 20325
diff changeset
214 include libgui/module.mk
20325
2d84d27dc9f0 eliminate recursive make invocation in src directory
John W. Eaton <jwe@octave.org>
parents: 20308
diff changeset
215 include src/module.mk
20328
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
216 include scripts/module.mk
20307
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
217 include doc/module.mk
20306
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
218 include etc/module.mk
20293
d6879b59f46f eliminate recursive make invocation in examples directory tree
John W. Eaton <jwe@octave.org>
parents: 19841
diff changeset
219 include examples/module.mk
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
220 include m4/module.mk
20308
bacaec9b5535 eliminate recursive make invocation in test directory tree
John W. Eaton <jwe@octave.org>
parents: 20307
diff changeset
221 include test/module.mk
23572
0703d31e1ec0 new script for updating test status for fixed bugs
John W. Eaton <jwe@octave.org>
parents: 23529
diff changeset
222 include build-aux/module.mk
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
223
21818
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
224 DIST_HOOKS := \
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
225 doc-interpreter-dist-hook \
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
226 docs-dist-hook \
23529
03c000f5e746 fix permissions on files and directories included in the distribution
Mike Miller <mtmiller@octave.org>
parents: 23427
diff changeset
227 fix-file-perms-dist-hook \
21818
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
228 hg-id-dist-hook \
25591
a932bdccdef8 check for version info in org.octave.Octave.appdata.xml for make dist
John W. Eaton <jwe@octave.org>
parents: 25453
diff changeset
229 appdata-dist-hook \
21818
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
230 icons-dist-hook \
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
231 scripts-dist-hook
21815
418b6066e544 new maintainer-mode for build (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21716
diff changeset
232
21818
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
233 dist-hook: $(DIST_HOOKS)
10092
02453ee20140 allow building of docs to be disabled
John W. Eaton <jwe@octave.org>
parents: 10006
diff changeset
234
20306
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
235 if AMCOND_BUILD_DOCS
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
236 docs-dist-hook:
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
237 else
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
238 docs-dist-hook:
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
239 @echo "Documentation disabled. Cannot package distribution!" ; exit 1;
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
240 endif
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
241
23529
03c000f5e746 fix permissions on files and directories included in the distribution
Mike Miller <mtmiller@octave.org>
parents: 23427
diff changeset
242 ## Ensure file permissions are consistent on all files included in the
03c000f5e746 fix permissions on files and directories included in the distribution
Mike Miller <mtmiller@octave.org>
parents: 23427
diff changeset
243 ## distribution. Automake takes care of normalizing some permissions of
03c000f5e746 fix permissions on files and directories included in the distribution
Mike Miller <mtmiller@octave.org>
parents: 23427
diff changeset
244 ## normal files and directories. Automake does not ensure that files don't
03c000f5e746 fix permissions on files and directories included in the distribution
Mike Miller <mtmiller@octave.org>
parents: 23427
diff changeset
245 ## have unnecessarily lax write permissions. It also does not ensure that
03c000f5e746 fix permissions on files and directories included in the distribution
Mike Miller <mtmiller@octave.org>
parents: 23427
diff changeset
246 ## executable permissions are set for group and other users.
03c000f5e746 fix permissions on files and directories included in the distribution
Mike Miller <mtmiller@octave.org>
parents: 23427
diff changeset
247 fix-file-perms-dist-hook:
03c000f5e746 fix permissions on files and directories included in the distribution
Mike Miller <mtmiller@octave.org>
parents: 23427
diff changeset
248 -chmod -R go-w "$(distdir)"
03c000f5e746 fix permissions on files and directories included in the distribution
Mike Miller <mtmiller@octave.org>
parents: 23427
diff changeset
249 -find "$(distdir)" -type f -perm -100 -exec chmod a+rx {} \;
03c000f5e746 fix permissions on files and directories included in the distribution
Mike Miller <mtmiller@octave.org>
parents: 23427
diff changeset
250 .PHONY: fix-file-perms-dist-hook
03c000f5e746 fix permissions on files and directories included in the distribution
Mike Miller <mtmiller@octave.org>
parents: 23427
diff changeset
251
21818
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
252 if AMCOND_ENABLE_HG_ID
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
253 hg-id-dist-hook:
25212
ec119a613e3b build: require a clean hg state for make dist
Mike Miller <mtmiller@octave.org>
parents: 25054
diff changeset
254 @test x"$(DIST_IGNORE_HG_STATE)" != x \
ec119a613e3b build: require a clean hg state for make dist
Mike Miller <mtmiller@octave.org>
parents: 25054
diff changeset
255 || echo $(HG_ID_VAR) | $(GREP) '^[0-9a-f]\{12\}$$' >/dev/null 2>&1 \
ec119a613e3b build: require a clean hg state for make dist
Mike Miller <mtmiller@octave.org>
parents: 25054
diff changeset
256 || { echo ; \
ec119a613e3b build: require a clean hg state for make dist
Mike Miller <mtmiller@octave.org>
parents: 25054
diff changeset
257 echo "Packaging distribution requires a clean hg working tree with no uncommitted changes." ; \
ec119a613e3b build: require a clean hg state for make dist
Mike Miller <mtmiller@octave.org>
parents: 25054
diff changeset
258 echo "Please commit or revert your changes first, or pass DIST_IGNORE_HG_STATE=1." ; \
ec119a613e3b build: require a clean hg state for make dist
Mike Miller <mtmiller@octave.org>
parents: 25054
diff changeset
259 echo "Cannot package distribution!" ; \
ec119a613e3b build: require a clean hg state for make dist
Mike Miller <mtmiller@octave.org>
parents: 25054
diff changeset
260 echo ; exit 1; }
21818
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
261 else
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
262 hg-id-dist-hook:
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
263 @echo "WARNING: Octave was configured with --disable-hg-id" 1>&2
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
264 endif
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
265 .PHONY: hg-id-dist-hook
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
266
20306
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
267 if AMCOND_HAVE_ICON_TOOLS
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
268 icons-dist-hook:
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
269 else
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
270 icons-dist-hook:
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
271 @echo "Packaging distribution requires icotool and rsvg-convert." ; exit 1;
10092
02453ee20140 allow building of docs to be disabled
John W. Eaton <jwe@octave.org>
parents: 10006
diff changeset
272 endif
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
273
20307
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
274 BUILT_SOURCES += \
21716
fccffef9d210 attempt to ensure that oct-conf-post.h is built early and as needed
John W. Eaton <jwe@octave.org>
parents: 21631
diff changeset
275 oct-conf-post.h \
21248
5ddc9b61a0c4 * Makefile.am (BUILT_SOURCES): Add octave-config.h to the list.
John W. Eaton <jwe@octave.org>
parents: 21229
diff changeset
276 octave-config.h \
20307
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
277 run-octave \
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
278 $(DIRSTAMP_FILES)
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
279
17878
0d660785098e work around GCC bug in stl_algo.h (nth_element and sort; bug #40436)
John W. Eaton <jwe@octave.org>
parents: 17763
diff changeset
280 if AMCOND_HAVE_BROKEN_STL_ALGO_H
0d660785098e work around GCC bug in stl_algo.h (nth_element and sort; bug #40436)
John W. Eaton <jwe@octave.org>
parents: 17763
diff changeset
281 BUILT_SOURCES += bits/stl_algo.h
17880
51a3b3fa981f try to ensure that stray bits/stl_algo.h file is not in build tree
John W. Eaton <jwe@octave.org>
parents: 17878
diff changeset
282 else
51a3b3fa981f try to ensure that stray bits/stl_algo.h file is not in build tree
John W. Eaton <jwe@octave.org>
parents: 17878
diff changeset
283 BUILT_SOURCES += nonexistent-file
17878
0d660785098e work around GCC bug in stl_algo.h (nth_element and sort; bug #40436)
John W. Eaton <jwe@octave.org>
parents: 17763
diff changeset
284 endif
0d660785098e work around GCC bug in stl_algo.h (nth_element and sort; bug #40436)
John W. Eaton <jwe@octave.org>
parents: 17763
diff changeset
285
10986
20bb05b9fb3f makefile rules for compiled auxiliary programs
John W. Eaton <jwe@octave.org>
parents: 10856
diff changeset
286 noinst_SCRIPTS = run-octave
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
287
20306
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
288 CLEANFILES += \
21413
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
289 config-vars \
22024
659731a4563f build: delete generated files, keep distributed files on clean and distclean (bug #45646)
Mike Miller <mtmiller@octave.org>
parents: 22020
diff changeset
290 make-vars \
659731a4563f build: delete generated files, keep distributed files on clean and distclean (bug #45646)
Mike Miller <mtmiller@octave.org>
parents: 22020
diff changeset
291 octave-config.h \
659731a4563f build: delete generated files, keep distributed files on clean and distclean (bug #45646)
Mike Miller <mtmiller@octave.org>
parents: 22020
diff changeset
292 run-octave
9943
4c681ff57bc3 Modifications to makefiles to pass distcheck test
Rik <rdrider0-list@yahoo.com>
parents: 9864
diff changeset
293
20306
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
294 DISTCLEANFILES += \
22017
4eafa2cc599f build: clean build-aux generated shell scripts on 'make distclean'
Mike Miller <mtmiller@octave.org>
parents: 22014
diff changeset
295 $(DIRSTAMP_FILES) \
22024
659731a4563f build: delete generated files, keep distributed files on clean and distclean (bug #45646)
Mike Miller <mtmiller@octave.org>
parents: 22020
diff changeset
296 $(GEN_CONFIG_INC) \
22017
4eafa2cc599f build: clean build-aux generated shell scripts on 'make distclean'
Mike Miller <mtmiller@octave.org>
parents: 22014
diff changeset
297 $(GEN_CONFIG_SHELL) \
4eafa2cc599f build: clean build-aux generated shell scripts on 'make distclean'
Mike Miller <mtmiller@octave.org>
parents: 22014
diff changeset
298 .gdbinit
12740
0fe2eb81e6d0 maint: don't remove distributed files with make distclean target
John W. Eaton <jwe@octave.org>
parents: 12737
diff changeset
299
20391
39721c09691b build: Delete more generated files on maintainer-clean
Mike Miller <mtmiller@octave.org>
parents: 20385
diff changeset
300 MAINTAINERCLEANFILES += \
22018
a49ed7b7b66f build: delete HG-ID on 'make distclean' and 'make maintainer-clean'
Mike Miller <mtmiller@octave.org>
parents: 22017
diff changeset
301 $(BUILT_DISTFILES) \
20410
517f5a006279 build: Don't delete ChangeLog with distclean target (bug #45646).
Rik <rik@octave.org>
parents: 20393
diff changeset
302 ChangeLog \
22018
a49ed7b7b66f build: delete HG-ID on 'make distclean' and 'make maintainer-clean'
Mike Miller <mtmiller@octave.org>
parents: 22017
diff changeset
303 HG-ID
20391
39721c09691b build: Delete more generated files on maintainer-clean
Mike Miller <mtmiller@octave.org>
parents: 20385
diff changeset
304
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
305 CONFIG_FILES = @ac_config_headers@ @ac_config_files@
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
306
22024
659731a4563f build: delete generated files, keep distributed files on clean and distclean (bug #45646)
Mike Miller <mtmiller@octave.org>
parents: 22020
diff changeset
307 nodist_octinclude_HEADERS += \
659731a4563f build: delete generated files, keep distributed files on clean and distclean (bug #45646)
Mike Miller <mtmiller@octave.org>
parents: 22020
diff changeset
308 octave-config.h
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
309
21382
eb7287db3da9 create .oct and other files in build tree (bug #46260)
John W. Eaton <jwe@octave.org>
parents: 21290
diff changeset
310 ALL_LOCAL_TARGETS += \
eb7287db3da9 create .oct and other files in build tree (bug #46260)
John W. Eaton <jwe@octave.org>
parents: 21290
diff changeset
311 $(OCTAVE_INTERPRETER_TARGETS) \
eb7287db3da9 create .oct and other files in build tree (bug #46260)
John W. Eaton <jwe@octave.org>
parents: 21290
diff changeset
312 .gdbinit \
eb7287db3da9 create .oct and other files in build tree (bug #46260)
John W. Eaton <jwe@octave.org>
parents: 21290
diff changeset
313 $(DOC_TARGETS)
eb7287db3da9 create .oct and other files in build tree (bug #46260)
John W. Eaton <jwe@octave.org>
parents: 21290
diff changeset
314
eb7287db3da9 create .oct and other files in build tree (bug #46260)
John W. Eaton <jwe@octave.org>
parents: 21290
diff changeset
315 all-local: $(ALL_LOCAL_TARGETS)
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
316 @echo ""
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
317 @echo "Octave successfully built. Now choose from the following:"
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
318 @echo ""
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
319 @echo " ./run-octave - to run in place to test before installing"
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
320 @echo " make check - to run the tests"
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
321 @echo " make install - to install (PREFIX=$(prefix))"
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
322 @echo ""
22020
e154d23b2fd1 maint: reduce multiple mentions of the HG-ID file name and contents
Mike Miller <mtmiller@octave.org>
parents: 22018
diff changeset
323 @echo " HG ID for this build is \"$(HG_ID_VAR)\""
21818
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
324 @echo ""
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
325
21398
7e8a410e6124 break generated file dependence on Makefile (bug #46063)
John W. Eaton <jwe@octave.org>
parents: 21390
diff changeset
326 run-octave: run-octave.in build-aux/subst-script-vals.sh
7e8a410e6124 break generated file dependence on Makefile (bug #46063)
John W. Eaton <jwe@octave.org>
parents: 21390
diff changeset
327 $(AM_V_GEN)$(call simple-filter-rule,build-aux/subst-script-vals.sh) && \
7e8a410e6124 break generated file dependence on Makefile (bug #46063)
John W. Eaton <jwe@octave.org>
parents: 21390
diff changeset
328 chmod a+rx $@
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
329
21229
a83e7a384ee0 create and install a subset of config.h in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 20412
diff changeset
330 octave-config.h: config.h build-aux/mk-octave-config-h.sh
21290
1309edb344e1 use top_srcdir, top_builddir, abs_top_srcdir or abs_top_builddir only if needed
John W. Eaton <jwe@octave.org>
parents: 21281
diff changeset
331 $(AM_V_GEN)$(SHELL) $(srcdir)/build-aux/mk-octave-config-h.sh $< > $@-t && \
21398
7e8a410e6124 break generated file dependence on Makefile (bug #46063)
John W. Eaton <jwe@octave.org>
parents: 21390
diff changeset
332 $(simple_move_if_change_rule)
21229
a83e7a384ee0 create and install a subset of config.h in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 20412
diff changeset
333
17878
0d660785098e work around GCC bug in stl_algo.h (nth_element and sort; bug #40436)
John W. Eaton <jwe@octave.org>
parents: 17763
diff changeset
334 bits/stl_algo.h: build-aux/stl_algo.h-fixed
19792
4f6ae6b94abe make --enable-silent-rules configure option more useful
John W. Eaton <jwe@octave.org>
parents: 19697
diff changeset
335 $(AM_V_GEN)$(MKDIR_P) bits && \
17878
0d660785098e work around GCC bug in stl_algo.h (nth_element and sort; bug #40436)
John W. Eaton <jwe@octave.org>
parents: 17763
diff changeset
336 $(INSTALL_HEADER) $< $@
0d660785098e work around GCC bug in stl_algo.h (nth_element and sort; bug #40436)
John W. Eaton <jwe@octave.org>
parents: 17763
diff changeset
337
21413
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
338 config-vars: $(GEN_CONFIG_SHELL)
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
339 $(AM_V_GEN)rm -f $@-t $@ && \
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
340 $(SED) -n 's/ *"$$/"/; s/^\([A-Za-z_][A-Za-z0-9_]*\)=" *\(.*\)" *$$/\1 \2/p' $^ | sort -u > $@-t && \
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
341 mv $@-t $@
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
342
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
343 ## We always have to create this file because values for Make variables
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
344 ## may be passed on the command line.
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
345
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
346 make-vars:
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
347 $(file >$@-t) $(foreach v, $(ALL_SUBST_VARS), $(file >>$@-t,$(v) $(value $(v))))
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
348 $(AM_V_GEN)mv $@-t $@
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
349 .PHONY: make-vars
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
350
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
351 check-subst-vars: build-aux/check-subst-vars.sh make-vars config-vars
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
352 @$(SHELL) -f build-aux/check-subst-vars.sh make-vars config-vars
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
353 .PHONY: check-subst-vars
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
354
17880
51a3b3fa981f try to ensure that stray bits/stl_algo.h file is not in build tree
John W. Eaton <jwe@octave.org>
parents: 17878
diff changeset
355 ## If we aren't trying to fix stl_algo.h, then try to ensure that
51a3b3fa981f try to ensure that stray bits/stl_algo.h file is not in build tree
John W. Eaton <jwe@octave.org>
parents: 17878
diff changeset
356 ## there isn't a stray copy sitting in the build tree.
51a3b3fa981f try to ensure that stray bits/stl_algo.h file is not in build tree
John W. Eaton <jwe@octave.org>
parents: 17878
diff changeset
357
51a3b3fa981f try to ensure that stray bits/stl_algo.h file is not in build tree
John W. Eaton <jwe@octave.org>
parents: 17878
diff changeset
358 nonexistent-file:
20412
110c7a54586b build: Silence rule about removing bits/stl_algo.h using AM_V_at.
Rik <rik@octave.org>
parents: 20411
diff changeset
359 $(AM_V_at)rm -f bits/stl_algo.h
17880
51a3b3fa981f try to ensure that stray bits/stl_algo.h file is not in build tree
John W. Eaton <jwe@octave.org>
parents: 17878
diff changeset
360 .PHONY: nonexistent-file
51a3b3fa981f try to ensure that stray bits/stl_algo.h file is not in build tree
John W. Eaton <jwe@octave.org>
parents: 17878
diff changeset
361
12733
b67c2d580a25 maint: clean up top-level directory
John W. Eaton <jwe@octave.org>
parents: 12725
diff changeset
362 .gdbinit: etc/gdbinit
24844
fc21ac9cd998 only skip .gdbinit install if files differ (bug #53241)
John W. Eaton <jwe@octave.org>
parents: 24534
diff changeset
363 $(AM_V_GEN)$(gdbinit-install-rule)
10360
9126d71f53aa add gdbinit file to sources
John W. Eaton <jwe@octave.org>
parents: 10092
diff changeset
364
19792
4f6ae6b94abe make --enable-silent-rules configure option more useful
John W. Eaton <jwe@octave.org>
parents: 19697
diff changeset
365 define changelog-from-hg-log
20359
9df3feddcf22 only generate ChangeLog if building from hg archive
John W. Eaton <jwe@octave.org>
parents: 20351
diff changeset
366 rm -f $@-t && \
20384
107bb934dc19 build: Always generate ChangeLog if missing, and write to build directory
Mike Miller <mtmiller@octave.org>
parents: 20366
diff changeset
367 if [ -d $(srcdir)/.hg ]; then \
107bb934dc19 build: Always generate ChangeLog if missing, and write to build directory
Mike Miller <mtmiller@octave.org>
parents: 20366
diff changeset
368 ( cd $(srcdir); \
25801
95eb72d50fb0 build: ensure ChangeLog is built from hg log without --graph
Mike Miller <mtmiller@octave.org>
parents: 25648
diff changeset
369 hg log --no-graph --style=build-aux/changelog.tmpl --prune=b0e60ad4ae26 --only-branch=`hg branch`; \
20359
9df3feddcf22 only generate ChangeLog if building from hg archive
John W. Eaton <jwe@octave.org>
parents: 20351
diff changeset
370 echo ""; \
9df3feddcf22 only generate ChangeLog if building from hg archive
John W. Eaton <jwe@octave.org>
parents: 20351
diff changeset
371 echo "See the files in the directory etc/OLD-ChangeLogs for changes before 2011-04-19"; \
9df3feddcf22 only generate ChangeLog if building from hg archive
John W. Eaton <jwe@octave.org>
parents: 20351
diff changeset
372 ) > $@-t && \
9df3feddcf22 only generate ChangeLog if building from hg archive
John W. Eaton <jwe@octave.org>
parents: 20351
diff changeset
373 mv $@-t $@; \
20384
107bb934dc19 build: Always generate ChangeLog if missing, and write to build directory
Mike Miller <mtmiller@octave.org>
parents: 20366
diff changeset
374 elif [ ! -f $@ ] && [ ! -f $(srcdir)/$@ ]; then \
107bb934dc19 build: Always generate ChangeLog if missing, and write to build directory
Mike Miller <mtmiller@octave.org>
parents: 20366
diff changeset
375 echo "Empty ChangeLog generated because no hg log available" > $@-t && \
107bb934dc19 build: Always generate ChangeLog if missing, and write to build directory
Mike Miller <mtmiller@octave.org>
parents: 20366
diff changeset
376 mv $@-t $@; \
20359
9df3feddcf22 only generate ChangeLog if building from hg archive
John W. Eaton <jwe@octave.org>
parents: 20351
diff changeset
377 fi
19792
4f6ae6b94abe make --enable-silent-rules configure option more useful
John W. Eaton <jwe@octave.org>
parents: 19697
diff changeset
378 endef
4f6ae6b94abe make --enable-silent-rules configure option more useful
John W. Eaton <jwe@octave.org>
parents: 19697
diff changeset
379
12624
83606de30dae maint: generate ChangeLog automatically
John W. Eaton <jwe@octave.org>
parents: 12471
diff changeset
380 ChangeLog:
19792
4f6ae6b94abe make --enable-silent-rules configure option more useful
John W. Eaton <jwe@octave.org>
parents: 19697
diff changeset
381 $(AM_V_GEN)$(changelog-from-hg-log)
12624
83606de30dae maint: generate ChangeLog automatically
John W. Eaton <jwe@octave.org>
parents: 12471
diff changeset
382 .PHONY: ChangeLog
83606de30dae maint: generate ChangeLog automatically
John W. Eaton <jwe@octave.org>
parents: 12471
diff changeset
383
21976
f6e119d0bdfd avoid tagging HG-ID as .PHONY
John W. Eaton <jwe@octave.org>
parents: 21975
diff changeset
384 ## The mk-hg-id.sh script will be executed each time Make runs. It will
22020
e154d23b2fd1 maint: reduce multiple mentions of the HG-ID file name and contents
Mike Miller <mtmiller@octave.org>
parents: 22018
diff changeset
385 ## update the HG-ID file in the build tree if it is out of date. As a side
e154d23b2fd1 maint: reduce multiple mentions of the HG-ID file name and contents
Mike Miller <mtmiller@octave.org>
parents: 22018
diff changeset
386 ## effect, HG_ID_VAR is assigned the contents of the file.
21976
f6e119d0bdfd avoid tagging HG-ID as .PHONY
John W. Eaton <jwe@octave.org>
parents: 21975
diff changeset
387
21818
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
388 if AMCOND_ENABLE_HG_ID
21976
f6e119d0bdfd avoid tagging HG-ID as .PHONY
John W. Eaton <jwe@octave.org>
parents: 21975
diff changeset
389 HG_ID_VAR := \
f6e119d0bdfd avoid tagging HG-ID as .PHONY
John W. Eaton <jwe@octave.org>
parents: 21975
diff changeset
390 $(shell $(SHELL) $(top_srcdir)/build-aux/mk-hg-id.sh "$(srcdir)")
21818
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
391 else
21976
f6e119d0bdfd avoid tagging HG-ID as .PHONY
John W. Eaton <jwe@octave.org>
parents: 21975
diff changeset
392 HG_ID_VAR := \
f6e119d0bdfd avoid tagging HG-ID as .PHONY
John W. Eaton <jwe@octave.org>
parents: 21975
diff changeset
393 $(shell $(SHELL) $(top_srcdir)/build-aux/mk-hg-id.sh "$(srcdir)" --disable)
21815
418b6066e544 new maintainer-mode for build (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21716
diff changeset
394 endif
21598
cf552443c104 revise method of handling hg id for build info
John W. Eaton <jwe@octave.org>
parents: 21597
diff changeset
395
20293
d6879b59f46f eliminate recursive make invocation in examples directory tree
John W. Eaton <jwe@octave.org>
parents: 19841
diff changeset
396 octetc_DATA += \
18478
3c1a28978599 install config.log in $octetc directory
John W. Eaton <jwe@octave.org>
parents: 18090
diff changeset
397 CITATION \
19841
07b970d6cdfe Only install config.log in $octetc if user requested (bug #43087)
Mike Miller <mtmiller@ieee.org>
parents: 19815
diff changeset
398 NEWS
07b970d6cdfe Only install config.log in $octetc if user requested (bug #43087)
Mike Miller <mtmiller@ieee.org>
parents: 19815
diff changeset
399
07b970d6cdfe Only install config.log in $octetc if user requested (bug #43087)
Mike Miller <mtmiller@ieee.org>
parents: 19815
diff changeset
400 if AMCOND_INSTALL_BUILD_LOGS
07b970d6cdfe Only install config.log in $octetc if user requested (bug #43087)
Mike Miller <mtmiller@ieee.org>
parents: 19815
diff changeset
401 octetc_DATA += config.log
07b970d6cdfe Only install config.log in $octetc if user requested (bug #43087)
Mike Miller <mtmiller@ieee.org>
parents: 19815
diff changeset
402 endif
9968
f3bef90b7278 Remove various install-local targets in favor of using automake syntax for installation
Rik <rdrider0-list@yahoo.com>
parents: 9946
diff changeset
403
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
404 DIRS_TO_MAKE = \
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
405 $(localfcnfiledir) \
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
406 $(localapifcnfiledir) \
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
407 $(localverfcnfiledir) \
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
408 $(localoctfiledir) \
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
409 $(localapioctfiledir) \
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
410 $(localveroctfiledir) \
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
411 $(localarchlibdir) \
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
412 $(localapiarchlibdir) \
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
413 $(localverarchlibdir)
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
414
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
415 installdirs-local:
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
416 $(MKDIR_P) $(addprefix $(DESTDIR), $(DIRS_TO_MAKE))
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
417
24889
92aaa85c06b8 build: use normal automake syntax for installing Qt help (bug #53006)
Mike Miller <mtmiller@octave.org>
parents: 24875
diff changeset
418 install-data-local: installdirs-local
20328
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
419
25897
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
420 oct-file-pkg-add: $(OCT_FILE_PKG_ADD_FILES)
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
421 cat $(OCT_FILE_PKG_ADD_FILES) > $@-t \
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
422 && mv $@-t $@
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
423
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
424 install-oct: oct-file-pkg-add
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
425 $(MKDIR_P) $(DESTDIR)$(octfiledir)
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
426 if [ -n "`cat $(OCT_FILE_PKG_ADD_FILES)`" ]; then \
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
427 $(INSTALL_DATA) oct-file-pkg-add $(DESTDIR)$(octfiledir)/PKG_ADD; \
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
428 fi
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
429 cd $(DESTDIR)$(octlibdir) && \
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
430 for ltlib in $(OCT_FILE_LIBS); do \
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
431 f=`echo $$ltlib | $(SED) 's,.*/,,'`; \
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
432 dl=`$(SED) -n -e "s/dlname='\([^']*\)'/\1/p" < $$f`; \
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
433 if [ -n "$$dl" ]; then \
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
434 $(INSTALL_PROGRAM) $$dl $(DESTDIR)$(octfiledir)/`echo $$f | $(SED) 's,^lib,,; s,\.la$$,.oct,'`; \
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
435 else \
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
436 echo "error: dlname is empty in $$ltlib!"; \
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
437 exit 1; \
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
438 fi; \
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
439 lnames=`$(SED) -n -e "s/library_names='\([^']*\)'/\1/p" < $$f`; \
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
440 if [ -n "$$lnames" ]; then \
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
441 rm -f $$f $$lnames $$dl; \
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
442 fi \
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
443 done
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
444 .PHONY: install-oct
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
445
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
446 uninstall-oct:
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
447 for f in $(notdir $(OCT_FILES)); do \
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
448 rm -f $(DESTDIR)$(octfiledir)/$$f; \
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
449 done
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
450 rm -f $(DESTDIR)$(octfiledir)/PKG_ADD
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
451 .PHONY: uninstall-oct
440eb4707570 reorganize rules for building .oct files
John W. Eaton <jwe@octave.org>
parents: 25801
diff changeset
452
20351
d59d9f4ec290 don't clean doc/doxyhtml/README
John W. Eaton <jwe@octave.org>
parents: 20345
diff changeset
453 clean-local: doc-clean
d59d9f4ec290 don't clean doc/doxyhtml/README
John W. Eaton <jwe@octave.org>
parents: 20345
diff changeset
454
20366
9b44691a3520 provide per-directory clean targets
John W. Eaton <jwe@octave.org>
parents: 20359
diff changeset
455 distclean-local:
22018
a49ed7b7b66f build: delete HG-ID on 'make distclean' and 'make maintainer-clean'
Mike Miller <mtmiller@octave.org>
parents: 22017
diff changeset
456 if [ "x${srcdir}" != "x." ]; then rm -f HG-ID; fi
20351
d59d9f4ec290 don't clean doc/doxyhtml/README
John W. Eaton <jwe@octave.org>
parents: 20345
diff changeset
457
d59d9f4ec290 don't clean doc/doxyhtml/README
John W. Eaton <jwe@octave.org>
parents: 20345
diff changeset
458 maintainer-clean-local: doc-maintainer-clean
d59d9f4ec290 don't clean doc/doxyhtml/README
John W. Eaton <jwe@octave.org>
parents: 20345
diff changeset
459
22042
21c12b837089 build: don't delete distributed docs on 'make clean' or 'make distclean' (bug #45646)
Mike Miller <mtmiller@octave.org>
parents: 22024
diff changeset
460 ## The 'clean-aminfo' target is defined by Automake >= 1.11. We want to
21c12b837089 build: don't delete distributed docs on 'make clean' or 'make distclean' (bug #45646)
Mike Miller <mtmiller@octave.org>
parents: 22024
diff changeset
461 ## distribute all Texinfo docs with the source distribution and not delete
21c12b837089 build: don't delete distributed docs on 'make clean' or 'make distclean' (bug #45646)
Mike Miller <mtmiller@octave.org>
parents: 22024
diff changeset
462 ## them on 'clean', so we override this target to do nothing by default.
21c12b837089 build: don't delete distributed docs on 'make clean' or 'make distclean' (bug #45646)
Mike Miller <mtmiller@octave.org>
parents: 22024
diff changeset
463
21c12b837089 build: don't delete distributed docs on 'make clean' or 'make distclean' (bug #45646)
Mike Miller <mtmiller@octave.org>
parents: 22024
diff changeset
464 clean-aminfo:
21c12b837089 build: don't delete distributed docs on 'make clean' or 'make distclean' (bug #45646)
Mike Miller <mtmiller@octave.org>
parents: 22024
diff changeset
465
21975
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
466 define move_if_change_rule
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
467 if [ -s $(1) ]; then \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
468 ${SHELL} ${top_srcdir}/build-aux/move-if-change $(1) $(2); \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
469 else \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
470 echo "$(1) is empty!" 1>&2; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
471 rm -f $(1); \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
472 exit 1; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
473 fi
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
474 endef
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
475
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
476 define simple_move_if_change_rule
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
477 $(call move_if_change_rule,$@-t,$@)
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
478 endef
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
479
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
480 define cp_update_rule
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
481 if [ "x${srcdir}" != "x." ] && [ -f ${srcdir}/$@ ] && [ ! -f $@ ]; then \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
482 cp ${srcdir}/$@ $@; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
483 touch -r ${srcdir}/$@ $@; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
484 fi
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
485 endef
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
486
23427
48fd5980e29a Refactor and normalize generated build info source files
Mike Miller <mtmiller@octave.org>
parents: 23220
diff changeset
487 define build-info-commands
48fd5980e29a Refactor and normalize generated build info source files
Mike Miller <mtmiller@octave.org>
parents: 23220
diff changeset
488 rm -f $@-t && \
48fd5980e29a Refactor and normalize generated build info source files
Mike Miller <mtmiller@octave.org>
parents: 23220
diff changeset
489 $(SED) \
48fd5980e29a Refactor and normalize generated build info source files
Mike Miller <mtmiller@octave.org>
parents: 23220
diff changeset
490 -e "s|%NO_EDIT_WARNING%|DO NOT EDIT! Generated automatically by Makefile|" \
48fd5980e29a Refactor and normalize generated build info source files
Mike Miller <mtmiller@octave.org>
parents: 23220
diff changeset
491 -e "s|%OCTAVE_HG_ID%|$(HG_ID_VAR)|" $< > $@-t && \
48fd5980e29a Refactor and normalize generated build info source files
Mike Miller <mtmiller@octave.org>
parents: 23220
diff changeset
492 $(simple_move_if_change_rule)
48fd5980e29a Refactor and normalize generated build info source files
Mike Miller <mtmiller@octave.org>
parents: 23220
diff changeset
493 endef
48fd5980e29a Refactor and normalize generated build info source files
Mike Miller <mtmiller@octave.org>
parents: 23220
diff changeset
494
21975
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
495 define simple-filter-rule
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
496 rm -f $@-t $@ && \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
497 ${SHELL} $(1) < $< > $@-t && \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
498 mv $@-t $@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
499 endef
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
500
24844
fc21ac9cd998 only skip .gdbinit install if files differ (bug #53241)
John W. Eaton <jwe@octave.org>
parents: 24534
diff changeset
501 define gdbinit-install-rule
fc21ac9cd998 only skip .gdbinit install if files differ (bug #53241)
John W. Eaton <jwe@octave.org>
parents: 24534
diff changeset
502 if [ -f $@ ] && ! cmp -s $< $@; then \
21975
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
503 echo "refusing to overwrite $@ with newer version from $<" 1>&2; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
504 else \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
505 cp $< $@; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
506 fi
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
507 endef
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
508
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
509 define test-file-commands
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
510 rm -f $@-t $@ && \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
511 ( echo "## DO NOT EDIT! Generated automatically from $(<F) by Make."; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
512 $(GREP) '^%!' $< \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
513 ) > $@-t && \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
514 mv $@-t $@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
515 endef
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
516
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
517 %.cc-tst : %.cc
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
518 $(AM_V_GEN)$(test-file-commands)
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
519
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
520 %.yy-tst : %.yy
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
521 $(AM_V_GEN)$(test-file-commands)
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
522
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
523 %.ll-tst : %.ll
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
524 $(AM_V_GEN)$(test-file-commands)