annotate Makefile.am @ 25212:ec119a613e3b stable

build: require a clean hg state for make dist * Makefile.am (hg-id-dist-hook): Raise an error if the hg id shows that the working tree is not committed. (DIST_IGNORE_HG_STATE): Allow the user to override the condition.
author Mike Miller <mtmiller@octave.org>
date Wed, 11 Apr 2018 10:28:16 -0700
parents 6652d3823428
children 26070f36f1e7
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
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22125
diff changeset
46 AM_CFLAGS = ${CPICFLAG} ${XTRA_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
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22125
diff changeset
54 AM_CXXFLAGS = ${CXXPICFLAG} ${XTRA_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
20342
0e2da885a410 fix lists of files to distribute
John W. Eaton <jwe@octave.org>
parents: 20328
diff changeset
105 DOC_TARGETS =
0e2da885a410 fix lists of files to distribute
John W. Eaton <jwe@octave.org>
parents: 20328
diff changeset
106
20327
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
107 BUILT_DISTFILES =
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
108 BUILT_NODISTFILES =
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
109 EXTRA_DIST =
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
110
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
111 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
112
20327
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
113 BUILT_DISTFILES += \
20307
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
114 AUTHORS \
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
115 BUGS \
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
116 ChangeLog \
21598
cf552443c104 revise method of handling hg id for build info
John W. Eaton <jwe@octave.org>
parents: 21597
diff changeset
117 HG-ID \
20307
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
118 INSTALL.OCTAVE
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
119
20327
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
120 EXTRA_DIST += \
20385
956119b6e6d1 build: Restore AUTHORS, BUGS, and INSTALL.OCTAVE to source tarball
Mike Miller <mtmiller@octave.org>
parents: 20384
diff changeset
121 CITATION \
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
122 COPYING \
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
123 INSTALL \
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
124 NEWS \
24170
3dbd6409eeb9 Undo markdown usage for README (cset 312c00dd723a).
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents: 24169
diff changeset
125 README \
20385
956119b6e6d1 build: Restore AUTHORS, BUGS, and INSTALL.OCTAVE to source tarball
Mike Miller <mtmiller@octave.org>
parents: 20384
diff changeset
126 run-octave.in \
956119b6e6d1 build: Restore AUTHORS, BUGS, and INSTALL.OCTAVE to source tarball
Mike Miller <mtmiller@octave.org>
parents: 20384
diff changeset
127 $(BUILT_DISTFILES)
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
128
21413
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
129 AUTOCONF_SUBST_VARS = @AUTOCONF_SUBST_VARS@
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
130 ALL_SUBST_VARS = \
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
131 $(AUTOCONF_SUBST_VARS) \
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
132 abs_top_builddir \
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
133 abs_top_srcdir \
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
134 api_version \
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
135 version
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
136
20307
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
137 DIRSTAMP_FILES =
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
138
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
139 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
140
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 $(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
143 : > $@
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
144
20306
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
145 CLEANFILES =
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
146 DISTCLEANFILES =
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
147 MAINTAINERCLEANFILES =
20307
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
148 info_TEXINFOS =
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
149 BUILT_SOURCES =
20308
bacaec9b5535 eliminate recursive make invocation in test directory tree
John W. Eaton <jwe@octave.org>
parents: 20307
diff changeset
150 TEST_FILES =
20306
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
151
20345
10f67e9d1e70 keep list of built images separate from other images
John W. Eaton <jwe@octave.org>
parents: 20344
diff changeset
152 DOC_IMAGES_SRC =
10f67e9d1e70 keep list of built images separate from other images
John W. Eaton <jwe@octave.org>
parents: 20344
diff changeset
153 BUILT_DOC_IMAGES =
10f67e9d1e70 keep list of built images separate from other images
John W. Eaton <jwe@octave.org>
parents: 20344
diff changeset
154 BUILT_DOC_IMAGES_EPS =
10f67e9d1e70 keep list of built images separate from other images
John W. Eaton <jwe@octave.org>
parents: 20344
diff changeset
155 BUILT_DOC_IMAGES_PDF =
10f67e9d1e70 keep list of built images separate from other images
John W. Eaton <jwe@octave.org>
parents: 20344
diff changeset
156 BUILT_DOC_IMAGES_PNG =
10f67e9d1e70 keep list of built images separate from other images
John W. Eaton <jwe@octave.org>
parents: 20344
diff changeset
157 BUILT_DOC_IMAGES_TXT =
20328
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
158 DOC_IMAGES =
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
159 DOC_IMAGES_EPS =
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
160 DOC_IMAGES_PDF =
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
161 DOC_IMAGES_PNG =
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
162 DOC_IMAGES_TXT =
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
163
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
164 FCN_FILE_DIRS =
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
165 FCN_FILES =
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
166 GEN_FCN_FILES =
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
167 PKG_ADD_FILES =
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
168 SCRIPTS_IMAGES =
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
169 JAR_FILES =
20393
0fbe2e28ea84 build: Avoid triggering rebuild of docs when DOCSTRINGS regenerated (bug #45567)
Mike Miller <mtmiller@octave.org>
parents: 20391
diff changeset
170 DOCSTRING_FILES =
20307
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
171
20325
2d84d27dc9f0 eliminate recursive make invocation in src directory
John W. Eaton <jwe@octave.org>
parents: 20308
diff changeset
172 bin_PROGRAMS =
2d84d27dc9f0 eliminate recursive make invocation in src directory
John W. Eaton <jwe@octave.org>
parents: 20308
diff changeset
173 archlib_PROGRAMS =
2d84d27dc9f0 eliminate recursive make invocation in src directory
John W. Eaton <jwe@octave.org>
parents: 20308
diff changeset
174 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
175 nodist_noinst_HEADERS =
20325
2d84d27dc9f0 eliminate recursive make invocation in src directory
John W. Eaton <jwe@octave.org>
parents: 20308
diff changeset
176 OCTAVE_VERSION_LINKS =
2d84d27dc9f0 eliminate recursive make invocation in src directory
John W. Eaton <jwe@octave.org>
parents: 20308
diff changeset
177 OCTAVE_CROSS_TOOLS =
2d84d27dc9f0 eliminate recursive make invocation in src directory
John W. Eaton <jwe@octave.org>
parents: 20308
diff changeset
178 OCTAVE_INTERPRETER_TARGETS =
2d84d27dc9f0 eliminate recursive make invocation in src directory
John W. Eaton <jwe@octave.org>
parents: 20308
diff changeset
179
20326
8ef616eec739 eliminate recursive make invocation in libgui directory tree
John W. Eaton <jwe@octave.org>
parents: 20325
diff changeset
180 octlib_LTLIBRARIES =
8ef616eec739 eliminate recursive make invocation in libgui directory tree
John W. Eaton <jwe@octave.org>
parents: 20325
diff changeset
181 noinst_LTLIBRARIES =
8ef616eec739 eliminate recursive make invocation in libgui directory tree
John W. Eaton <jwe@octave.org>
parents: 20325
diff changeset
182
20327
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
183 octinclude_HEADERS =
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
184 nodist_octinclude_HEADERS =
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
185
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
186 DIST_SRC =
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
187
20325
2d84d27dc9f0 eliminate recursive make invocation in src directory
John W. Eaton <jwe@octave.org>
parents: 20308
diff changeset
188 ALL_LOCAL_TARGETS =
2d84d27dc9f0 eliminate recursive make invocation in src directory
John W. Eaton <jwe@octave.org>
parents: 20308
diff changeset
189
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
190 # 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
191 # 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
192 # 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
193
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
194 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
195
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
196 # 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
197 # 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
198 # 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
199 # 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
200 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
201
22014
b07c0f27dccc build: fix compilation error after 'make clean' (bug #47971)
Mike Miller <mtmiller@octave.org>
parents: 22011
diff changeset
202 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
203 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
204
20327
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
205 include liboctave/module.mk
0ce7d8303152 eliminate recursive make invocations in liboctave and libinterp directories
John W. Eaton <jwe@octave.org>
parents: 20326
diff changeset
206 include libinterp/module.mk
20326
8ef616eec739 eliminate recursive make invocation in libgui directory tree
John W. Eaton <jwe@octave.org>
parents: 20325
diff changeset
207 include libgui/module.mk
20325
2d84d27dc9f0 eliminate recursive make invocation in src directory
John W. Eaton <jwe@octave.org>
parents: 20308
diff changeset
208 include src/module.mk
20328
fa9fa6ab76f0 eliminate recursive make invocation in scripts directory tree
John W. Eaton <jwe@octave.org>
parents: 20327
diff changeset
209 include scripts/module.mk
20307
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
210 include doc/module.mk
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
211 include doc/interpreter/images.mk
20306
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
212 include etc/module.mk
20293
d6879b59f46f eliminate recursive make invocation in examples directory tree
John W. Eaton <jwe@octave.org>
parents: 19841
diff changeset
213 include examples/module.mk
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
214 include m4/module.mk
20308
bacaec9b5535 eliminate recursive make invocation in test directory tree
John W. Eaton <jwe@octave.org>
parents: 20307
diff changeset
215 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
216 include build-aux/module.mk
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
217
21818
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
218 DIST_HOOKS := \
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
219 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
220 docs-dist-hook \
23529
03c000f5e746 fix permissions on files and directories included in the distribution
Mike Miller <mtmiller@octave.org>
parents: 23427
diff changeset
221 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
222 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
223 icons-dist-hook \
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
224 scripts-dist-hook
21815
418b6066e544 new maintainer-mode for build (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21716
diff changeset
225
21818
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
226 dist-hook: $(DIST_HOOKS)
10092
02453ee20140 allow building of docs to be disabled
John W. Eaton <jwe@octave.org>
parents: 10006
diff changeset
227
20306
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
228 if AMCOND_BUILD_DOCS
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
229 docs-dist-hook:
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
230 else
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
231 docs-dist-hook:
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
232 @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
233 endif
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
234
23529
03c000f5e746 fix permissions on files and directories included in the distribution
Mike Miller <mtmiller@octave.org>
parents: 23427
diff changeset
235 ## 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
236 ## 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
237 ## 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
238 ## 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
239 ## 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
240 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
241 -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
242 -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
243 .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
244
21818
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
245 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
246 hg-id-dist-hook:
25212
ec119a613e3b build: require a clean hg state for make dist
Mike Miller <mtmiller@octave.org>
parents: 25054
diff changeset
247 @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
248 || 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
249 || { echo ; \
ec119a613e3b build: require a clean hg state for make dist
Mike Miller <mtmiller@octave.org>
parents: 25054
diff changeset
250 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
251 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
252 echo "Cannot package distribution!" ; \
ec119a613e3b build: require a clean hg state for make dist
Mike Miller <mtmiller@octave.org>
parents: 25054
diff changeset
253 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
254 else
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
255 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
256 @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
257 endif
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
258 .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
259
20306
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
260 if AMCOND_HAVE_ICON_TOOLS
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
261 icons-dist-hook:
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
262 else
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
263 icons-dist-hook:
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
264 @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
265 endif
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
266
20307
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
267 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
268 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
269 octave-config.h \
20307
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
270 run-octave \
c3c1fb44f9b5 eliminate recursive make invocations in doc directory tree
John W. Eaton <jwe@octave.org>
parents: 20306
diff changeset
271 $(DIRSTAMP_FILES)
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
272
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
273 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
274 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
275 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
276 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
277 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
278
10986
20bb05b9fb3f makefile rules for compiled auxiliary programs
John W. Eaton <jwe@octave.org>
parents: 10856
diff changeset
279 noinst_SCRIPTS = run-octave
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
280
20306
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
281 CLEANFILES += \
21413
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
282 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
283 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
284 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
285 run-octave
9943
4c681ff57bc3 Modifications to makefiles to pass distcheck test
Rik <rdrider0-list@yahoo.com>
parents: 9864
diff changeset
286
20306
47d704435aa4 eliminate recursive make invocation in etc/icons directory
John W. Eaton <jwe@octave.org>
parents: 20293
diff changeset
287 DISTCLEANFILES += \
22017
4eafa2cc599f build: clean build-aux generated shell scripts on 'make distclean'
Mike Miller <mtmiller@octave.org>
parents: 22014
diff changeset
288 $(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
289 $(GEN_CONFIG_INC) \
22017
4eafa2cc599f build: clean build-aux generated shell scripts on 'make distclean'
Mike Miller <mtmiller@octave.org>
parents: 22014
diff changeset
290 $(GEN_CONFIG_SHELL) \
4eafa2cc599f build: clean build-aux generated shell scripts on 'make distclean'
Mike Miller <mtmiller@octave.org>
parents: 22014
diff changeset
291 .gdbinit
12740
0fe2eb81e6d0 maint: don't remove distributed files with make distclean target
John W. Eaton <jwe@octave.org>
parents: 12737
diff changeset
292
20391
39721c09691b build: Delete more generated files on maintainer-clean
Mike Miller <mtmiller@octave.org>
parents: 20385
diff changeset
293 MAINTAINERCLEANFILES += \
22018
a49ed7b7b66f build: delete HG-ID on 'make distclean' and 'make maintainer-clean'
Mike Miller <mtmiller@octave.org>
parents: 22017
diff changeset
294 $(BUILT_DISTFILES) \
20410
517f5a006279 build: Don't delete ChangeLog with distclean target (bug #45646).
Rik <rik@octave.org>
parents: 20393
diff changeset
295 ChangeLog \
22018
a49ed7b7b66f build: delete HG-ID on 'make distclean' and 'make maintainer-clean'
Mike Miller <mtmiller@octave.org>
parents: 22017
diff changeset
296 HG-ID
20391
39721c09691b build: Delete more generated files on maintainer-clean
Mike Miller <mtmiller@octave.org>
parents: 20385
diff changeset
297
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
298 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
299
22024
659731a4563f build: delete generated files, keep distributed files on clean and distclean (bug #45646)
Mike Miller <mtmiller@octave.org>
parents: 22020
diff changeset
300 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
301 octave-config.h
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
302
21382
eb7287db3da9 create .oct and other files in build tree (bug #46260)
John W. Eaton <jwe@octave.org>
parents: 21290
diff changeset
303 ALL_LOCAL_TARGETS += \
eb7287db3da9 create .oct and other files in build tree (bug #46260)
John W. Eaton <jwe@octave.org>
parents: 21290
diff changeset
304 $(OCTAVE_INTERPRETER_TARGETS) \
eb7287db3da9 create .oct and other files in build tree (bug #46260)
John W. Eaton <jwe@octave.org>
parents: 21290
diff changeset
305 .gdbinit \
eb7287db3da9 create .oct and other files in build tree (bug #46260)
John W. Eaton <jwe@octave.org>
parents: 21290
diff changeset
306 $(DOC_TARGETS)
eb7287db3da9 create .oct and other files in build tree (bug #46260)
John W. Eaton <jwe@octave.org>
parents: 21290
diff changeset
307
eb7287db3da9 create .oct and other files in build tree (bug #46260)
John W. Eaton <jwe@octave.org>
parents: 21290
diff changeset
308 all-local: $(ALL_LOCAL_TARGETS)
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
309 @echo ""
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
310 @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
311 @echo ""
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
312 @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
313 @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
314 @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
315 @echo ""
22020
e154d23b2fd1 maint: reduce multiple mentions of the HG-ID file name and contents
Mike Miller <mtmiller@octave.org>
parents: 22018
diff changeset
316 @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
317 @echo ""
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
318
21398
7e8a410e6124 break generated file dependence on Makefile (bug #46063)
John W. Eaton <jwe@octave.org>
parents: 21390
diff changeset
319 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
320 $(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
321 chmod a+rx $@
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
322
21229
a83e7a384ee0 create and install a subset of config.h in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 20412
diff changeset
323 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
324 $(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
325 $(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
326
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
327 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
328 $(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
329 $(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
330
21413
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
331 config-vars: $(GEN_CONFIG_SHELL)
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
332 $(AM_V_GEN)rm -f $@-t $@ && \
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
333 $(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
334 mv $@-t $@
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
335
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
336 ## 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
337 ## 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
338
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
339 make-vars:
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
340 $(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
341 $(AM_V_GEN)mv $@-t $@
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
342 .PHONY: make-vars
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
343
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
344 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
345 @$(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
346 .PHONY: check-subst-vars
3fb2bdea47a5 check substituted variables against current make variables
John W. Eaton <jwe@octave.org>
parents: 21412
diff changeset
347
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
348 ## 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
349 ## 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
350
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
351 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
352 $(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
353 .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
354
12733
b67c2d580a25 maint: clean up top-level directory
John W. Eaton <jwe@octave.org>
parents: 12725
diff changeset
355 .gdbinit: etc/gdbinit
24844
fc21ac9cd998 only skip .gdbinit install if files differ (bug #53241)
John W. Eaton <jwe@octave.org>
parents: 24534
diff changeset
356 $(AM_V_GEN)$(gdbinit-install-rule)
10360
9126d71f53aa add gdbinit file to sources
John W. Eaton <jwe@octave.org>
parents: 10092
diff changeset
357
19792
4f6ae6b94abe make --enable-silent-rules configure option more useful
John W. Eaton <jwe@octave.org>
parents: 19697
diff changeset
358 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
359 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
360 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
361 ( cd $(srcdir); \
107bb934dc19 build: Always generate ChangeLog if missing, and write to build directory
Mike Miller <mtmiller@octave.org>
parents: 20366
diff changeset
362 hg log --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
363 echo ""; \
9df3feddcf22 only generate ChangeLog if building from hg archive
John W. Eaton <jwe@octave.org>
parents: 20351
diff changeset
364 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
365 ) > $@-t && \
9df3feddcf22 only generate ChangeLog if building from hg archive
John W. Eaton <jwe@octave.org>
parents: 20351
diff changeset
366 mv $@-t $@; \
20384
107bb934dc19 build: Always generate ChangeLog if missing, and write to build directory
Mike Miller <mtmiller@octave.org>
parents: 20366
diff changeset
367 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
368 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
369 mv $@-t $@; \
20359
9df3feddcf22 only generate ChangeLog if building from hg archive
John W. Eaton <jwe@octave.org>
parents: 20351
diff changeset
370 fi
19792
4f6ae6b94abe make --enable-silent-rules configure option more useful
John W. Eaton <jwe@octave.org>
parents: 19697
diff changeset
371 endef
4f6ae6b94abe make --enable-silent-rules configure option more useful
John W. Eaton <jwe@octave.org>
parents: 19697
diff changeset
372
12624
83606de30dae maint: generate ChangeLog automatically
John W. Eaton <jwe@octave.org>
parents: 12471
diff changeset
373 ChangeLog:
19792
4f6ae6b94abe make --enable-silent-rules configure option more useful
John W. Eaton <jwe@octave.org>
parents: 19697
diff changeset
374 $(AM_V_GEN)$(changelog-from-hg-log)
12624
83606de30dae maint: generate ChangeLog automatically
John W. Eaton <jwe@octave.org>
parents: 12471
diff changeset
375 .PHONY: ChangeLog
83606de30dae maint: generate ChangeLog automatically
John W. Eaton <jwe@octave.org>
parents: 12471
diff changeset
376
21976
f6e119d0bdfd avoid tagging HG-ID as .PHONY
John W. Eaton <jwe@octave.org>
parents: 21975
diff changeset
377 ## 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
378 ## 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
379 ## 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
380
21818
7b0436d0f5be rename maintainer-mode configure option to hd-id (bug #48101)
John W. Eaton <jwe@octave.org>
parents: 21815
diff changeset
381 if AMCOND_ENABLE_HG_ID
21976
f6e119d0bdfd avoid tagging HG-ID as .PHONY
John W. Eaton <jwe@octave.org>
parents: 21975
diff changeset
382 HG_ID_VAR := \
f6e119d0bdfd avoid tagging HG-ID as .PHONY
John W. Eaton <jwe@octave.org>
parents: 21975
diff changeset
383 $(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
384 else
21976
f6e119d0bdfd avoid tagging HG-ID as .PHONY
John W. Eaton <jwe@octave.org>
parents: 21975
diff changeset
385 HG_ID_VAR := \
f6e119d0bdfd avoid tagging HG-ID as .PHONY
John W. Eaton <jwe@octave.org>
parents: 21975
diff changeset
386 $(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
387 endif
21598
cf552443c104 revise method of handling hg id for build info
John W. Eaton <jwe@octave.org>
parents: 21597
diff changeset
388
20293
d6879b59f46f eliminate recursive make invocation in examples directory tree
John W. Eaton <jwe@octave.org>
parents: 19841
diff changeset
389 octetc_DATA += \
18478
3c1a28978599 install config.log in $octetc directory
John W. Eaton <jwe@octave.org>
parents: 18090
diff changeset
390 CITATION \
19841
07b970d6cdfe Only install config.log in $octetc if user requested (bug #43087)
Mike Miller <mtmiller@ieee.org>
parents: 19815
diff changeset
391 NEWS
07b970d6cdfe Only install config.log in $octetc if user requested (bug #43087)
Mike Miller <mtmiller@ieee.org>
parents: 19815
diff changeset
392
07b970d6cdfe Only install config.log in $octetc if user requested (bug #43087)
Mike Miller <mtmiller@ieee.org>
parents: 19815
diff changeset
393 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
394 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
395 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
396
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
397 DIRS_TO_MAKE = \
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
398 $(localfcnfiledir) \
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
399 $(localapifcnfiledir) \
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
400 $(localverfcnfiledir) \
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
401 $(localoctfiledir) \
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
402 $(localapioctfiledir) \
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
403 $(localveroctfiledir) \
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
404 $(localarchlibdir) \
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
405 $(localapiarchlibdir) \
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
406 $(localverarchlibdir)
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
407
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
408 installdirs-local:
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents:
diff changeset
409 $(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
410
24889
92aaa85c06b8 build: use normal automake syntax for installing Qt help (bug #53006)
Mike Miller <mtmiller@octave.org>
parents: 24875
diff changeset
411 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
412
20351
d59d9f4ec290 don't clean doc/doxyhtml/README
John W. Eaton <jwe@octave.org>
parents: 20345
diff changeset
413 clean-local: doc-clean
d59d9f4ec290 don't clean doc/doxyhtml/README
John W. Eaton <jwe@octave.org>
parents: 20345
diff changeset
414
20366
9b44691a3520 provide per-directory clean targets
John W. Eaton <jwe@octave.org>
parents: 20359
diff changeset
415 distclean-local:
22018
a49ed7b7b66f build: delete HG-ID on 'make distclean' and 'make maintainer-clean'
Mike Miller <mtmiller@octave.org>
parents: 22017
diff changeset
416 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
417
d59d9f4ec290 don't clean doc/doxyhtml/README
John W. Eaton <jwe@octave.org>
parents: 20345
diff changeset
418 maintainer-clean-local: doc-maintainer-clean
d59d9f4ec290 don't clean doc/doxyhtml/README
John W. Eaton <jwe@octave.org>
parents: 20345
diff changeset
419
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
420 ## 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
421 ## 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
422 ## 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
423
21c12b837089 build: don't delete distributed docs on 'make clean' or 'make distclean' (bug #45646)
Mike Miller <mtmiller@octave.org>
parents: 22024
diff changeset
424 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
425
21975
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
426 define move_if_change_rule
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
427 if [ -s $(1) ]; then \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
428 ${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
429 else \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
430 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
431 rm -f $(1); \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
432 exit 1; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
433 fi
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
434 endef
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
435
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
436 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
437 $(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
438 endef
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
439
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
440 define cp_update_rule
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
441 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
442 cp ${srcdir}/$@ $@; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
443 touch -r ${srcdir}/$@ $@; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
444 fi
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
445 endef
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
446
23427
48fd5980e29a Refactor and normalize generated build info source files
Mike Miller <mtmiller@octave.org>
parents: 23220
diff changeset
447 define build-info-commands
48fd5980e29a Refactor and normalize generated build info source files
Mike Miller <mtmiller@octave.org>
parents: 23220
diff changeset
448 rm -f $@-t && \
48fd5980e29a Refactor and normalize generated build info source files
Mike Miller <mtmiller@octave.org>
parents: 23220
diff changeset
449 $(SED) \
48fd5980e29a Refactor and normalize generated build info source files
Mike Miller <mtmiller@octave.org>
parents: 23220
diff changeset
450 -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
451 -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
452 $(simple_move_if_change_rule)
48fd5980e29a Refactor and normalize generated build info source files
Mike Miller <mtmiller@octave.org>
parents: 23220
diff changeset
453 endef
48fd5980e29a Refactor and normalize generated build info source files
Mike Miller <mtmiller@octave.org>
parents: 23220
diff changeset
454
21975
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
455 define simple-filter-rule
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
456 rm -f $@-t $@ && \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
457 ${SHELL} $(1) < $< > $@-t && \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
458 mv $@-t $@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
459 endef
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
460
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
461 define subst-bison-api-decls
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
462 case "${BISON_API_PREFIX_DECL_STYLE}" in \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
463 *api*) \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
464 case "${BISON_API_PREFIX_DECL_STYLE}" in \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
465 *brace*) \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
466 api_prefix_decl='%define api.prefix {$(1)}'; ;; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
467 *) \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
468 api_prefix_decl='%define api.prefix "$(1)"'; ;; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
469 esac; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
470 ;; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
471 *name*) \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
472 case "${BISON_API_PREFIX_DECL_STYLE}" in \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
473 *brace*) \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
474 api_prefix_decl='%name-prefix {$(1)}'; ;; \
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 api_prefix_decl='%name-prefix="$(1)"'; ;; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
477 esac; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
478 ;; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
479 esac; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
480 case "${BISON_PUSH_PULL_DECL_STYLE}" in \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
481 *quote*) quote='"' ;; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
482 *) quote="" ;; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
483 esac; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
484 case "${BISON_PUSH_PULL_DECL_STYLE}" in \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
485 *dash*) push_pull_decl="%define api.push-pull $${quote}both$${quote}"; ;; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
486 *underscore*) push_pull_decl="%define api.push_pull $${quote}both$${quote}"; ;; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
487 esac; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
488 ${SED} -e "s/%PUSH_PULL_DECL%/$$push_pull_decl/" \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
489 -e "s/%API_PREFIX_DECL%/$$api_prefix_decl/" $< > $@-t && \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
490 mv $@-t $@
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
491 endef
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
492
24844
fc21ac9cd998 only skip .gdbinit install if files differ (bug #53241)
John W. Eaton <jwe@octave.org>
parents: 24534
diff changeset
493 define gdbinit-install-rule
fc21ac9cd998 only skip .gdbinit install if files differ (bug #53241)
John W. Eaton <jwe@octave.org>
parents: 24534
diff changeset
494 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
495 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
496 else \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
497 cp $< $@; \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
498 fi
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
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
501 define test-file-commands
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
502 rm -f $@-t $@ && \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
503 ( 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
504 $(GREP) '^%!' $< \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
505 ) > $@-t && \
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
506 mv $@-t $@
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 %.cc-tst : %.cc
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
510 $(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
511
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
512 %.yy-tst : %.yy
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
513 $(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
514
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
515 %.ll-tst : %.ll
562eb526d0e9 merge build-aux/common.mk with Makefile.am
John W. Eaton <jwe@octave.org>
parents: 21964
diff changeset
516 $(AM_V_GEN)$(test-file-commands)