2681
|
1 # Makefile for octave's src directory |
|
2 # |
7017
|
3 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 2000, 2001, 2003, 2004, |
|
4 # 2005, 2006, 2007 John W. Eaton |
|
5 # |
7016
|
6 # This file is part of Octave. |
|
7 # |
|
8 # Octave is free software; you can redistribute it and/or modify it |
|
9 # under the terms of the GNU General Public License as published by the |
|
10 # Free Software Foundation; either version 3 of the License, or (at |
|
11 # your option) any later version. |
|
12 # |
|
13 # Octave is distributed in the hope that it will be useful, but WITHOUT |
|
14 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
|
15 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
|
16 # for more details. |
|
17 # |
|
18 # You should have received a copy of the GNU General Public License |
|
19 # along with Octave; see the file COPYING. If not, see |
|
20 # <http://www.gnu.org/licenses/>. |
2681
|
21 |
3845
|
22 TARGETS = octave-bug octave-config mkoctfile libcruft liboctave \ |
4378
|
23 dlfcn readline src scripts doc check octave.info \ |
3845
|
24 INSTALL.OCTAVE BUGS install install-strip uninstall \ |
5776
|
25 tags TAGS dist conf-dist snapshot snapshot-version \ |
|
26 .gdbinit run-octave |
2681
|
27 |
|
28 NO_DEP_TARGETS = clean mostlyclean distclean maintainer-clean |
|
29 |
|
30 all: header-msg config-check |
|
31 $(MAKE) -f octMakefile all |
|
32 |
|
33 $(TARGETS): FORCE |
|
34 $(MAKE) -f octMakefile $@ |
|
35 |
|
36 $(NO_DEP_TARGETS): FORCE |
|
37 $(MAKE) -f octMakefile omit_deps=true $@ |
|
38 |
|
39 # Maybe this message will prevent people from asking why the |
|
40 # Makefiles don't work for them. Maybe not. |
|
41 |
|
42 header-msg: FORCE |
|
43 @echo "" |
3148
|
44 @echo "***********************************************************" |
3728
|
45 @echo "*" |
|
46 @echo "* To compile Octave, you will need a recent versions of" |
|
47 @echo "* the following software:" |
|
48 @echo "*" |
4309
|
49 @echo "* g++ (3.2.x or a more recent version)" |
3728
|
50 @echo "*" |
3731
|
51 @echo "* flex (2.5.4 or a more recent version) -- required if" |
|
52 @echo "* you need to recreate lex.cc from lex.l" |
3728
|
53 @echo "*" |
4756
|
54 @echo "* bison (1.31 or a more recent version) -- required if" |
3731
|
55 @echo "* you need to recreate parse.cc from parse.y" |
3728
|
56 @echo "*" |
5094
|
57 @echo "* gperf (3.0.1 or a more recent version) -- required if" |
3731
|
58 @echo "* you need to recreate oct-gperf.h from octave.gperf" |
3728
|
59 @echo "*" |
|
60 @echo "* Now would be a good time to read INSTALL.OCTAVE if" |
|
61 @echo "* you have not done so already." |
|
62 @echo "*" |
3148
|
63 @echo "***********************************************************" |
2681
|
64 @echo "" |
|
65 |
|
66 help: header-msg |
|
67 @echo "" |
|
68 @echo "For more information, please read the files INSTALL," |
|
69 @echo "INSTALL.OCTAVE, and any other system-specific README" |
|
70 @echo "files that apply (e.g., README.Linux)." |
|
71 @echo "" |
|
72 @echo "The following targets are available:" |
|
73 @echo "" |
|
74 @echo " all build everything" |
|
75 @echo " check run self tests" |
|
76 @echo " install install files" |
|
77 @echo " install-strip same as install but strip binaries" |
|
78 @echo " uninstall delete installed files" |
|
79 @echo "" |
|
80 @echo " dist create a source distribution" |
|
81 @echo " conf-dist create a config files distribution" |
|
82 @echo "" |
|
83 @echo " clean remove files created by make all" |
|
84 @echo " mostlyclean remove most files created by make all" |
|
85 @echo " distclean remove all files not in distribution" |
|
86 @echo " maintainer-clean clean up everything" |
|
87 @echo "" |
|
88 @echo " octave-bug create octave-bug script" |
3845
|
89 @echo " octave-config create octave-config script" |
2681
|
90 @echo " mkoctfile create mkoctfile script" |
|
91 @echo " INSTALL.OCTAVE create INSTALL.OCTAVE doc file" |
|
92 @echo " BUGS create BUGS doc file" |
|
93 @echo " tags create tags files" |
|
94 @echo " TAGS create TAGS files" |
|
95 @echo "" |
|
96 @echo " dlfcn make all in subdirectory dlfcn" |
|
97 @echo " doc make all in subdirectory doc" |
|
98 @echo " libcruft make all in subdirectory libcruft" |
|
99 @echo " liboctave make all in subdirectory liboctave" |
|
100 @echo " scripts make all in subdirectory scripts" |
|
101 @echo " src make all in subdirectory src" |
|
102 @echo "" |
|
103 @echo " help print this message" |
|
104 @echo "" |
|
105 |
|
106 config-check: |
3029
|
107 @if test -f octMakefile; then \ |
|
108 true; \ |
2681
|
109 else \ |
3029
|
110 echo ""; \ |
|
111 echo "*** You must run configure before running make."; \ |
|
112 echo "***"; \ |
|
113 echo "*** Please read the INSTALL and INSTALL.OCTAVE files"; \ |
|
114 echo "*** for more information about how to configure and"; \ |
|
115 echo "*** compile Octave."; \ |
|
116 echo ""; \ |
|
117 exit 1; \ |
2681
|
118 fi |
|
119 |
|
120 FORCE: |
3648
|
121 |
|
122 .NOTPARALLEL: |