Codebase list pipenightdreams / upstream/0.9.0
Imported Upstream version 0.9.0 Dariusz Dwornikowski 8 years ago
332 changed file(s) with 27359 addition(s) and 0 deletion(s). Raw diff Collapse all Expand all
0 Waldemar A. Baraldi <baraldi@lacasilla.com.ar>
0 GNU GENERAL PUBLIC LICENSE
1 Version 2, June 1991
2
3 Copyright (C) 1989, 1991 Free Software Foundation, Inc.
4 675 Mass Ave, Cambridge, MA 02139, USA
5 Everyone is permitted to copy and distribute verbatim copies
6 of this license document, but changing it is not allowed.
7
8 Preamble
9
10 The licenses for most software are designed to take away your
11 freedom to share and change it. By contrast, the GNU General Public
12 License is intended to guarantee your freedom to share and change free
13 software--to make sure the software is free for all its users. This
14 General Public License applies to most of the Free Software
15 Foundation's software and to any other program whose authors commit to
16 using it. (Some other Free Software Foundation software is covered by
17 the GNU Library General Public License instead.) You can apply it to
18 your programs, too.
19
20 When we speak of free software, we are referring to freedom, not
21 price. Our General Public Licenses are designed to make sure that you
22 have the freedom to distribute copies of free software (and charge for
23 this service if you wish), that you receive source code or can get it
24 if you want it, that you can change the software or use pieces of it
25 in new free programs; and that you know you can do these things.
26
27 To protect your rights, we need to make restrictions that forbid
28 anyone to deny you these rights or to ask you to surrender the rights.
29 These restrictions translate to certain responsibilities for you if you
30 distribute copies of the software, or if you modify it.
31
32 For example, if you distribute copies of such a program, whether
33 gratis or for a fee, you must give the recipients all the rights that
34 you have. You must make sure that they, too, receive or can get the
35 source code. And you must show them these terms so they know their
36 rights.
37
38 We protect your rights with two steps: (1) copyright the software, and
39 (2) offer you this license which gives you legal permission to copy,
40 distribute and/or modify the software.
41
42 Also, for each author's protection and ours, we want to make certain
43 that everyone understands that there is no warranty for this free
44 software. If the software is modified by someone else and passed on, we
45 want its recipients to know that what they have is not the original, so
46 that any problems introduced by others will not reflect on the original
47 authors' reputations.
48
49 Finally, any free program is threatened constantly by software
50 patents. We wish to avoid the danger that redistributors of a free
51 program will individually obtain patent licenses, in effect making the
52 program proprietary. To prevent this, we have made it clear that any
53 patent must be licensed for everyone's free use or not licensed at all.
54
55 The precise terms and conditions for copying, distribution and
56 modification follow.
57
58 GNU GENERAL PUBLIC LICENSE
59 TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
60
61 0. This License applies to any program or other work which contains
62 a notice placed by the copyright holder saying it may be distributed
63 under the terms of this General Public License. The "Program", below,
64 refers to any such program or work, and a "work based on the Program"
65 means either the Program or any derivative work under copyright law:
66 that is to say, a work containing the Program or a portion of it,
67 either verbatim or with modifications and/or translated into another
68 language. (Hereinafter, translation is included without limitation in
69 the term "modification".) Each licensee is addressed as "you".
70
71 Activities other than copying, distribution and modification are not
72 covered by this License; they are outside its scope. The act of
73 running the Program is not restricted, and the output from the Program
74 is covered only if its contents constitute a work based on the
75 Program (independent of having been made by running the Program).
76 Whether that is true depends on what the Program does.
77
78 1. You may copy and distribute verbatim copies of the Program's
79 source code as you receive it, in any medium, provided that you
80 conspicuously and appropriately publish on each copy an appropriate
81 copyright notice and disclaimer of warranty; keep intact all the
82 notices that refer to this License and to the absence of any warranty;
83 and give any other recipients of the Program a copy of this License
84 along with the Program.
85
86 You may charge a fee for the physical act of transferring a copy, and
87 you may at your option offer warranty protection in exchange for a fee.
88
89 2. You may modify your copy or copies of the Program or any portion
90 of it, thus forming a work based on the Program, and copy and
91 distribute such modifications or work under the terms of Section 1
92 above, provided that you also meet all of these conditions:
93
94 a) You must cause the modified files to carry prominent notices
95 stating that you changed the files and the date of any change.
96
97 b) You must cause any work that you distribute or publish, that in
98 whole or in part contains or is derived from the Program or any
99 part thereof, to be licensed as a whole at no charge to all third
100 parties under the terms of this License.
101
102 c) If the modified program normally reads commands interactively
103 when run, you must cause it, when started running for such
104 interactive use in the most ordinary way, to print or display an
105 announcement including an appropriate copyright notice and a
106 notice that there is no warranty (or else, saying that you provide
107 a warranty) and that users may redistribute the program under
108 these conditions, and telling the user how to view a copy of this
109 License. (Exception: if the Program itself is interactive but
110 does not normally print such an announcement, your work based on
111 the Program is not required to print an announcement.)
112
113 These requirements apply to the modified work as a whole. If
114 identifiable sections of that work are not derived from the Program,
115 and can be reasonably considered independent and separate works in
116 themselves, then this License, and its terms, do not apply to those
117 sections when you distribute them as separate works. But when you
118 distribute the same sections as part of a whole which is a work based
119 on the Program, the distribution of the whole must be on the terms of
120 this License, whose permissions for other licensees extend to the
121 entire whole, and thus to each and every part regardless of who wrote it.
122
123 Thus, it is not the intent of this section to claim rights or contest
124 your rights to work written entirely by you; rather, the intent is to
125 exercise the right to control the distribution of derivative or
126 collective works based on the Program.
127
128 In addition, mere aggregation of another work not based on the Program
129 with the Program (or with a work based on the Program) on a volume of
130 a storage or distribution medium does not bring the other work under
131 the scope of this License.
132
133 3. You may copy and distribute the Program (or a work based on it,
134 under Section 2) in object code or executable form under the terms of
135 Sections 1 and 2 above provided that you also do one of the following:
136
137 a) Accompany it with the complete corresponding machine-readable
138 source code, which must be distributed under the terms of Sections
139 1 and 2 above on a medium customarily used for software interchange; or,
140
141 b) Accompany it with a written offer, valid for at least three
142 years, to give any third party, for a charge no more than your
143 cost of physically performing source distribution, a complete
144 machine-readable copy of the corresponding source code, to be
145 distributed under the terms of Sections 1 and 2 above on a medium
146 customarily used for software interchange; or,
147
148 c) Accompany it with the information you received as to the offer
149 to distribute corresponding source code. (This alternative is
150 allowed only for noncommercial distribution and only if you
151 received the program in object code or executable form with such
152 an offer, in accord with Subsection b above.)
153
154 The source code for a work means the preferred form of the work for
155 making modifications to it. For an executable work, complete source
156 code means all the source code for all modules it contains, plus any
157 associated interface definition files, plus the scripts used to
158 control compilation and installation of the executable. However, as a
159 special exception, the source code distributed need not include
160 anything that is normally distributed (in either source or binary
161 form) with the major components (compiler, kernel, and so on) of the
162 operating system on which the executable runs, unless that component
163 itself accompanies the executable.
164
165 If distribution of executable or object code is made by offering
166 access to copy from a designated place, then offering equivalent
167 access to copy the source code from the same place counts as
168 distribution of the source code, even though third parties are not
169 compelled to copy the source along with the object code.
170
171 4. You may not copy, modify, sublicense, or distribute the Program
172 except as expressly provided under this License. Any attempt
173 otherwise to copy, modify, sublicense or distribute the Program is
174 void, and will automatically terminate your rights under this License.
175 However, parties who have received copies, or rights, from you under
176 this License will not have their licenses terminated so long as such
177 parties remain in full compliance.
178
179 5. You are not required to accept this License, since you have not
180 signed it. However, nothing else grants you permission to modify or
181 distribute the Program or its derivative works. These actions are
182 prohibited by law if you do not accept this License. Therefore, by
183 modifying or distributing the Program (or any work based on the
184 Program), you indicate your acceptance of this License to do so, and
185 all its terms and conditions for copying, distributing or modifying
186 the Program or works based on it.
187
188 6. Each time you redistribute the Program (or any work based on the
189 Program), the recipient automatically receives a license from the
190 original licensor to copy, distribute or modify the Program subject to
191 these terms and conditions. You may not impose any further
192 restrictions on the recipients' exercise of the rights granted herein.
193 You are not responsible for enforcing compliance by third parties to
194 this License.
195
196 7. If, as a consequence of a court judgment or allegation of patent
197 infringement or for any other reason (not limited to patent issues),
198 conditions are imposed on you (whether by court order, agreement or
199 otherwise) that contradict the conditions of this License, they do not
200 excuse you from the conditions of this License. If you cannot
201 distribute so as to satisfy simultaneously your obligations under this
202 License and any other pertinent obligations, then as a consequence you
203 may not distribute the Program at all. For example, if a patent
204 license would not permit royalty-free redistribution of the Program by
205 all those who receive copies directly or indirectly through you, then
206 the only way you could satisfy both it and this License would be to
207 refrain entirely from distribution of the Program.
208
209 If any portion of this section is held invalid or unenforceable under
210 any particular circumstance, the balance of the section is intended to
211 apply and the section as a whole is intended to apply in other
212 circumstances.
213
214 It is not the purpose of this section to induce you to infringe any
215 patents or other property right claims or to contest validity of any
216 such claims; this section has the sole purpose of protecting the
217 integrity of the free software distribution system, which is
218 implemented by public license practices. Many people have made
219 generous contributions to the wide range of software distributed
220 through that system in reliance on consistent application of that
221 system; it is up to the author/donor to decide if he or she is willing
222 to distribute software through any other system and a licensee cannot
223 impose that choice.
224
225 This section is intended to make thoroughly clear what is believed to
226 be a consequence of the rest of this License.
227
228 8. If the distribution and/or use of the Program is restricted in
229 certain countries either by patents or by copyrighted interfaces, the
230 original copyright holder who places the Program under this License
231 may add an explicit geographical distribution limitation excluding
232 those countries, so that distribution is permitted only in or among
233 countries not thus excluded. In such case, this License incorporates
234 the limitation as if written in the body of this License.
235
236 9. The Free Software Foundation may publish revised and/or new versions
237 of the General Public License from time to time. Such new versions will
238 be similar in spirit to the present version, but may differ in detail to
239 address new problems or concerns.
240
241 Each version is given a distinguishing version number. If the Program
242 specifies a version number of this License which applies to it and "any
243 later version", you have the option of following the terms and conditions
244 either of that version or of any later version published by the Free
245 Software Foundation. If the Program does not specify a version number of
246 this License, you may choose any version ever published by the Free Software
247 Foundation.
248
249 10. If you wish to incorporate parts of the Program into other free
250 programs whose distribution conditions are different, write to the author
251 to ask for permission. For software which is copyrighted by the Free
252 Software Foundation, write to the Free Software Foundation; we sometimes
253 make exceptions for this. Our decision will be guided by the two goals
254 of preserving the free status of all derivatives of our free software and
255 of promoting the sharing and reuse of software generally.
256
257 NO WARRANTY
258
259 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
260 FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
261 OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
262 PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
263 OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
264 MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
265 TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
266 PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
267 REPAIR OR CORRECTION.
268
269 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
270 WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
271 REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
272 INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
273 OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
274 TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
275 YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
276 PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
277 POSSIBILITY OF SUCH DAMAGES.
278
279 END OF TERMS AND CONDITIONS
0 0.9.0 (10/12/2001)
1 Required pipes feature added.
2 Number of required pipes for each level defined.
3 Memory leak in hash table class eliminated.
4 Small bug in levels 20-25 background image fixed.
5 Installation prefix can now be specified (--prefix option in configure script).
6 Some compilation problems with RH are hopefully solved.
7 Manual page added.
8
9 0.8.0 (07/29/2001)
10 Background now can be a wallpaper.
11 Memory leak when loading images eliminated.
12 Almost all graphics redrawn.
13 All levels rewritten (5 levels added).
14 Score added.
15 Levels format improved.
16 Pipe block added.
17 Background tag added.
18 Some small bugs eliminated.
19 Screen updating routines improved (speed).
20 Btw, web page rewritten.
21
22 0.6.1 (02/27/2001)
23 Compilation error for 2.91.x gcc compilers fixed.
24 Some compilation difficulties under RH 7.0 fixed.
25 Very obscure memory leak in the Graphic class copy constructor fixed.
26 Clipping bug in the Graphic class fixed.
27 Splash drawing bug fixed.
28 Graphics loading and freeing improved.
29 Busy waiting event adquisition eliminated.
30
31 0.6.0 (02/07/2001) Initial public release.āŽ
0 Basic Installation
1 ==================
2
3 These are generic installation instructions.
4
5 The `configure' shell script attempts to guess correct values for
6 various system-dependent variables used during compilation. It uses
7 those values to create a `Makefile' in each directory of the package.
8 It may also create one or more `.h' files containing system-dependent
9 definitions. Finally, it creates a shell script `config.status' that
10 you can run in the future to recreate the current configuration, a file
11 `config.cache' that saves the results of its tests to speed up
12 reconfiguring, and a file `config.log' containing compiler output
13 (useful mainly for debugging `configure').
14
15 If you need to do unusual things to compile the package, please try
16 to figure out how `configure' could check whether to do them, and mail
17 diffs or instructions to the address given in the `README' so they can
18 be considered for the next release. If at some point `config.cache'
19 contains results you don't want to keep, you may remove or edit it.
20
21 The file `configure.in' is used to create `configure' by a program
22 called `autoconf'. You only need `configure.in' if you want to change
23 it or regenerate `configure' using a newer version of `autoconf'.
24
25 The simplest way to compile this package is:
26
27 1. `cd' to the directory containing the package's source code and type
28 `./configure' to configure the package for your system. If you're
29 using `csh' on an old version of System V, you might need to type
30 `sh ./configure' instead to prevent `csh' from trying to execute
31 `configure' itself.
32
33 Running `configure' takes a while. While running, it prints some
34 messages telling which features it is checking for.
35
36 2. Type `make' to compile the package.
37
38 3. Type `make install' to install the programs and any data files and
39 documentation.
40
41 4. You can remove the program binaries and object files from the
42 source code directory by typing `make clean'.
43
44 Compilers and Options
45 =====================
46
47 Some systems require unusual options for compilation or linking that
48 the `configure' script does not know about. You can give `configure'
49 initial values for variables by setting them in the environment. Using
50 a Bourne-compatible shell, you can do that on the command line like
51 this:
52 CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure
53
54 Or on systems that have the `env' program, you can do it like this:
55 env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure
56
57 Compiling For Multiple Architectures
58 ====================================
59
60 You can compile the package for more than one kind of computer at the
61 same time, by placing the object files for each architecture in their
62 own directory. To do this, you must use a version of `make' that
63 supports the `VPATH' variable, such as GNU `make'. `cd' to the
64 directory where you want the object files and executables to go and run
65 the `configure' script. `configure' automatically checks for the
66 source code in the directory that `configure' is in and in `..'.
67
68 If you have to use a `make' that does not supports the `VPATH'
69 variable, you have to compile the package for one architecture at a time
70 in the source code directory. After you have installed the package for
71 one architecture, use `make distclean' before reconfiguring for another
72 architecture.
73
74 Installation Names
75 ==================
76
77 By default, `make install' will install the package's files in
78 `/usr/local/bin', `/usr/local/man', etc. You can specify an
79 installation prefix other than `/usr/local' by giving `configure' the
80 option `--prefix=PATH'.
81
82 You can specify separate installation prefixes for
83 architecture-specific files and architecture-independent files. If you
84 give `configure' the option `--exec-prefix=PATH', the package will use
85 PATH as the prefix for installing programs and libraries.
86 Documentation and other data files will still use the regular prefix.
87
88 If the package supports it, you can cause programs to be installed
89 with an extra prefix or suffix on their names by giving `configure' the
90 option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
91
92 Optional Features
93 =================
94
95 Some packages pay attention to `--enable-FEATURE' options to
96 `configure', where FEATURE indicates an optional part of the package.
97 They may also pay attention to `--with-PACKAGE' options, where PACKAGE
98 is something like `gnu-as' or `x' (for the X Window System). The
99 `README' should mention any `--enable-' and `--with-' options that the
100 package recognizes.
101
102 For packages that use the X Window System, `configure' can usually
103 find the X include and library files automatically, but if it doesn't,
104 you can use the `configure' options `--x-includes=DIR' and
105 `--x-libraries=DIR' to specify their locations.
106
107 Specifying the System Type
108 ==========================
109
110 There may be some features `configure' can not figure out
111 automatically, but needs to determine by the type of host the package
112 will run on. Usually `configure' can figure that out, but if it prints
113 a message saying it can not guess the host type, give it the
114 `--host=TYPE' option. TYPE can either be a short name for the system
115 type, such as `sun4', or a canonical name with three fields:
116 CPU-COMPANY-SYSTEM
117
118 See the file `config.sub' for the possible values of each field. If
119 `config.sub' isn't included in this package, then this package doesn't
120 need to know the host type.
121
122 If you are building compiler tools for cross-compiling, you can also
123 use the `--target=TYPE' option to select the type of system they will
124 produce code for and the `--build=TYPE' option to select the type of
125 system on which you are compiling the package.
126
127 Sharing Defaults
128 ================
129
130 If you want to set default values for `configure' scripts to share,
131 you can create a site shell script called `config.site' that gives
132 default values for variables like `CC', `cache_file', and `prefix'.
133 `configure' looks for `PREFIX/share/config.site' if it exists, then
134 `PREFIX/etc/config.site' if it exists. Or, you can set the
135 `CONFIG_SITE' environment variable to the location of the site script.
136 A warning: not all `configure' scripts look for a site script.
137
138 Operation Controls
139 ==================
140
141 `configure' recognizes the following options to control how it
142 operates.
143
144 `--cache-file=FILE'
145 Use and save the results of the tests in FILE instead of
146 `./config.cache'. Set FILE to `/dev/null' to disable caching, for
147 debugging `configure'.
148
149 `--help'
150 Print a summary of the options to `configure', and exit.
151
152 `--quiet'
153 `--silent'
154 `-q'
155 Do not print messages saying which checks are being made.
156
157 `--srcdir=DIR'
158 Look for the package's source code in directory DIR. Usually
159 `configure' can determine that directory automatically.
160
161 `--version'
162 Print the version of Autoconf used to generate the `configure'
163 script, and exit.
164
165 `configure' also accepts some other, not widely useful, options.
166
0 SUBDIRS = src images levels
1
2 EXTRA_DIST = AUTHORS COPYING ChangeLog INSTALL README pipenightdreams.lsm autogen.sh
3
4
0 # Makefile.in generated automatically by automake 1.4 from Makefile.am
1
2 # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
3 # This Makefile.in is free software; the Free Software Foundation
4 # gives unlimited permission to copy and/or distribute it,
5 # with or without modifications, as long as this notice is preserved.
6
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
9 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 # PARTICULAR PURPOSE.
11
12
13 SHELL = @SHELL@
14
15 srcdir = @srcdir@
16 top_srcdir = @top_srcdir@
17 VPATH = @srcdir@
18 prefix = @prefix@
19 exec_prefix = @exec_prefix@
20
21 bindir = @bindir@
22 sbindir = @sbindir@
23 libexecdir = @libexecdir@
24 datadir = @datadir@
25 sysconfdir = @sysconfdir@
26 sharedstatedir = @sharedstatedir@
27 localstatedir = @localstatedir@
28 libdir = @libdir@
29 infodir = @infodir@
30 mandir = @mandir@
31 includedir = @includedir@
32 oldincludedir = /usr/include
33
34 DESTDIR =
35
36 pkgdatadir = $(datadir)/@PACKAGE@
37 pkglibdir = $(libdir)/@PACKAGE@
38 pkgincludedir = $(includedir)/@PACKAGE@
39
40 top_builddir = .
41
42 ACLOCAL = @ACLOCAL@
43 AUTOCONF = @AUTOCONF@
44 AUTOMAKE = @AUTOMAKE@
45 AUTOHEADER = @AUTOHEADER@
46
47 INSTALL = @INSTALL@
48 INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
49 INSTALL_DATA = @INSTALL_DATA@
50 INSTALL_SCRIPT = @INSTALL_SCRIPT@
51 transform = @program_transform_name@
52
53 NORMAL_INSTALL = :
54 PRE_INSTALL = :
55 POST_INSTALL = :
56 NORMAL_UNINSTALL = :
57 PRE_UNINSTALL = :
58 POST_UNINSTALL = :
59 host_alias = @host_alias@
60 host_triplet = @host@
61 AS = @AS@
62 CC = @CC@
63 CXX = @CXX@
64 DLLTOOL = @DLLTOOL@
65 LD = @LD@
66 LEX = @LEX@
67 LIBTOOL = @LIBTOOL@
68 LN_S = @LN_S@
69 MAKEINFO = @MAKEINFO@
70 NM = @NM@
71 OBJDUMP = @OBJDUMP@
72 PACKAGE = @PACKAGE@
73 RANLIB = @RANLIB@
74 SDL_CFLAGS = @SDL_CFLAGS@
75 SDL_CONFIG = @SDL_CONFIG@
76 SDL_LIBS = @SDL_LIBS@
77 VERSION = @VERSION@
78
79 SUBDIRS = src images levels man
80
81 EXTRA_DIST = AUTHORS COPYING ChangeLog INSTALL README pipenightdreams.lsm autogen.sh
82 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
83 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
84 CONFIG_HEADER = ./src/config.h
85 CONFIG_CLEAN_FILES =
86 DIST_COMMON = README AUTHORS COPYING ChangeLog INSTALL Makefile.am \
87 Makefile.in NEWS acinclude.m4 aclocal.m4 config.guess config.sub \
88 configure configure.in install-sh missing mkinstalldirs
89
90
91 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
92
93 TAR = tar
94 GZIP_ENV = --best
95 all: all-redirect
96 .SUFFIXES:
97 $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
98 cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile
99
100 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
101 cd $(top_builddir) \
102 && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
103
104 $(ACLOCAL_M4): configure.in acinclude.m4
105 cd $(srcdir) && $(ACLOCAL)
106
107 config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
108 $(SHELL) ./config.status --recheck
109 $(srcdir)/configure: $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
110 cd $(srcdir) && $(AUTOCONF)
111
112 # This directory's subdirectories are mostly independent; you can cd
113 # into them and run `make' without going through this Makefile.
114 # To change the values of `make' variables: instead of editing Makefiles,
115 # (1) if the variable is set in `config.status', edit `config.status'
116 # (which will cause the Makefiles to be regenerated when you run `make');
117 # (2) otherwise, pass the desired values on the `make' command line.
118
119 @SET_MAKE@
120
121 all-recursive install-data-recursive install-exec-recursive \
122 installdirs-recursive install-recursive uninstall-recursive \
123 check-recursive installcheck-recursive info-recursive dvi-recursive:
124 @set fnord $(MAKEFLAGS); amf=$$2; \
125 dot_seen=no; \
126 target=`echo $@ | sed s/-recursive//`; \
127 list='$(SUBDIRS)'; for subdir in $$list; do \
128 echo "Making $$target in $$subdir"; \
129 if test "$$subdir" = "."; then \
130 dot_seen=yes; \
131 local_target="$$target-am"; \
132 else \
133 local_target="$$target"; \
134 fi; \
135 (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
136 || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
137 done; \
138 if test "$$dot_seen" = "no"; then \
139 $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
140 fi; test -z "$$fail"
141
142 mostlyclean-recursive clean-recursive distclean-recursive \
143 maintainer-clean-recursive:
144 @set fnord $(MAKEFLAGS); amf=$$2; \
145 dot_seen=no; \
146 rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \
147 rev="$$subdir $$rev"; \
148 test "$$subdir" = "." && dot_seen=yes; \
149 done; \
150 test "$$dot_seen" = "no" && rev=". $$rev"; \
151 target=`echo $@ | sed s/-recursive//`; \
152 for subdir in $$rev; do \
153 echo "Making $$target in $$subdir"; \
154 if test "$$subdir" = "."; then \
155 local_target="$$target-am"; \
156 else \
157 local_target="$$target"; \
158 fi; \
159 (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
160 || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
161 done && test -z "$$fail"
162 tags-recursive:
163 list='$(SUBDIRS)'; for subdir in $$list; do \
164 test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
165 done
166
167 tags: TAGS
168
169 ID: $(HEADERS) $(SOURCES) $(LISP)
170 list='$(SOURCES) $(HEADERS)'; \
171 unique=`for i in $$list; do echo $$i; done | \
172 awk ' { files[$$0] = 1; } \
173 END { for (i in files) print i; }'`; \
174 here=`pwd` && cd $(srcdir) \
175 && mkid -f$$here/ID $$unique $(LISP)
176
177 TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)
178 tags=; \
179 here=`pwd`; \
180 list='$(SUBDIRS)'; for subdir in $$list; do \
181 if test "$$subdir" = .; then :; else \
182 test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
183 fi; \
184 done; \
185 list='$(SOURCES) $(HEADERS)'; \
186 unique=`for i in $$list; do echo $$i; done | \
187 awk ' { files[$$0] = 1; } \
188 END { for (i in files) print i; }'`; \
189 test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
190 || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS)
191
192 mostlyclean-tags:
193
194 clean-tags:
195
196 distclean-tags:
197 -rm -f TAGS ID
198
199 maintainer-clean-tags:
200
201 distdir = $(PACKAGE)-$(VERSION)
202 top_distdir = $(distdir)
203
204 # This target untars the dist file and tries a VPATH configuration. Then
205 # it guarantees that the distribution is self-contained by making another
206 # tarfile.
207 distcheck: dist
208 -rm -rf $(distdir)
209 GZIP=$(GZIP_ENV) $(TAR) zxf $(distdir).tar.gz
210 mkdir $(distdir)/=build
211 mkdir $(distdir)/=inst
212 dc_install_base=`cd $(distdir)/=inst && pwd`; \
213 cd $(distdir)/=build \
214 && ../configure --srcdir=.. --prefix=$$dc_install_base \
215 && $(MAKE) $(AM_MAKEFLAGS) \
216 && $(MAKE) $(AM_MAKEFLAGS) dvi \
217 && $(MAKE) $(AM_MAKEFLAGS) check \
218 && $(MAKE) $(AM_MAKEFLAGS) install \
219 && $(MAKE) $(AM_MAKEFLAGS) installcheck \
220 && $(MAKE) $(AM_MAKEFLAGS) dist
221 -rm -rf $(distdir)
222 @banner="$(distdir).tar.gz is ready for distribution"; \
223 dashes=`echo "$$banner" | sed s/./=/g`; \
224 echo "$$dashes"; \
225 echo "$$banner"; \
226 echo "$$dashes"
227 dist: distdir
228 -chmod -R a+r $(distdir)
229 GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
230 -rm -rf $(distdir)
231 dist-all: distdir
232 -chmod -R a+r $(distdir)
233 GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
234 -rm -rf $(distdir)
235 distdir: $(DISTFILES)
236 -rm -rf $(distdir)
237 mkdir $(distdir)
238 -chmod 777 $(distdir)
239 here=`cd $(top_builddir) && pwd`; \
240 top_distdir=`cd $(distdir) && pwd`; \
241 distdir=`cd $(distdir) && pwd`; \
242 cd $(top_srcdir) \
243 && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu Makefile
244 @for file in $(DISTFILES); do \
245 d=$(srcdir); \
246 if test -d $$d/$$file; then \
247 cp -pr $$d/$$file $(distdir)/$$file; \
248 else \
249 test -f $(distdir)/$$file \
250 || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
251 || cp -p $$d/$$file $(distdir)/$$file || :; \
252 fi; \
253 done
254 for subdir in $(SUBDIRS); do \
255 if test "$$subdir" = .; then :; else \
256 test -d $(distdir)/$$subdir \
257 || mkdir $(distdir)/$$subdir \
258 || exit 1; \
259 chmod 777 $(distdir)/$$subdir; \
260 (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(distdir) distdir=../$(distdir)/$$subdir distdir) \
261 || exit 1; \
262 fi; \
263 done
264 info-am:
265 info: info-recursive
266 dvi-am:
267 dvi: dvi-recursive
268 check-am: all-am
269 check: check-recursive
270 installcheck-am:
271 installcheck: installcheck-recursive
272 install-exec-am:
273 install-exec: install-exec-recursive
274
275 install-data-am:
276 install-data: install-data-recursive
277
278 install-am: all-am
279 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
280 install: install-recursive
281 uninstall-am:
282 uninstall: uninstall-recursive
283 all-am: Makefile
284 all-redirect: all-recursive
285 install-strip:
286 $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
287 installdirs: installdirs-recursive
288 installdirs-am:
289
290
291 mostlyclean-generic:
292
293 clean-generic:
294
295 distclean-generic:
296 -rm -f Makefile $(CONFIG_CLEAN_FILES)
297 -rm -f config.cache config.log stamp-h stamp-h[0-9]*
298
299 maintainer-clean-generic:
300 mostlyclean-am: mostlyclean-tags mostlyclean-generic
301
302 mostlyclean: mostlyclean-recursive
303
304 clean-am: clean-tags clean-generic mostlyclean-am
305
306 clean: clean-recursive
307
308 distclean-am: distclean-tags distclean-generic clean-am
309
310 distclean: distclean-recursive
311 -rm -f config.status
312
313 maintainer-clean-am: maintainer-clean-tags maintainer-clean-generic \
314 distclean-am
315 @echo "This command is intended for maintainers to use;"
316 @echo "it deletes files that may require special tools to rebuild."
317
318 maintainer-clean: maintainer-clean-recursive
319 -rm -f config.status
320
321 .PHONY: install-data-recursive uninstall-data-recursive \
322 install-exec-recursive uninstall-exec-recursive installdirs-recursive \
323 uninstalldirs-recursive all-recursive check-recursive \
324 installcheck-recursive info-recursive dvi-recursive \
325 mostlyclean-recursive distclean-recursive clean-recursive \
326 maintainer-clean-recursive tags tags-recursive mostlyclean-tags \
327 distclean-tags clean-tags maintainer-clean-tags distdir info-am info \
328 dvi-am dvi check check-am installcheck-am installcheck install-exec-am \
329 install-exec install-data-am install-data install-am install \
330 uninstall-am uninstall all-redirect all-am all installdirs-am \
331 installdirs mostlyclean-generic distclean-generic clean-generic \
332 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
333
334
335 # Tell versions [3.59,3.63) of GNU make to not export all variables.
336 # Otherwise a system limit (for SysV at least) may be exceeded.
337 .NOEXPORT:
0
1 10/12/2001 New release with new features and some bugs fixed (version 0.9.0).
2 08/08/2001 Pipenightdreams appears in the Japanese Linux magazine (ASCII), page 132, as part of a Free Application Showcase.
3 07/29/2001 New release with many new features and some bugs fixed (version 0.8.0).
4 02/27/2001 New release with many bugs fixed (version 0.6.1).
5 02/07/2001 Initial public release (version 0.6.0).āŽ
0
1
2 PipeNightDreams
3 -----------------
4 Version 0.9.0
5
6 by Waldemar A. Baraldi
7 baraldi@lacasilla.com.ar
8 http:://www.libsdl.org/projects/pipenightdreams
9
10
11 This game is a pseudo-clon of an old game called PipeDream. I say pseudo-clon
12 because I don't have the original one so I've been working just with the facts
13 I remember. I've written it in my spare time during the last twelve months (as you
14 can see my spare time is not much).
15
16 Many other functionality is planned (more graphics and levels, sound,
17 multiplayer, network and AI) and I hope I'll slowly make it real.By the time I
18 encourage you (if you like the game) to draw some more graphics. It's really
19 easy to make them work, just look at the ones that I have drawn.
20
21 You can also read the sources and bring any suggestion, criticism or
22 cooperation that will be truly welcomed.
23
24 I want to thank Sam Latinga and Linus Torvalds. The first one for creating
25 SDL and for giving me this digital space and the second one for...
26 well you know...
27
28 Waldemar A. BaraldiāŽ
0 #undef GAME_PREFIX
1 #undef GAME_DATADIR
0 # Configure paths for SDL
1 # Sam Lantinga 9/21/99
2 # stolen from Manish Singh
3 # stolen back from Frank Belew
4 # stolen from Manish Singh
5 # Shamelessly stolen from Owen Taylor
6
7 dnl AM_PATH_SDL([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
8 dnl Test for SDL, and define SDL_CFLAGS and SDL_LIBS
9 dnl
10 AC_DEFUN(AM_PATH_SDL,
11 [dnl
12 dnl Get the cflags and libraries from the sdl-config script
13 dnl
14 AC_ARG_WITH(sdl-prefix,[ --with-sdl-prefix=PFX Prefix where SDL is installed (optional)],
15 sdl_prefix="$withval", sdl_prefix="")
16 AC_ARG_WITH(sdl-exec-prefix,[ --with-sdl-exec-prefix=PFX Exec prefix where SDL is installed (optional)],
17 sdl_exec_prefix="$withval", sdl_exec_prefix="")
18 AC_ARG_ENABLE(sdltest, [ --disable-sdltest Do not try to compile and run a test SDL program],
19 , enable_sdltest=yes)
20
21 if test x$sdl_exec_prefix != x ; then
22 sdl_args="$sdl_args --exec-prefix=$sdl_exec_prefix"
23 if test x${SDL_CONFIG+set} != xset ; then
24 SDL_CONFIG=$sdl_exec_prefix/bin/sdl-config
25 fi
26 fi
27 if test x$sdl_prefix != x ; then
28 sdl_args="$sdl_args --prefix=$sdl_prefix"
29 if test x${SDL_CONFIG+set} != xset ; then
30 SDL_CONFIG=$sdl_prefix/bin/sdl-config
31 fi
32 fi
33
34 AC_PATH_PROG(SDL_CONFIG, sdl-config, no)
35 min_sdl_version=ifelse([$1], ,0.11.0,$1)
36 AC_MSG_CHECKING(for SDL - version >= $min_sdl_version)
37 no_sdl=""
38 if test "$SDL_CONFIG" = "no" ; then
39 no_sdl=yes
40 else
41 SDL_CFLAGS=`$SDL_CONFIG $sdlconf_args --cflags`
42 SDL_LIBS=`$SDL_CONFIG $sdlconf_args --libs`
43
44 sdl_major_version=`$SDL_CONFIG $sdl_args --version | \
45 sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
46 sdl_minor_version=`$SDL_CONFIG $sdl_args --version | \
47 sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
48 sdl_micro_version=`$SDL_CONFIG $sdl_config_args --version | \
49 sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
50 if test "x$enable_sdltest" = "xyes" ; then
51 ac_save_CFLAGS="$CFLAGS"
52 ac_save_LIBS="$LIBS"
53 CFLAGS="$CFLAGS $SDL_CFLAGS"
54 LIBS="$LIBS $SDL_LIBS"
55 dnl
56 dnl Now check if the installed SDL is sufficiently new. (Also sanity
57 dnl checks the results of sdl-config to some extent
58 dnl
59 rm -f conf.sdltest
60 AC_TRY_RUN([
61 #include <stdio.h>
62 #include <stdlib.h>
63 #include <string.h>
64 #include <SDL/SDL.h>
65
66 char*
67 my_strdup (char *str)
68 {
69 char *new_str;
70
71 if (str)
72 {
73 new_str = malloc ((strlen (str) + 1) * sizeof(char));
74 strcpy (new_str, str);
75 }
76 else
77 new_str = NULL;
78
79 return new_str;
80 }
81
82 int main ()
83 {
84 int major, minor, micro;
85 char *tmp_version;
86
87 system ("touch conf.sdltest");
88
89 /* HP/UX 9 (%@#!) writes to sscanf strings */
90 tmp_version = my_strdup("$min_sdl_version");
91 if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, &micro) != 3) {
92 printf("%s, bad version string\n", "$min_sdl_version");
93 exit(1);
94 }
95
96 if (($sdl_major_version > major) ||
97 (($sdl_major_version == major) && ($sdl_minor_version > minor)) ||
98 (($sdl_major_version == major) && ($sdl_minor_version == minor) && ($sdl_micro_version >= micro)))
99 {
100 return 0;
101 }
102 else
103 {
104 printf("\n*** 'sdl-config --version' returned %d.%d.%d, but the minimum version\n", $sdl_major_version, $sdl_minor_version, $sdl_micro_version);
105 printf("*** of SDL required is %d.%d.%d. If sdl-config is correct, then it is\n", major, minor, micro);
106 printf("*** best to upgrade to the required version.\n");
107 printf("*** If sdl-config was wrong, set the environment variable SDL_CONFIG\n");
108 printf("*** to point to the correct copy of sdl-config, and remove the file\n");
109 printf("*** config.cache before re-running configure\n");
110 return 1;
111 }
112 }
113
114 ],, no_sdl=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
115 CFLAGS="$ac_save_CFLAGS"
116 LIBS="$ac_save_LIBS"
117 fi
118 fi
119 if test "x$no_sdl" = x ; then
120 AC_MSG_RESULT(yes)
121 ifelse([$2], , :, [$2])
122 else
123 AC_MSG_RESULT(no)
124 if test "$SDL_CONFIG" = "no" ; then
125 echo "*** The sdl-config script installed by SDL could not be found"
126 echo "*** If SDL was installed in PREFIX, make sure PREFIX/bin is in"
127 echo "*** your path, or set the SDL_CONFIG environment variable to the"
128 echo "*** full path to sdl-config."
129 else
130 if test -f conf.sdltest ; then
131 :
132 else
133 echo "*** Could not run SDL test program, checking why..."
134 CFLAGS="$CFLAGS $SDL_CFLAGS"
135 LIBS="$LIBS $SDL_LIBS"
136 AC_TRY_LINK([
137 #include <stdio.h>
138 #include <SDL/SDL.h>
139 ], [ return 0; ],
140 [ echo "*** The test program compiled, but did not run. This usually means"
141 echo "*** that the run-time linker is not finding SDL or finding the wrong"
142 echo "*** version of SDL. If it is not finding SDL, you'll need to set your"
143 echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
144 echo "*** to the installed location Also, make sure you have run ldconfig if that"
145 echo "*** is required on your system"
146 echo "***"
147 echo "*** If you have an old version installed, it is best to remove it, although"
148 echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"],
149 [ echo "*** The test program failed to compile or link. See the file config.log for the"
150 echo "*** exact error that occured. This usually means SDL was incorrectly installed"
151 echo "*** or that you have moved SDL since it was installed. In the latter case, you"
152 echo "*** may want to edit the sdl-config script: $SDL_CONFIG" ])
153 CFLAGS="$ac_save_CFLAGS"
154 LIBS="$ac_save_LIBS"
155 fi
156 fi
157 SDL_CFLAGS=""
158 SDL_LIBS=""
159 ifelse([$3], , :, [$3])
160 fi
161 AC_SUBST(SDL_CFLAGS)
162 AC_SUBST(SDL_LIBS)
163 rm -f conf.sdltest
164 ])
165 ## libtool.m4 - Configure libtool for the target system. -*-Shell-script-*-
166 ## Copyright (C) 1996-1999 Free Software Foundation, Inc.
167 ## Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
168 ##
169 ## This program is free software; you can redistribute it and/or modify
170 ## it under the terms of the GNU General Public License as published by
171 ## the Free Software Foundation; either version 2 of the License, or
172 ## (at your option) any later version.
173 ##
174 ## This program is distributed in the hope that it will be useful, but
175 ## WITHOUT ANY WARRANTY; without even the implied warranty of
176 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
177 ## General Public License for more details.
178 ##
179 ## You should have received a copy of the GNU General Public License
180 ## along with this program; if not, write to the Free Software
181 ## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
182 ##
183 ## As a special exception to the GNU General Public License, if you
184 ## distribute this file as part of a program that contains a
185 ## configuration script generated by Autoconf, you may include it under
186 ## the same distribution terms that you use for the rest of that program.
187
188 # serial 41 AC_PROG_LIBTOOL
189 AC_DEFUN(AC_PROG_LIBTOOL,
190 [AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
191
192 # Save cache, so that ltconfig can load it
193 AC_CACHE_SAVE
194
195 # Actually configure libtool. ac_aux_dir is where install-sh is found.
196 CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
197 LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
198 LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \
199 DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \
200 ${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \
201 $libtool_flags --no-verify --build="$build" $ac_aux_dir/ltmain.sh $host \
202 || AC_MSG_ERROR([libtool configure failed])
203
204 # Reload cache, that may have been modified by ltconfig
205 AC_CACHE_LOAD
206
207 # This can be used to rebuild libtool when needed
208 LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh"
209
210 # Always use our own libtool.
211 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
212 AC_SUBST(LIBTOOL)dnl
213
214 # Redirect the config.log output again, so that the ltconfig log is not
215 # clobbered by the next message.
216 exec 5>>./config.log
217 ])
218
219 AC_DEFUN(AC_LIBTOOL_SETUP,
220 [AC_PREREQ(2.13)dnl
221 AC_REQUIRE([AC_ENABLE_SHARED])dnl
222 AC_REQUIRE([AC_ENABLE_STATIC])dnl
223 AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
224 AC_REQUIRE([AC_CANONICAL_HOST])dnl
225 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
226 AC_REQUIRE([AC_PROG_CC])dnl
227 AC_REQUIRE([AC_PROG_LD])dnl
228 AC_REQUIRE([AC_PROG_NM])dnl
229 AC_REQUIRE([AC_PROG_LN_S])dnl
230 dnl
231
232 AC_CHECK_TOOL(RANLIB, ranlib, :)
233
234 # Check for any special flags to pass to ltconfig.
235 libtool_flags="--cache-file=$cache_file"
236 test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
237 test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
238 test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install"
239 test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc"
240 test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
241 ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN],
242 [libtool_flags="$libtool_flags --enable-dlopen"])
243 ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
244 [libtool_flags="$libtool_flags --enable-win32-dll"])
245 AC_ARG_ENABLE(libtool-lock,
246 [ --disable-libtool-lock avoid locking (might break parallel builds)])
247 test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock"
248 test x"$silent" = xyes && libtool_flags="$libtool_flags --silent"
249
250 AC_ARG_WITH(pic,
251 [ --with-pic try to use only PIC/non-PIC objects [default=use both]],
252 pic_mode="$withval", pic_mode=default)
253 test x"$pic_mode" = xyes && libtool_flags="$libtool_flags --prefer-pic"
254 test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
255
256 # Some flags need to be propagated to the compiler or linker for good
257 # libtool support.
258 case "$host" in
259 *-*-irix6*)
260 # Find out which ABI we are using.
261 echo '[#]line __oline__ "configure"' > conftest.$ac_ext
262 if AC_TRY_EVAL(ac_compile); then
263 case "`/usr/bin/file conftest.o`" in
264 *32-bit*)
265 LD="${LD-ld} -32"
266 ;;
267 *N32*)
268 LD="${LD-ld} -n32"
269 ;;
270 *64-bit*)
271 LD="${LD-ld} -64"
272 ;;
273 esac
274 fi
275 rm -rf conftest*
276 ;;
277
278 *-*-sco3.2v5*)
279 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
280 SAVE_CFLAGS="$CFLAGS"
281 CFLAGS="$CFLAGS -belf"
282 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
283 [AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])])
284 if test x"$lt_cv_cc_needs_belf" != x"yes"; then
285 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
286 CFLAGS="$SAVE_CFLAGS"
287 fi
288 ;;
289
290 ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
291 [*-*-cygwin* | *-*-mingw*)
292 AC_CHECK_TOOL(DLLTOOL, dlltool, false)
293 AC_CHECK_TOOL(AS, as, false)
294 AC_CHECK_TOOL(OBJDUMP, objdump, false)
295
296 # recent cygwin and mingw systems supply a stub DllMain which the user
297 # can override, but on older systems we have to supply one
298 AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain,
299 [AC_TRY_LINK([DllMain (0, 0, 0);],
300 [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);],
301 [lt_cv_need_dllmain=yes],[lt_cv_need_dllmain=no])])
302
303 case $host in
304 *-*-cygwin*)
305 # cygwin systems need to pass --dll to the linker, and not link
306 # crt.o which will require a WinMain@16 definition.
307 lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;;
308 *-*-mingw*)
309 # old mingw systems require "-dll" to link a DLL, while more recent ones
310 # require "-mdll"
311 SAVE_CFLAGS="$CFLAGS"
312 CFLAGS="$CFLAGS -mdll"
313 AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch,
314 [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])])
315 CFLAGS="$SAVE_CFLAGS" ;;
316 esac
317 ;;
318 ])
319 esac
320 ])
321
322 # AC_LIBTOOL_DLOPEN - enable checks for dlopen support
323 AC_DEFUN(AC_LIBTOOL_DLOPEN, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
324
325 # AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's
326 AC_DEFUN(AC_LIBTOOL_WIN32_DLL, [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
327
328 # AC_ENABLE_SHARED - implement the --enable-shared flag
329 # Usage: AC_ENABLE_SHARED[(DEFAULT)]
330 # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
331 # `yes'.
332 AC_DEFUN(AC_ENABLE_SHARED, [dnl
333 define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
334 AC_ARG_ENABLE(shared,
335 changequote(<<, >>)dnl
336 << --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
337 changequote([, ])dnl
338 [p=${PACKAGE-default}
339 case "$enableval" in
340 yes) enable_shared=yes ;;
341 no) enable_shared=no ;;
342 *)
343 enable_shared=no
344 # Look at the argument we got. We use all the common list separators.
345 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
346 for pkg in $enableval; do
347 if test "X$pkg" = "X$p"; then
348 enable_shared=yes
349 fi
350 done
351 IFS="$ac_save_ifs"
352 ;;
353 esac],
354 enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl
355 ])
356
357 # AC_DISABLE_SHARED - set the default shared flag to --disable-shared
358 AC_DEFUN(AC_DISABLE_SHARED, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
359 AC_ENABLE_SHARED(no)])
360
361 # AC_ENABLE_STATIC - implement the --enable-static flag
362 # Usage: AC_ENABLE_STATIC[(DEFAULT)]
363 # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
364 # `yes'.
365 AC_DEFUN(AC_ENABLE_STATIC, [dnl
366 define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
367 AC_ARG_ENABLE(static,
368 changequote(<<, >>)dnl
369 << --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
370 changequote([, ])dnl
371 [p=${PACKAGE-default}
372 case "$enableval" in
373 yes) enable_static=yes ;;
374 no) enable_static=no ;;
375 *)
376 enable_static=no
377 # Look at the argument we got. We use all the common list separators.
378 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
379 for pkg in $enableval; do
380 if test "X$pkg" = "X$p"; then
381 enable_static=yes
382 fi
383 done
384 IFS="$ac_save_ifs"
385 ;;
386 esac],
387 enable_static=AC_ENABLE_STATIC_DEFAULT)dnl
388 ])
389
390 # AC_DISABLE_STATIC - set the default static flag to --disable-static
391 AC_DEFUN(AC_DISABLE_STATIC, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
392 AC_ENABLE_STATIC(no)])
393
394
395 # AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag
396 # Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)]
397 # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
398 # `yes'.
399 AC_DEFUN(AC_ENABLE_FAST_INSTALL, [dnl
400 define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
401 AC_ARG_ENABLE(fast-install,
402 changequote(<<, >>)dnl
403 << --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT],
404 changequote([, ])dnl
405 [p=${PACKAGE-default}
406 case "$enableval" in
407 yes) enable_fast_install=yes ;;
408 no) enable_fast_install=no ;;
409 *)
410 enable_fast_install=no
411 # Look at the argument we got. We use all the common list separators.
412 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
413 for pkg in $enableval; do
414 if test "X$pkg" = "X$p"; then
415 enable_fast_install=yes
416 fi
417 done
418 IFS="$ac_save_ifs"
419 ;;
420 esac],
421 enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl
422 ])
423
424 # AC_ENABLE_FAST_INSTALL - set the default to --disable-fast-install
425 AC_DEFUN(AC_DISABLE_FAST_INSTALL, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
426 AC_ENABLE_FAST_INSTALL(no)])
427
428 # AC_PROG_LD - find the path to the GNU or non-GNU linker
429 AC_DEFUN(AC_PROG_LD,
430 [AC_ARG_WITH(gnu-ld,
431 [ --with-gnu-ld assume the C compiler uses GNU ld [default=no]],
432 test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
433 AC_REQUIRE([AC_PROG_CC])dnl
434 AC_REQUIRE([AC_CANONICAL_HOST])dnl
435 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
436 ac_prog=ld
437 if test "$ac_cv_prog_gcc" = yes; then
438 # Check if gcc -print-prog-name=ld gives a path.
439 AC_MSG_CHECKING([for ld used by GCC])
440 case $host in
441 *-*-mingw*)
442 # gcc leaves a trailing carriage return which upsets mingw
443 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
444 *)
445 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
446 esac
447 case "$ac_prog" in
448 # Accept absolute paths.
449 changequote(,)dnl
450 [\\/]* | [A-Za-z]:[\\/]*)
451 re_direlt='/[^/][^/]*/\.\./'
452 changequote([,])dnl
453 # Canonicalize the path of ld
454 ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
455 while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
456 ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
457 done
458 test -z "$LD" && LD="$ac_prog"
459 ;;
460 "")
461 # If it fails, then pretend we aren't using GCC.
462 ac_prog=ld
463 ;;
464 *)
465 # If it is relative, then search for the first ld in PATH.
466 with_gnu_ld=unknown
467 ;;
468 esac
469 elif test "$with_gnu_ld" = yes; then
470 AC_MSG_CHECKING([for GNU ld])
471 else
472 AC_MSG_CHECKING([for non-GNU ld])
473 fi
474 AC_CACHE_VAL(ac_cv_path_LD,
475 [if test -z "$LD"; then
476 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
477 for ac_dir in $PATH; do
478 test -z "$ac_dir" && ac_dir=.
479 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
480 ac_cv_path_LD="$ac_dir/$ac_prog"
481 # Check to see if the program is GNU ld. I'd rather use --version,
482 # but apparently some GNU ld's only accept -v.
483 # Break only if it was the GNU/non-GNU ld that we prefer.
484 if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
485 test "$with_gnu_ld" != no && break
486 else
487 test "$with_gnu_ld" != yes && break
488 fi
489 fi
490 done
491 IFS="$ac_save_ifs"
492 else
493 ac_cv_path_LD="$LD" # Let the user override the test with a path.
494 fi])
495 LD="$ac_cv_path_LD"
496 if test -n "$LD"; then
497 AC_MSG_RESULT($LD)
498 else
499 AC_MSG_RESULT(no)
500 fi
501 test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
502 AC_SUBST(LD)
503 AC_PROG_LD_GNU
504 ])
505
506 AC_DEFUN(AC_PROG_LD_GNU,
507 [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld,
508 [# I'd rather use --version here, but apparently some GNU ld's only accept -v.
509 if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
510 ac_cv_prog_gnu_ld=yes
511 else
512 ac_cv_prog_gnu_ld=no
513 fi])
514 ])
515
516 # AC_PROG_NM - find the path to a BSD-compatible name lister
517 AC_DEFUN(AC_PROG_NM,
518 [AC_MSG_CHECKING([for BSD-compatible nm])
519 AC_CACHE_VAL(ac_cv_path_NM,
520 [if test -n "$NM"; then
521 # Let the user override the test.
522 ac_cv_path_NM="$NM"
523 else
524 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
525 for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
526 test -z "$ac_dir" && ac_dir=.
527 if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext ; then
528 # Check to see if the nm accepts a BSD-compat flag.
529 # Adding the `sed 1q' prevents false positives on HP-UX, which says:
530 # nm: unknown option "B" ignored
531 if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
532 ac_cv_path_NM="$ac_dir/nm -B"
533 break
534 elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
535 ac_cv_path_NM="$ac_dir/nm -p"
536 break
537 else
538 ac_cv_path_NM=${ac_cv_path_NM="$ac_dir/nm"} # keep the first match, but
539 continue # so that we can try to find one that supports BSD flags
540 fi
541 fi
542 done
543 IFS="$ac_save_ifs"
544 test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm
545 fi])
546 NM="$ac_cv_path_NM"
547 AC_MSG_RESULT([$NM])
548 AC_SUBST(NM)
549 ])
550
551 # AC_CHECK_LIBM - check for math library
552 AC_DEFUN(AC_CHECK_LIBM,
553 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
554 LIBM=
555 case "$host" in
556 *-*-beos* | *-*-cygwin*)
557 # These system don't have libm
558 ;;
559 *-ncr-sysv4.3*)
560 AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
561 AC_CHECK_LIB(m, main, LIBM="$LIBM -lm")
562 ;;
563 *)
564 AC_CHECK_LIB(m, main, LIBM="-lm")
565 ;;
566 esac
567 ])
568
569 # AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
570 # the libltdl convenience library, adds --enable-ltdl-convenience to
571 # the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor
572 # is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed
573 # to be `${top_builddir}/libltdl'. Make sure you start DIR with
574 # '${top_builddir}/' (note the single quotes!) if your package is not
575 # flat, and, if you're not using automake, define top_builddir as
576 # appropriate in the Makefiles.
577 AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
578 case "$enable_ltdl_convenience" in
579 no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
580 "") enable_ltdl_convenience=yes
581 ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
582 esac
583 LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdlc.la
584 INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl'])
585 ])
586
587 # AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
588 # the libltdl installable library, and adds --enable-ltdl-install to
589 # the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor
590 # is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed
591 # to be `${top_builddir}/libltdl'. Make sure you start DIR with
592 # '${top_builddir}/' (note the single quotes!) if your package is not
593 # flat, and, if you're not using automake, define top_builddir as
594 # appropriate in the Makefiles.
595 # In the future, this macro may have to be called after AC_PROG_LIBTOOL.
596 AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
597 AC_CHECK_LIB(ltdl, main,
598 [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
599 [if test x"$enable_ltdl_install" = xno; then
600 AC_MSG_WARN([libltdl not installed, but installation disabled])
601 else
602 enable_ltdl_install=yes
603 fi
604 ])
605 if test x"$enable_ltdl_install" = x"yes"; then
606 ac_configure_args="$ac_configure_args --enable-ltdl-install"
607 LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdl.la
608 INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl'])
609 else
610 ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
611 LIBLTDL="-lltdl"
612 INCLTDL=
613 fi
614 ])
615
616 dnl old names
617 AC_DEFUN(AM_PROG_LIBTOOL, [indir([AC_PROG_LIBTOOL])])dnl
618 AC_DEFUN(AM_ENABLE_SHARED, [indir([AC_ENABLE_SHARED], $@)])dnl
619 AC_DEFUN(AM_ENABLE_STATIC, [indir([AC_ENABLE_STATIC], $@)])dnl
620 AC_DEFUN(AM_DISABLE_SHARED, [indir([AC_DISABLE_SHARED], $@)])dnl
621 AC_DEFUN(AM_DISABLE_STATIC, [indir([AC_DISABLE_STATIC], $@)])dnl
622 AC_DEFUN(AM_PROG_LD, [indir([AC_PROG_LD])])dnl
623 AC_DEFUN(AM_PROG_NM, [indir([AC_PROG_NM])])dnl
624
625 dnl This is just to silence aclocal about the macro not being used
626 ifelse([AC_DISABLE_FAST_INSTALL])dnl
627
628
629 dnl Thanks to Ingo Ruhnke <grumbel@gmx.de>
630 AC_DEFUN(MY_EXPAND_DIR, [
631 $1=$2
632 $1=`(
633 test "x$prefix" = xNONE && prefix=${ac_default_prefix}
634 test "x$exec_prefix" = xNONE && exec_prefix=${prefix}
635 eval echo \""[$]$1"\"
636 )`
637 ])
0 dnl aclocal.m4 generated automatically by aclocal 1.4
1
2 dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
3 dnl This file is free software; the Free Software Foundation
4 dnl gives unlimited permission to copy and/or distribute it,
5 dnl with or without modifications, as long as this notice is preserved.
6
7 dnl This program is distributed in the hope that it will be useful,
8 dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
9 dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 dnl PARTICULAR PURPOSE.
11
12 # Configure paths for SDL
13 # Sam Lantinga 9/21/99
14 # stolen from Manish Singh
15 # stolen back from Frank Belew
16 # stolen from Manish Singh
17 # Shamelessly stolen from Owen Taylor
18
19 dnl AM_PATH_SDL([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
20 dnl Test for SDL, and define SDL_CFLAGS and SDL_LIBS
21 dnl
22 AC_DEFUN(AM_PATH_SDL,
23 [dnl
24 dnl Get the cflags and libraries from the sdl-config script
25 dnl
26 AC_ARG_WITH(sdl-prefix,[ --with-sdl-prefix=PFX Prefix where SDL is installed (optional)],
27 sdl_prefix="$withval", sdl_prefix="")
28 AC_ARG_WITH(sdl-exec-prefix,[ --with-sdl-exec-prefix=PFX Exec prefix where SDL is installed (optional)],
29 sdl_exec_prefix="$withval", sdl_exec_prefix="")
30 AC_ARG_ENABLE(sdltest, [ --disable-sdltest Do not try to compile and run a test SDL program],
31 , enable_sdltest=yes)
32
33 if test x$sdl_exec_prefix != x ; then
34 sdl_args="$sdl_args --exec-prefix=$sdl_exec_prefix"
35 if test x${SDL_CONFIG+set} != xset ; then
36 SDL_CONFIG=$sdl_exec_prefix/bin/sdl-config
37 fi
38 fi
39 if test x$sdl_prefix != x ; then
40 sdl_args="$sdl_args --prefix=$sdl_prefix"
41 if test x${SDL_CONFIG+set} != xset ; then
42 SDL_CONFIG=$sdl_prefix/bin/sdl-config
43 fi
44 fi
45
46 AC_PATH_PROG(SDL_CONFIG, sdl-config, no)
47 min_sdl_version=ifelse([$1], ,0.11.0,$1)
48 AC_MSG_CHECKING(for SDL - version >= $min_sdl_version)
49 no_sdl=""
50 if test "$SDL_CONFIG" = "no" ; then
51 no_sdl=yes
52 else
53 SDL_CFLAGS=`$SDL_CONFIG $sdlconf_args --cflags`
54 SDL_LIBS=`$SDL_CONFIG $sdlconf_args --libs`
55
56 sdl_major_version=`$SDL_CONFIG $sdl_args --version | \
57 sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
58 sdl_minor_version=`$SDL_CONFIG $sdl_args --version | \
59 sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
60 sdl_micro_version=`$SDL_CONFIG $sdl_config_args --version | \
61 sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
62 if test "x$enable_sdltest" = "xyes" ; then
63 ac_save_CFLAGS="$CFLAGS"
64 ac_save_LIBS="$LIBS"
65 CFLAGS="$CFLAGS $SDL_CFLAGS"
66 LIBS="$LIBS $SDL_LIBS"
67 dnl
68 dnl Now check if the installed SDL is sufficiently new. (Also sanity
69 dnl checks the results of sdl-config to some extent
70 dnl
71 rm -f conf.sdltest
72 AC_TRY_RUN([
73 #include <stdio.h>
74 #include <stdlib.h>
75 #include <string.h>
76 #include <SDL/SDL.h>
77
78 char*
79 my_strdup (char *str)
80 {
81 char *new_str;
82
83 if (str)
84 {
85 new_str = malloc ((strlen (str) + 1) * sizeof(char));
86 strcpy (new_str, str);
87 }
88 else
89 new_str = NULL;
90
91 return new_str;
92 }
93
94 int main ()
95 {
96 int major, minor, micro;
97 char *tmp_version;
98
99 system ("touch conf.sdltest");
100
101 /* HP/UX 9 (%@#!) writes to sscanf strings */
102 tmp_version = my_strdup("$min_sdl_version");
103 if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, &micro) != 3) {
104 printf("%s, bad version string\n", "$min_sdl_version");
105 exit(1);
106 }
107
108 if (($sdl_major_version > major) ||
109 (($sdl_major_version == major) && ($sdl_minor_version > minor)) ||
110 (($sdl_major_version == major) && ($sdl_minor_version == minor) && ($sdl_micro_version >= micro)))
111 {
112 return 0;
113 }
114 else
115 {
116 printf("\n*** 'sdl-config --version' returned %d.%d.%d, but the minimum version\n", $sdl_major_version, $sdl_minor_version, $sdl_micro_version);
117 printf("*** of SDL required is %d.%d.%d. If sdl-config is correct, then it is\n", major, minor, micro);
118 printf("*** best to upgrade to the required version.\n");
119 printf("*** If sdl-config was wrong, set the environment variable SDL_CONFIG\n");
120 printf("*** to point to the correct copy of sdl-config, and remove the file\n");
121 printf("*** config.cache before re-running configure\n");
122 return 1;
123 }
124 }
125
126 ],, no_sdl=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
127 CFLAGS="$ac_save_CFLAGS"
128 LIBS="$ac_save_LIBS"
129 fi
130 fi
131 if test "x$no_sdl" = x ; then
132 AC_MSG_RESULT(yes)
133 ifelse([$2], , :, [$2])
134 else
135 AC_MSG_RESULT(no)
136 if test "$SDL_CONFIG" = "no" ; then
137 echo "*** The sdl-config script installed by SDL could not be found"
138 echo "*** If SDL was installed in PREFIX, make sure PREFIX/bin is in"
139 echo "*** your path, or set the SDL_CONFIG environment variable to the"
140 echo "*** full path to sdl-config."
141 else
142 if test -f conf.sdltest ; then
143 :
144 else
145 echo "*** Could not run SDL test program, checking why..."
146 CFLAGS="$CFLAGS $SDL_CFLAGS"
147 LIBS="$LIBS $SDL_LIBS"
148 AC_TRY_LINK([
149 #include <stdio.h>
150 #include <SDL/SDL.h>
151 ], [ return 0; ],
152 [ echo "*** The test program compiled, but did not run. This usually means"
153 echo "*** that the run-time linker is not finding SDL or finding the wrong"
154 echo "*** version of SDL. If it is not finding SDL, you'll need to set your"
155 echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
156 echo "*** to the installed location Also, make sure you have run ldconfig if that"
157 echo "*** is required on your system"
158 echo "***"
159 echo "*** If you have an old version installed, it is best to remove it, although"
160 echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"],
161 [ echo "*** The test program failed to compile or link. See the file config.log for the"
162 echo "*** exact error that occured. This usually means SDL was incorrectly installed"
163 echo "*** or that you have moved SDL since it was installed. In the latter case, you"
164 echo "*** may want to edit the sdl-config script: $SDL_CONFIG" ])
165 CFLAGS="$ac_save_CFLAGS"
166 LIBS="$ac_save_LIBS"
167 fi
168 fi
169 SDL_CFLAGS=""
170 SDL_LIBS=""
171 ifelse([$3], , :, [$3])
172 fi
173 AC_SUBST(SDL_CFLAGS)
174 AC_SUBST(SDL_LIBS)
175 rm -f conf.sdltest
176 ])
177
178 # serial 41 AC_PROG_LIBTOOL
179 AC_DEFUN(AC_PROG_LIBTOOL,
180 [AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
181
182 # Save cache, so that ltconfig can load it
183 AC_CACHE_SAVE
184
185 # Actually configure libtool. ac_aux_dir is where install-sh is found.
186 CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
187 LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
188 LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \
189 DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \
190 ${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \
191 $libtool_flags --no-verify --build="$build" $ac_aux_dir/ltmain.sh $host \
192 || AC_MSG_ERROR([libtool configure failed])
193
194 # Reload cache, that may have been modified by ltconfig
195 AC_CACHE_LOAD
196
197 # This can be used to rebuild libtool when needed
198 LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh"
199
200 # Always use our own libtool.
201 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
202 AC_SUBST(LIBTOOL)dnl
203
204 # Redirect the config.log output again, so that the ltconfig log is not
205 # clobbered by the next message.
206 exec 5>>./config.log
207 ])
208
209 AC_DEFUN(AC_LIBTOOL_SETUP,
210 [AC_PREREQ(2.13)dnl
211 AC_REQUIRE([AC_ENABLE_SHARED])dnl
212 AC_REQUIRE([AC_ENABLE_STATIC])dnl
213 AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
214 AC_REQUIRE([AC_CANONICAL_HOST])dnl
215 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
216 AC_REQUIRE([AC_PROG_CC])dnl
217 AC_REQUIRE([AC_PROG_LD])dnl
218 AC_REQUIRE([AC_PROG_NM])dnl
219 AC_REQUIRE([AC_PROG_LN_S])dnl
220 dnl
221
222 AC_CHECK_TOOL(RANLIB, ranlib, :)
223
224 # Check for any special flags to pass to ltconfig.
225 libtool_flags="--cache-file=$cache_file"
226 test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
227 test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
228 test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install"
229 test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc"
230 test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
231 ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN],
232 [libtool_flags="$libtool_flags --enable-dlopen"])
233 ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
234 [libtool_flags="$libtool_flags --enable-win32-dll"])
235 AC_ARG_ENABLE(libtool-lock,
236 [ --disable-libtool-lock avoid locking (might break parallel builds)])
237 test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock"
238 test x"$silent" = xyes && libtool_flags="$libtool_flags --silent"
239
240 AC_ARG_WITH(pic,
241 [ --with-pic try to use only PIC/non-PIC objects [default=use both]],
242 pic_mode="$withval", pic_mode=default)
243 test x"$pic_mode" = xyes && libtool_flags="$libtool_flags --prefer-pic"
244 test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
245
246 # Some flags need to be propagated to the compiler or linker for good
247 # libtool support.
248 case "$host" in
249 *-*-irix6*)
250 # Find out which ABI we are using.
251 echo '[#]line __oline__ "configure"' > conftest.$ac_ext
252 if AC_TRY_EVAL(ac_compile); then
253 case "`/usr/bin/file conftest.o`" in
254 *32-bit*)
255 LD="${LD-ld} -32"
256 ;;
257 *N32*)
258 LD="${LD-ld} -n32"
259 ;;
260 *64-bit*)
261 LD="${LD-ld} -64"
262 ;;
263 esac
264 fi
265 rm -rf conftest*
266 ;;
267
268 *-*-sco3.2v5*)
269 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
270 SAVE_CFLAGS="$CFLAGS"
271 CFLAGS="$CFLAGS -belf"
272 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
273 [AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])])
274 if test x"$lt_cv_cc_needs_belf" != x"yes"; then
275 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
276 CFLAGS="$SAVE_CFLAGS"
277 fi
278 ;;
279
280 ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
281 [*-*-cygwin* | *-*-mingw*)
282 AC_CHECK_TOOL(DLLTOOL, dlltool, false)
283 AC_CHECK_TOOL(AS, as, false)
284 AC_CHECK_TOOL(OBJDUMP, objdump, false)
285
286 # recent cygwin and mingw systems supply a stub DllMain which the user
287 # can override, but on older systems we have to supply one
288 AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain,
289 [AC_TRY_LINK([DllMain (0, 0, 0);],
290 [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);],
291 [lt_cv_need_dllmain=yes],[lt_cv_need_dllmain=no])])
292
293 case $host in
294 *-*-cygwin*)
295 # cygwin systems need to pass --dll to the linker, and not link
296 # crt.o which will require a WinMain@16 definition.
297 lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;;
298 *-*-mingw*)
299 # old mingw systems require "-dll" to link a DLL, while more recent ones
300 # require "-mdll"
301 SAVE_CFLAGS="$CFLAGS"
302 CFLAGS="$CFLAGS -mdll"
303 AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch,
304 [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])])
305 CFLAGS="$SAVE_CFLAGS" ;;
306 esac
307 ;;
308 ])
309 esac
310 ])
311
312 # AC_LIBTOOL_DLOPEN - enable checks for dlopen support
313 AC_DEFUN(AC_LIBTOOL_DLOPEN, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
314
315 # AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's
316 AC_DEFUN(AC_LIBTOOL_WIN32_DLL, [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
317
318 # AC_ENABLE_SHARED - implement the --enable-shared flag
319 # Usage: AC_ENABLE_SHARED[(DEFAULT)]
320 # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
321 # `yes'.
322 AC_DEFUN(AC_ENABLE_SHARED, [dnl
323 define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
324 AC_ARG_ENABLE(shared,
325 changequote(<<, >>)dnl
326 << --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
327 changequote([, ])dnl
328 [p=${PACKAGE-default}
329 case "$enableval" in
330 yes) enable_shared=yes ;;
331 no) enable_shared=no ;;
332 *)
333 enable_shared=no
334 # Look at the argument we got. We use all the common list separators.
335 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
336 for pkg in $enableval; do
337 if test "X$pkg" = "X$p"; then
338 enable_shared=yes
339 fi
340 done
341 IFS="$ac_save_ifs"
342 ;;
343 esac],
344 enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl
345 ])
346
347 # AC_DISABLE_SHARED - set the default shared flag to --disable-shared
348 AC_DEFUN(AC_DISABLE_SHARED, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
349 AC_ENABLE_SHARED(no)])
350
351 # AC_ENABLE_STATIC - implement the --enable-static flag
352 # Usage: AC_ENABLE_STATIC[(DEFAULT)]
353 # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
354 # `yes'.
355 AC_DEFUN(AC_ENABLE_STATIC, [dnl
356 define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
357 AC_ARG_ENABLE(static,
358 changequote(<<, >>)dnl
359 << --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
360 changequote([, ])dnl
361 [p=${PACKAGE-default}
362 case "$enableval" in
363 yes) enable_static=yes ;;
364 no) enable_static=no ;;
365 *)
366 enable_static=no
367 # Look at the argument we got. We use all the common list separators.
368 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
369 for pkg in $enableval; do
370 if test "X$pkg" = "X$p"; then
371 enable_static=yes
372 fi
373 done
374 IFS="$ac_save_ifs"
375 ;;
376 esac],
377 enable_static=AC_ENABLE_STATIC_DEFAULT)dnl
378 ])
379
380 # AC_DISABLE_STATIC - set the default static flag to --disable-static
381 AC_DEFUN(AC_DISABLE_STATIC, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
382 AC_ENABLE_STATIC(no)])
383
384
385 # AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag
386 # Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)]
387 # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
388 # `yes'.
389 AC_DEFUN(AC_ENABLE_FAST_INSTALL, [dnl
390 define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
391 AC_ARG_ENABLE(fast-install,
392 changequote(<<, >>)dnl
393 << --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT],
394 changequote([, ])dnl
395 [p=${PACKAGE-default}
396 case "$enableval" in
397 yes) enable_fast_install=yes ;;
398 no) enable_fast_install=no ;;
399 *)
400 enable_fast_install=no
401 # Look at the argument we got. We use all the common list separators.
402 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
403 for pkg in $enableval; do
404 if test "X$pkg" = "X$p"; then
405 enable_fast_install=yes
406 fi
407 done
408 IFS="$ac_save_ifs"
409 ;;
410 esac],
411 enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl
412 ])
413
414 # AC_ENABLE_FAST_INSTALL - set the default to --disable-fast-install
415 AC_DEFUN(AC_DISABLE_FAST_INSTALL, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
416 AC_ENABLE_FAST_INSTALL(no)])
417
418 # AC_PROG_LD - find the path to the GNU or non-GNU linker
419 AC_DEFUN(AC_PROG_LD,
420 [AC_ARG_WITH(gnu-ld,
421 [ --with-gnu-ld assume the C compiler uses GNU ld [default=no]],
422 test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
423 AC_REQUIRE([AC_PROG_CC])dnl
424 AC_REQUIRE([AC_CANONICAL_HOST])dnl
425 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
426 ac_prog=ld
427 if test "$ac_cv_prog_gcc" = yes; then
428 # Check if gcc -print-prog-name=ld gives a path.
429 AC_MSG_CHECKING([for ld used by GCC])
430 case $host in
431 *-*-mingw*)
432 # gcc leaves a trailing carriage return which upsets mingw
433 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
434 *)
435 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
436 esac
437 case "$ac_prog" in
438 # Accept absolute paths.
439 changequote(,)dnl
440 [\\/]* | [A-Za-z]:[\\/]*)
441 re_direlt='/[^/][^/]*/\.\./'
442 changequote([,])dnl
443 # Canonicalize the path of ld
444 ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
445 while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
446 ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
447 done
448 test -z "$LD" && LD="$ac_prog"
449 ;;
450 "")
451 # If it fails, then pretend we aren't using GCC.
452 ac_prog=ld
453 ;;
454 *)
455 # If it is relative, then search for the first ld in PATH.
456 with_gnu_ld=unknown
457 ;;
458 esac
459 elif test "$with_gnu_ld" = yes; then
460 AC_MSG_CHECKING([for GNU ld])
461 else
462 AC_MSG_CHECKING([for non-GNU ld])
463 fi
464 AC_CACHE_VAL(ac_cv_path_LD,
465 [if test -z "$LD"; then
466 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
467 for ac_dir in $PATH; do
468 test -z "$ac_dir" && ac_dir=.
469 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
470 ac_cv_path_LD="$ac_dir/$ac_prog"
471 # Check to see if the program is GNU ld. I'd rather use --version,
472 # but apparently some GNU ld's only accept -v.
473 # Break only if it was the GNU/non-GNU ld that we prefer.
474 if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
475 test "$with_gnu_ld" != no && break
476 else
477 test "$with_gnu_ld" != yes && break
478 fi
479 fi
480 done
481 IFS="$ac_save_ifs"
482 else
483 ac_cv_path_LD="$LD" # Let the user override the test with a path.
484 fi])
485 LD="$ac_cv_path_LD"
486 if test -n "$LD"; then
487 AC_MSG_RESULT($LD)
488 else
489 AC_MSG_RESULT(no)
490 fi
491 test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
492 AC_SUBST(LD)
493 AC_PROG_LD_GNU
494 ])
495
496 AC_DEFUN(AC_PROG_LD_GNU,
497 [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld,
498 [# I'd rather use --version here, but apparently some GNU ld's only accept -v.
499 if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
500 ac_cv_prog_gnu_ld=yes
501 else
502 ac_cv_prog_gnu_ld=no
503 fi])
504 ])
505
506 # AC_PROG_NM - find the path to a BSD-compatible name lister
507 AC_DEFUN(AC_PROG_NM,
508 [AC_MSG_CHECKING([for BSD-compatible nm])
509 AC_CACHE_VAL(ac_cv_path_NM,
510 [if test -n "$NM"; then
511 # Let the user override the test.
512 ac_cv_path_NM="$NM"
513 else
514 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
515 for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
516 test -z "$ac_dir" && ac_dir=.
517 if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext ; then
518 # Check to see if the nm accepts a BSD-compat flag.
519 # Adding the `sed 1q' prevents false positives on HP-UX, which says:
520 # nm: unknown option "B" ignored
521 if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
522 ac_cv_path_NM="$ac_dir/nm -B"
523 break
524 elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
525 ac_cv_path_NM="$ac_dir/nm -p"
526 break
527 else
528 ac_cv_path_NM=${ac_cv_path_NM="$ac_dir/nm"} # keep the first match, but
529 continue # so that we can try to find one that supports BSD flags
530 fi
531 fi
532 done
533 IFS="$ac_save_ifs"
534 test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm
535 fi])
536 NM="$ac_cv_path_NM"
537 AC_MSG_RESULT([$NM])
538 AC_SUBST(NM)
539 ])
540
541 # AC_CHECK_LIBM - check for math library
542 AC_DEFUN(AC_CHECK_LIBM,
543 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
544 LIBM=
545 case "$host" in
546 *-*-beos* | *-*-cygwin*)
547 # These system don't have libm
548 ;;
549 *-ncr-sysv4.3*)
550 AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
551 AC_CHECK_LIB(m, main, LIBM="$LIBM -lm")
552 ;;
553 *)
554 AC_CHECK_LIB(m, main, LIBM="-lm")
555 ;;
556 esac
557 ])
558
559 # AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
560 # the libltdl convenience library, adds --enable-ltdl-convenience to
561 # the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor
562 # is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed
563 # to be `${top_builddir}/libltdl'. Make sure you start DIR with
564 # '${top_builddir}/' (note the single quotes!) if your package is not
565 # flat, and, if you're not using automake, define top_builddir as
566 # appropriate in the Makefiles.
567 AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
568 case "$enable_ltdl_convenience" in
569 no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
570 "") enable_ltdl_convenience=yes
571 ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
572 esac
573 LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdlc.la
574 INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl'])
575 ])
576
577 # AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
578 # the libltdl installable library, and adds --enable-ltdl-install to
579 # the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor
580 # is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed
581 # to be `${top_builddir}/libltdl'. Make sure you start DIR with
582 # '${top_builddir}/' (note the single quotes!) if your package is not
583 # flat, and, if you're not using automake, define top_builddir as
584 # appropriate in the Makefiles.
585 # In the future, this macro may have to be called after AC_PROG_LIBTOOL.
586 AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
587 AC_CHECK_LIB(ltdl, main,
588 [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
589 [if test x"$enable_ltdl_install" = xno; then
590 AC_MSG_WARN([libltdl not installed, but installation disabled])
591 else
592 enable_ltdl_install=yes
593 fi
594 ])
595 if test x"$enable_ltdl_install" = x"yes"; then
596 ac_configure_args="$ac_configure_args --enable-ltdl-install"
597 LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdl.la
598 INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl'])
599 else
600 ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
601 LIBLTDL="-lltdl"
602 INCLTDL=
603 fi
604 ])
605
606 dnl old names
607 AC_DEFUN(AM_PROG_LIBTOOL, [indir([AC_PROG_LIBTOOL])])dnl
608 AC_DEFUN(AM_ENABLE_SHARED, [indir([AC_ENABLE_SHARED], $@)])dnl
609 AC_DEFUN(AM_ENABLE_STATIC, [indir([AC_ENABLE_STATIC], $@)])dnl
610 AC_DEFUN(AM_DISABLE_SHARED, [indir([AC_DISABLE_SHARED], $@)])dnl
611 AC_DEFUN(AM_DISABLE_STATIC, [indir([AC_DISABLE_STATIC], $@)])dnl
612 AC_DEFUN(AM_PROG_LD, [indir([AC_PROG_LD])])dnl
613 AC_DEFUN(AM_PROG_NM, [indir([AC_PROG_NM])])dnl
614
615 dnl This is just to silence aclocal about the macro not being used
616 ifelse([AC_DISABLE_FAST_INSTALL])dnl
617
618
619 dnl Thanks to Ingo Ruhnke <grumbel@gmx.de>
620 AC_DEFUN(MY_EXPAND_DIR, [
621 $1=$2
622 $1=`(
623 test "x$prefix" = xNONE && prefix=${ac_default_prefix}
624 test "x$exec_prefix" = xNONE && exec_prefix=${prefix}
625 eval echo \""[$]$1"\"
626 )`
627 ])
628
629
630 dnl AM_PROG_LEX
631 dnl Look for flex, lex or missing, then run AC_PROG_LEX and AC_DECL_YYTEXT
632 AC_DEFUN(AM_PROG_LEX,
633 [missing_dir=ifelse([$1],,`cd $ac_aux_dir && pwd`,$1)
634 AC_CHECK_PROGS(LEX, flex lex, "$missing_dir/missing flex")
635 AC_PROG_LEX
636 AC_DECL_YYTEXT])
637
638 # Do all the work for Automake. This macro actually does too much --
639 # some checks are only needed if your package does certain things.
640 # But this isn't really a big deal.
641
642 # serial 1
643
644 dnl Usage:
645 dnl AM_INIT_AUTOMAKE(package,version, [no-define])
646
647 AC_DEFUN(AM_INIT_AUTOMAKE,
648 [AC_REQUIRE([AC_PROG_INSTALL])
649 PACKAGE=[$1]
650 AC_SUBST(PACKAGE)
651 VERSION=[$2]
652 AC_SUBST(VERSION)
653 dnl test to see if srcdir already configured
654 if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
655 AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
656 fi
657 ifelse([$3],,
658 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
659 AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package]))
660 AC_REQUIRE([AM_SANITY_CHECK])
661 AC_REQUIRE([AC_ARG_PROGRAM])
662 dnl FIXME This is truly gross.
663 missing_dir=`cd $ac_aux_dir && pwd`
664 AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir)
665 AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
666 AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir)
667 AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
668 AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
669 AC_REQUIRE([AC_PROG_MAKE_SET])])
670
671 #
672 # Check to make sure that the build environment is sane.
673 #
674
675 AC_DEFUN(AM_SANITY_CHECK,
676 [AC_MSG_CHECKING([whether build environment is sane])
677 # Just in case
678 sleep 1
679 echo timestamp > conftestfile
680 # Do `set' in a subshell so we don't clobber the current shell's
681 # arguments. Must try -L first in case configure is actually a
682 # symlink; some systems play weird games with the mod time of symlinks
683 # (eg FreeBSD returns the mod time of the symlink's containing
684 # directory).
685 if (
686 set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
687 if test "[$]*" = "X"; then
688 # -L didn't work.
689 set X `ls -t $srcdir/configure conftestfile`
690 fi
691 if test "[$]*" != "X $srcdir/configure conftestfile" \
692 && test "[$]*" != "X conftestfile $srcdir/configure"; then
693
694 # If neither matched, then we have a broken ls. This can happen
695 # if, for instance, CONFIG_SHELL is bash and it inherits a
696 # broken ls alias from the environment. This has actually
697 # happened. Such a system could not be considered "sane".
698 AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
699 alias in your environment])
700 fi
701
702 test "[$]2" = conftestfile
703 )
704 then
705 # Ok.
706 :
707 else
708 AC_MSG_ERROR([newly created file is older than distributed files!
709 Check your system clock])
710 fi
711 rm -f conftest*
712 AC_MSG_RESULT(yes)])
713
714 dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
715 dnl The program must properly implement --version.
716 AC_DEFUN(AM_MISSING_PROG,
717 [AC_MSG_CHECKING(for working $2)
718 # Run test in a subshell; some versions of sh will print an error if
719 # an executable is not found, even if stderr is redirected.
720 # Redirect stdin to placate older versions of autoconf. Sigh.
721 if ($2 --version) < /dev/null > /dev/null 2>&1; then
722 $1=$2
723 AC_MSG_RESULT(found)
724 else
725 $1="$3/missing $2"
726 AC_MSG_RESULT(missing)
727 fi
728 AC_SUBST($1)])
729
730 # Like AC_CONFIG_HEADER, but automatically create stamp file.
731
732 AC_DEFUN(AM_CONFIG_HEADER,
733 [AC_PREREQ([2.12])
734 AC_CONFIG_HEADER([$1])
735 dnl When config.status generates a header, we must update the stamp-h file.
736 dnl This file resides in the same directory as the config header
737 dnl that is generated. We must strip everything past the first ":",
738 dnl and everything past the last "/".
739 AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl
740 ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>,
741 <<test -z "<<$>>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>,
742 <<am_indx=1
743 for am_file in <<$1>>; do
744 case " <<$>>CONFIG_HEADERS " in
745 *" <<$>>am_file "*<<)>>
746 echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx
747 ;;
748 esac
749 am_indx=`expr "<<$>>am_indx" + 1`
750 done<<>>dnl>>)
751 changequote([,]))])
752
0 #! /bin/sh
1 # Attempt to guess a canonical system name.
2 # Copyright (C) 1992, 93, 94, 95, 96, 1997 Free Software Foundation, Inc.
3 #
4 # This file is free software; you can redistribute it and/or modify it
5 # under the terms of the GNU General Public License as published by
6 # the Free Software Foundation; either version 2 of the License, or
7 # (at your option) any later version.
8 #
9 # This program is distributed in the hope that it will be useful, but
10 # WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 # General Public License for more details.
13 #
14 # You should have received a copy of the GNU General Public License
15 # along with this program; if not, write to the Free Software
16 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17 #
18 # As a special exception to the GNU General Public License, if you
19 # distribute this file as part of a program that contains a
20 # configuration script generated by Autoconf, you may include it under
21 # the same distribution terms that you use for the rest of that program.
22
23 # Written by Per Bothner <bothner@cygnus.com>.
24 # The master version of this file is at the FSF in /home/gd/gnu/lib.
25 #
26 # This script attempts to guess a canonical system name similar to
27 # config.sub. If it succeeds, it prints the system name on stdout, and
28 # exits with 0. Otherwise, it exits with 1.
29 #
30 # The plan is that this can be called by configure scripts if you
31 # don't specify an explicit system type (host/target name).
32 #
33 # Only a few systems have been added to this list; please add others
34 # (but try to keep the structure clean).
35 #
36
37 # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
38 # (ghazi@noc.rutgers.edu 8/24/94.)
39 if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
40 PATH=$PATH:/.attbin ; export PATH
41 fi
42
43 UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
44 UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
45 UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
46 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
47
48 trap 'rm -f dummy.c dummy.o dummy; exit 1' 1 2 15
49
50 # Note: order is significant - the case branches are not exclusive.
51
52 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
53 alpha:OSF1:*:*)
54 if test $UNAME_RELEASE = "V4.0"; then
55 UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
56 fi
57 # A Vn.n version is a released version.
58 # A Tn.n version is a released field test version.
59 # A Xn.n version is an unreleased experimental baselevel.
60 # 1.2 uses "1.2" for uname -r.
61 cat <<EOF >dummy.s
62 .globl main
63 .ent main
64 main:
65 .frame \$30,0,\$26,0
66 .prologue 0
67 .long 0x47e03d80 # implver $0
68 lda \$2,259
69 .long 0x47e20c21 # amask $2,$1
70 srl \$1,8,\$2
71 sll \$2,2,\$2
72 sll \$0,3,\$0
73 addl \$1,\$0,\$0
74 addl \$2,\$0,\$0
75 ret \$31,(\$26),1
76 .end main
77 EOF
78 ${CC-cc} dummy.s -o dummy 2>/dev/null
79 if test "$?" = 0 ; then
80 ./dummy
81 case "$?" in
82 7)
83 UNAME_MACHINE="alpha"
84 ;;
85 15)
86 UNAME_MACHINE="alphaev5"
87 ;;
88 14)
89 UNAME_MACHINE="alphaev56"
90 ;;
91 10)
92 UNAME_MACHINE="alphapca56"
93 ;;
94 16)
95 UNAME_MACHINE="alphaev6"
96 ;;
97 esac
98 fi
99 rm -f dummy.s dummy
100 echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr [[A-Z]] [[a-z]]`
101 exit 0 ;;
102 21064:Windows_NT:50:3)
103 echo alpha-dec-winnt3.5
104 exit 0 ;;
105 Amiga*:UNIX_System_V:4.0:*)
106 echo m68k-cbm-sysv4
107 exit 0;;
108 amiga:NetBSD:*:*)
109 echo m68k-cbm-netbsd${UNAME_RELEASE}
110 exit 0 ;;
111 amiga:OpenBSD:*:*)
112 echo m68k-unknown-openbsd${UNAME_RELEASE}
113 exit 0 ;;
114 arc64:OpenBSD:*:*)
115 echo mips64el-unknown-openbsd${UNAME_RELEASE}
116 exit 0 ;;
117 arc:OpenBSD:*:*)
118 echo mipsel-unknown-openbsd${UNAME_RELEASE}
119 exit 0 ;;
120 hkmips:OpenBSD:*:*)
121 echo mips-unknown-openbsd${UNAME_RELEASE}
122 exit 0 ;;
123 pmax:OpenBSD:*:*)
124 echo mipsel-unknown-openbsd${UNAME_RELEASE}
125 exit 0 ;;
126 sgi:OpenBSD:*:*)
127 echo mips-unknown-openbsd${UNAME_RELEASE}
128 exit 0 ;;
129 wgrisc:OpenBSD:*:*)
130 echo mipsel-unknown-openbsd${UNAME_RELEASE}
131 exit 0 ;;
132 arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
133 echo arm-acorn-riscix${UNAME_RELEASE}
134 exit 0;;
135 arm32:NetBSD:*:*)
136 echo arm-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
137 exit 0 ;;
138 SR2?01:HI-UX/MPP:*:*)
139 echo hppa1.1-hitachi-hiuxmpp
140 exit 0;;
141 Pyramid*:OSx*:*:*|MIS*:OSx*:*:*)
142 # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
143 if test "`(/bin/universe) 2>/dev/null`" = att ; then
144 echo pyramid-pyramid-sysv3
145 else
146 echo pyramid-pyramid-bsd
147 fi
148 exit 0 ;;
149 NILE:*:*:dcosx)
150 echo pyramid-pyramid-svr4
151 exit 0 ;;
152 sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
153 echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
154 exit 0 ;;
155 i86pc:SunOS:5.*:*)
156 echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
157 exit 0 ;;
158 sun4*:SunOS:6*:*)
159 # According to config.sub, this is the proper way to canonicalize
160 # SunOS6. Hard to guess exactly what SunOS6 will be like, but
161 # it's likely to be more like Solaris than SunOS4.
162 echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
163 exit 0 ;;
164 sun4*:SunOS:*:*)
165 case "`/usr/bin/arch -k`" in
166 Series*|S4*)
167 UNAME_RELEASE=`uname -v`
168 ;;
169 esac
170 # Japanese Language versions have a version number like `4.1.3-JL'.
171 echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
172 exit 0 ;;
173 sun3*:SunOS:*:*)
174 echo m68k-sun-sunos${UNAME_RELEASE}
175 exit 0 ;;
176 sun*:*:4.2BSD:*)
177 UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
178 test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
179 case "`/bin/arch`" in
180 sun3)
181 echo m68k-sun-sunos${UNAME_RELEASE}
182 ;;
183 sun4)
184 echo sparc-sun-sunos${UNAME_RELEASE}
185 ;;
186 esac
187 exit 0 ;;
188 aushp:SunOS:*:*)
189 echo sparc-auspex-sunos${UNAME_RELEASE}
190 exit 0 ;;
191 atari*:NetBSD:*:*)
192 echo m68k-atari-netbsd${UNAME_RELEASE}
193 exit 0 ;;
194 atari*:OpenBSD:*:*)
195 echo m68k-unknown-openbsd${UNAME_RELEASE}
196 exit 0 ;;
197 sun3*:NetBSD:*:*)
198 echo m68k-sun-netbsd${UNAME_RELEASE}
199 exit 0 ;;
200 sun3*:OpenBSD:*:*)
201 echo m68k-unknown-openbsd${UNAME_RELEASE}
202 exit 0 ;;
203 mac68k:NetBSD:*:*)
204 echo m68k-apple-netbsd${UNAME_RELEASE}
205 exit 0 ;;
206 mac68k:OpenBSD:*:*)
207 echo m68k-unknown-openbsd${UNAME_RELEASE}
208 exit 0 ;;
209 mvme68k:OpenBSD:*:*)
210 echo m68k-unknown-openbsd${UNAME_RELEASE}
211 exit 0 ;;
212 mvme88k:OpenBSD:*:*)
213 echo m88k-unknown-openbsd${UNAME_RELEASE}
214 exit 0 ;;
215 powerpc:machten:*:*)
216 echo powerpc-apple-machten${UNAME_RELEASE}
217 exit 0 ;;
218 RISC*:Mach:*:*)
219 echo mips-dec-mach_bsd4.3
220 exit 0 ;;
221 RISC*:ULTRIX:*:*)
222 echo mips-dec-ultrix${UNAME_RELEASE}
223 exit 0 ;;
224 VAX*:ULTRIX*:*:*)
225 echo vax-dec-ultrix${UNAME_RELEASE}
226 exit 0 ;;
227 2020:CLIX:*:*)
228 echo clipper-intergraph-clix${UNAME_RELEASE}
229 exit 0 ;;
230 mips:*:*:UMIPS | mips:*:*:RISCos)
231 sed 's/^ //' << EOF >dummy.c
232 int main (argc, argv) int argc; char **argv; {
233 #if defined (host_mips) && defined (MIPSEB)
234 #if defined (SYSTYPE_SYSV)
235 printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
236 #endif
237 #if defined (SYSTYPE_SVR4)
238 printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
239 #endif
240 #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
241 printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
242 #endif
243 #endif
244 exit (-1);
245 }
246 EOF
247 ${CC-cc} dummy.c -o dummy \
248 && ./dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
249 && rm dummy.c dummy && exit 0
250 rm -f dummy.c dummy
251 echo mips-mips-riscos${UNAME_RELEASE}
252 exit 0 ;;
253 Night_Hawk:Power_UNIX:*:*)
254 echo powerpc-harris-powerunix
255 exit 0 ;;
256 m88k:CX/UX:7*:*)
257 echo m88k-harris-cxux7
258 exit 0 ;;
259 m88k:*:4*:R4*)
260 echo m88k-motorola-sysv4
261 exit 0 ;;
262 m88k:*:3*:R3*)
263 echo m88k-motorola-sysv3
264 exit 0 ;;
265 AViiON:dgux:*:*)
266 # DG/UX returns AViiON for all architectures
267 UNAME_PROCESSOR=`/usr/bin/uname -p`
268 if [ $UNAME_PROCESSOR = mc88100 -o $UNAME_PROCESSOR = mc88110 ] ; then
269 if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx \
270 -o ${TARGET_BINARY_INTERFACE}x = x ] ; then
271 echo m88k-dg-dgux${UNAME_RELEASE}
272 else
273 echo m88k-dg-dguxbcs${UNAME_RELEASE}
274 fi
275 else echo i586-dg-dgux${UNAME_RELEASE}
276 fi
277 exit 0 ;;
278 M88*:DolphinOS:*:*) # DolphinOS (SVR3)
279 echo m88k-dolphin-sysv3
280 exit 0 ;;
281 M88*:*:R3*:*)
282 # Delta 88k system running SVR3
283 echo m88k-motorola-sysv3
284 exit 0 ;;
285 XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
286 echo m88k-tektronix-sysv3
287 exit 0 ;;
288 Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
289 echo m68k-tektronix-bsd
290 exit 0 ;;
291 *:IRIX*:*:*)
292 echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
293 exit 0 ;;
294 ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
295 echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
296 exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX '
297 i?86:AIX:*:*)
298 echo i386-ibm-aix
299 exit 0 ;;
300 *:AIX:2:3)
301 if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
302 sed 's/^ //' << EOF >dummy.c
303 #include <sys/systemcfg.h>
304
305 main()
306 {
307 if (!__power_pc())
308 exit(1);
309 puts("powerpc-ibm-aix3.2.5");
310 exit(0);
311 }
312 EOF
313 ${CC-cc} dummy.c -o dummy && ./dummy && rm dummy.c dummy && exit 0
314 rm -f dummy.c dummy
315 echo rs6000-ibm-aix3.2.5
316 elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
317 echo rs6000-ibm-aix3.2.4
318 else
319 echo rs6000-ibm-aix3.2
320 fi
321 exit 0 ;;
322 *:AIX:*:4)
323 if /usr/sbin/lsattr -EHl proc0 | grep POWER >/dev/null 2>&1; then
324 IBM_ARCH=rs6000
325 else
326 IBM_ARCH=powerpc
327 fi
328 if [ -x /usr/bin/oslevel ] ; then
329 IBM_REV=`/usr/bin/oslevel`
330 else
331 IBM_REV=4.${UNAME_RELEASE}
332 fi
333 echo ${IBM_ARCH}-ibm-aix${IBM_REV}
334 exit 0 ;;
335 *:AIX:*:*)
336 echo rs6000-ibm-aix
337 exit 0 ;;
338 ibmrt:4.4BSD:*|romp-ibm:BSD:*)
339 echo romp-ibm-bsd4.4
340 exit 0 ;;
341 ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC NetBSD and
342 echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
343 exit 0 ;; # report: romp-ibm BSD 4.3
344 *:BOSX:*:*)
345 echo rs6000-bull-bosx
346 exit 0 ;;
347 DPX/2?00:B.O.S.:*:*)
348 echo m68k-bull-sysv3
349 exit 0 ;;
350 9000/[34]??:4.3bsd:1.*:*)
351 echo m68k-hp-bsd
352 exit 0 ;;
353 hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
354 echo m68k-hp-bsd4.4
355 exit 0 ;;
356 9000/[3478]??:HP-UX:*:*)
357 case "${UNAME_MACHINE}" in
358 9000/31? ) HP_ARCH=m68000 ;;
359 9000/[34]?? ) HP_ARCH=m68k ;;
360 9000/7?? | 9000/8?[1679] ) HP_ARCH=hppa1.1 ;;
361 9000/8?? ) HP_ARCH=hppa1.0 ;;
362 esac
363 HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
364 echo ${HP_ARCH}-hp-hpux${HPUX_REV}
365 exit 0 ;;
366 3050*:HI-UX:*:*)
367 sed 's/^ //' << EOF >dummy.c
368 #include <unistd.h>
369 int
370 main ()
371 {
372 long cpu = sysconf (_SC_CPU_VERSION);
373 /* The order matters, because CPU_IS_HP_MC68K erroneously returns
374 true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
375 results, however. */
376 if (CPU_IS_PA_RISC (cpu))
377 {
378 switch (cpu)
379 {
380 case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
381 case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
382 case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
383 default: puts ("hppa-hitachi-hiuxwe2"); break;
384 }
385 }
386 else if (CPU_IS_HP_MC68K (cpu))
387 puts ("m68k-hitachi-hiuxwe2");
388 else puts ("unknown-hitachi-hiuxwe2");
389 exit (0);
390 }
391 EOF
392 ${CC-cc} dummy.c -o dummy && ./dummy && rm dummy.c dummy && exit 0
393 rm -f dummy.c dummy
394 echo unknown-hitachi-hiuxwe2
395 exit 0 ;;
396 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
397 echo hppa1.1-hp-bsd
398 exit 0 ;;
399 9000/8??:4.3bsd:*:*)
400 echo hppa1.0-hp-bsd
401 exit 0 ;;
402 hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
403 echo hppa1.1-hp-osf
404 exit 0 ;;
405 hp8??:OSF1:*:*)
406 echo hppa1.0-hp-osf
407 exit 0 ;;
408 i?86:OSF1:*:*)
409 if [ -x /usr/sbin/sysversion ] ; then
410 echo ${UNAME_MACHINE}-unknown-osf1mk
411 else
412 echo ${UNAME_MACHINE}-unknown-osf1
413 fi
414 exit 0 ;;
415 parisc*:Lites*:*:*)
416 echo hppa1.1-hp-lites
417 exit 0 ;;
418 C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
419 echo c1-convex-bsd
420 exit 0 ;;
421 C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
422 if getsysinfo -f scalar_acc
423 then echo c32-convex-bsd
424 else echo c2-convex-bsd
425 fi
426 exit 0 ;;
427 C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
428 echo c34-convex-bsd
429 exit 0 ;;
430 C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
431 echo c38-convex-bsd
432 exit 0 ;;
433 C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
434 echo c4-convex-bsd
435 exit 0 ;;
436 CRAY*X-MP:*:*:*)
437 echo xmp-cray-unicos
438 exit 0 ;;
439 CRAY*Y-MP:*:*:*)
440 echo ymp-cray-unicos${UNAME_RELEASE}
441 exit 0 ;;
442 CRAY*[A-Z]90:*:*:*)
443 echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
444 | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
445 -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
446 exit 0 ;;
447 CRAY*TS:*:*:*)
448 echo t90-cray-unicos${UNAME_RELEASE}
449 exit 0 ;;
450 CRAY-2:*:*:*)
451 echo cray2-cray-unicos
452 exit 0 ;;
453 F300:UNIX_System_V:*:*)
454 FUJITSU_SYS=`uname -p | tr [A-Z] [a-z] | sed -e 's/\///'`
455 FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
456 echo "f300-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
457 exit 0 ;;
458 F301:UNIX_System_V:*:*)
459 echo f301-fujitsu-uxpv`echo $UNAME_RELEASE | sed 's/ .*//'`
460 exit 0 ;;
461 hp3[0-9][05]:NetBSD:*:*)
462 echo m68k-hp-netbsd${UNAME_RELEASE}
463 exit 0 ;;
464 hp300:OpenBSD:*:*)
465 echo m68k-unknown-openbsd${UNAME_RELEASE}
466 exit 0 ;;
467 i?86:BSD/386:*:* | *:BSD/OS:*:*)
468 echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
469 exit 0 ;;
470 *:FreeBSD:*:*)
471 echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
472 exit 0 ;;
473 *:NetBSD:*:*)
474 echo ${UNAME_MACHINE}-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
475 exit 0 ;;
476 *:OpenBSD:*:*)
477 echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
478 exit 0 ;;
479 i*:CYGWIN*:*)
480 echo i386-pc-cygwin32
481 exit 0 ;;
482 i*:MINGW*:*)
483 echo i386-pc-mingw32
484 exit 0 ;;
485 p*:CYGWIN*:*)
486 echo powerpcle-unknown-cygwin32
487 exit 0 ;;
488 prep*:SunOS:5.*:*)
489 echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
490 exit 0 ;;
491 *:GNU:*:*)
492 echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
493 exit 0 ;;
494 *:Linux:*:*)
495 # The BFD linker knows what the default object file format is, so
496 # first see if it will tell us.
497 ld_help_string=`ld --help 2>&1`
498 ld_supported_emulations=`echo $ld_help_string \
499 | sed -ne '/supported emulations:/!d
500 s/[ ][ ]*/ /g
501 s/.*supported emulations: *//
502 s/ .*//
503 p'`
504 case "$ld_supported_emulations" in
505 i?86linux) echo "${UNAME_MACHINE}-pc-linux-gnuaout" ; exit 0 ;;
506 i?86coff) echo "${UNAME_MACHINE}-pc-linux-gnucoff" ; exit 0 ;;
507 sparclinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
508 m68klinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
509 elf32ppc) echo "powerpc-unknown-linux-gnu" ; exit 0 ;;
510 esac
511
512 if test "${UNAME_MACHINE}" = "alpha" ; then
513 sed 's/^ //' <<EOF >dummy.s
514 .globl main
515 .ent main
516 main:
517 .frame \$30,0,\$26,0
518 .prologue 0
519 .long 0x47e03d80 # implver $0
520 lda \$2,259
521 .long 0x47e20c21 # amask $2,$1
522 srl \$1,8,\$2
523 sll \$2,2,\$2
524 sll \$0,3,\$0
525 addl \$1,\$0,\$0
526 addl \$2,\$0,\$0
527 ret \$31,(\$26),1
528 .end main
529 EOF
530 LIBC=""
531 ${CC-cc} dummy.s -o dummy 2>/dev/null
532 if test "$?" = 0 ; then
533 ./dummy
534 case "$?" in
535 7)
536 UNAME_MACHINE="alpha"
537 ;;
538 15)
539 UNAME_MACHINE="alphaev5"
540 ;;
541 14)
542 UNAME_MACHINE="alphaev56"
543 ;;
544 10)
545 UNAME_MACHINE="alphapca56"
546 ;;
547 16)
548 UNAME_MACHINE="alphaev6"
549 ;;
550 esac
551
552 objdump --private-headers dummy | \
553 grep ld.so.1 > /dev/null
554 if test "$?" = 0 ; then
555 LIBC="libc1"
556 fi
557 fi
558 rm -f dummy.s dummy
559 echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} ; exit 0
560 elif test "${UNAME_MACHINE}" = "mips" ; then
561 cat >dummy.c <<EOF
562 main(argc, argv)
563 int argc;
564 char *argv[];
565 {
566 #ifdef __MIPSEB__
567 printf ("%s-unknown-linux-gnu\n", argv[1]);
568 #endif
569 #ifdef __MIPSEL__
570 printf ("%sel-unknown-linux-gnu\n", argv[1]);
571 #endif
572 return 0;
573 }
574 EOF
575 ${CC-cc} dummy.c -o dummy 2>/dev/null && ./dummy "${UNAME_MACHINE}" && rm dummy.c dummy && exit 0
576 rm -f dummy.c dummy
577 else
578 # Either a pre-BFD a.out linker (linux-gnuoldld)
579 # or one that does not give us useful --help.
580 # GCC wants to distinguish between linux-gnuoldld and linux-gnuaout.
581 # If ld does not provide *any* "supported emulations:"
582 # that means it is gnuoldld.
583 echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations:"
584 test $? != 0 && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0
585
586 case "${UNAME_MACHINE}" in
587 i?86)
588 VENDOR=pc;
589 ;;
590 *)
591 VENDOR=unknown;
592 ;;
593 esac
594 # Determine whether the default compiler is a.out or elf
595 cat >dummy.c <<EOF
596 #include <features.h>
597 main(argc, argv)
598 int argc;
599 char *argv[];
600 {
601 #ifdef __ELF__
602 # ifdef __GLIBC__
603 # if __GLIBC__ >= 2
604 printf ("%s-${VENDOR}-linux-gnu\n", argv[1]);
605 # else
606 printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
607 # endif
608 # else
609 printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
610 # endif
611 #else
612 printf ("%s-${VENDOR}-linux-gnuaout\n", argv[1]);
613 #endif
614 return 0;
615 }
616 EOF
617 ${CC-cc} dummy.c -o dummy 2>/dev/null && ./dummy "${UNAME_MACHINE}" && rm dummy.c dummy && exit 0
618 rm -f dummy.c dummy
619 fi ;;
620 # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. earlier versions
621 # are messed up and put the nodename in both sysname and nodename.
622 i?86:DYNIX/ptx:4*:*)
623 echo i386-sequent-sysv4
624 exit 0 ;;
625 i?86:UNIX_SV:4.2MP:2.*)
626 # Unixware is an offshoot of SVR4, but it has its own version
627 # number series starting with 2...
628 # I am not positive that other SVR4 systems won't match this,
629 # I just have to hope. -- rms.
630 # Use sysv4.2uw... so that sysv4* matches it.
631 echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
632 exit 0 ;;
633 i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*)
634 if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
635 echo ${UNAME_MACHINE}-univel-sysv${UNAME_RELEASE}
636 else
637 echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE}
638 fi
639 exit 0 ;;
640 i?86:*:3.2:*)
641 if test -f /usr/options/cb.name; then
642 UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
643 echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
644 elif /bin/uname -X 2>/dev/null >/dev/null ; then
645 UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
646 (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
647 (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
648 && UNAME_MACHINE=i586
649 echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
650 else
651 echo ${UNAME_MACHINE}-pc-sysv32
652 fi
653 exit 0 ;;
654 pc:*:*:*)
655 # uname -m prints for DJGPP always 'pc', but it prints nothing about
656 # the processor, so we play safe by assuming i386.
657 echo i386-pc-msdosdjgpp
658 exit 0 ;;
659 Intel:Mach:3*:*)
660 echo i386-pc-mach3
661 exit 0 ;;
662 paragon:*:*:*)
663 echo i860-intel-osf1
664 exit 0 ;;
665 i860:*:4.*:*) # i860-SVR4
666 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
667 echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
668 else # Add other i860-SVR4 vendors below as they are discovered.
669 echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
670 fi
671 exit 0 ;;
672 mini*:CTIX:SYS*5:*)
673 # "miniframe"
674 echo m68010-convergent-sysv
675 exit 0 ;;
676 M68*:*:R3V[567]*:*)
677 test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
678 3[34]??:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
679 OS_REL=''
680 test -r /etc/.relid \
681 && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
682 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
683 && echo i486-ncr-sysv4.3${OS_REL} && exit 0
684 /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
685 && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
686 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
687 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
688 && echo i486-ncr-sysv4 && exit 0 ;;
689 m68*:LynxOS:2.*:*)
690 echo m68k-unknown-lynxos${UNAME_RELEASE}
691 exit 0 ;;
692 mc68030:UNIX_System_V:4.*:*)
693 echo m68k-atari-sysv4
694 exit 0 ;;
695 i?86:LynxOS:2.*:*)
696 echo i386-unknown-lynxos${UNAME_RELEASE}
697 exit 0 ;;
698 TSUNAMI:LynxOS:2.*:*)
699 echo sparc-unknown-lynxos${UNAME_RELEASE}
700 exit 0 ;;
701 rs6000:LynxOS:2.*:* | PowerPC:LynxOS:2.*:*)
702 echo rs6000-unknown-lynxos${UNAME_RELEASE}
703 exit 0 ;;
704 SM[BE]S:UNIX_SV:*:*)
705 echo mips-dde-sysv${UNAME_RELEASE}
706 exit 0 ;;
707 RM*:SINIX-*:*:*)
708 echo mips-sni-sysv4
709 exit 0 ;;
710 *:SINIX-*:*:*)
711 if uname -p 2>/dev/null >/dev/null ; then
712 UNAME_MACHINE=`(uname -p) 2>/dev/null`
713 echo ${UNAME_MACHINE}-sni-sysv4
714 else
715 echo ns32k-sni-sysv
716 fi
717 exit 0 ;;
718 PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
719 # says <Richard.M.Bartel@ccMail.Census.GOV>
720 echo i586-unisys-sysv4
721 exit 0 ;;
722 *:UNIX_System_V:4*:FTX*)
723 # From Gerald Hewes <hewes@openmarket.com>.
724 # How about differentiating between stratus architectures? -djm
725 echo hppa1.1-stratus-sysv4
726 exit 0 ;;
727 *:*:*:FTX*)
728 # From seanf@swdc.stratus.com.
729 echo i860-stratus-sysv4
730 exit 0 ;;
731 mc68*:A/UX:*:*)
732 echo m68k-apple-aux${UNAME_RELEASE}
733 exit 0 ;;
734 news*:NEWS-OS:*:6*)
735 echo mips-sony-newsos6
736 exit 0 ;;
737 R3000:*System_V*:*:* | R4000:UNIX_SYSV:*:*)
738 if [ -d /usr/nec ]; then
739 echo mips-nec-sysv${UNAME_RELEASE}
740 else
741 echo mips-unknown-sysv${UNAME_RELEASE}
742 fi
743 exit 0 ;;
744 esac
745
746 #echo '(No uname command or uname output not recognized.)' 1>&2
747 #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
748
749 cat >dummy.c <<EOF
750 #ifdef _SEQUENT_
751 # include <sys/types.h>
752 # include <sys/utsname.h>
753 #endif
754 main ()
755 {
756 #if defined (sony)
757 #if defined (MIPSEB)
758 /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
759 I don't know.... */
760 printf ("mips-sony-bsd\n"); exit (0);
761 #else
762 #include <sys/param.h>
763 printf ("m68k-sony-newsos%s\n",
764 #ifdef NEWSOS4
765 "4"
766 #else
767 ""
768 #endif
769 ); exit (0);
770 #endif
771 #endif
772
773 #if defined (__arm) && defined (__acorn) && defined (__unix)
774 printf ("arm-acorn-riscix"); exit (0);
775 #endif
776
777 #if defined (hp300) && !defined (hpux)
778 printf ("m68k-hp-bsd\n"); exit (0);
779 #endif
780
781 #if defined (NeXT)
782 #if !defined (__ARCHITECTURE__)
783 #define __ARCHITECTURE__ "m68k"
784 #endif
785 int version;
786 version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
787 printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
788 exit (0);
789 #endif
790
791 #if defined (MULTIMAX) || defined (n16)
792 #if defined (UMAXV)
793 printf ("ns32k-encore-sysv\n"); exit (0);
794 #else
795 #if defined (CMU)
796 printf ("ns32k-encore-mach\n"); exit (0);
797 #else
798 printf ("ns32k-encore-bsd\n"); exit (0);
799 #endif
800 #endif
801 #endif
802
803 #if defined (__386BSD__)
804 printf ("i386-pc-bsd\n"); exit (0);
805 #endif
806
807 #if defined (sequent)
808 #if defined (i386)
809 printf ("i386-sequent-dynix\n"); exit (0);
810 #endif
811 #if defined (ns32000)
812 printf ("ns32k-sequent-dynix\n"); exit (0);
813 #endif
814 #endif
815
816 #if defined (_SEQUENT_)
817 struct utsname un;
818
819 uname(&un);
820
821 if (strncmp(un.version, "V2", 2) == 0) {
822 printf ("i386-sequent-ptx2\n"); exit (0);
823 }
824 if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
825 printf ("i386-sequent-ptx1\n"); exit (0);
826 }
827 printf ("i386-sequent-ptx\n"); exit (0);
828
829 #endif
830
831 #if defined (vax)
832 #if !defined (ultrix)
833 printf ("vax-dec-bsd\n"); exit (0);
834 #else
835 printf ("vax-dec-ultrix\n"); exit (0);
836 #endif
837 #endif
838
839 #if defined (alliant) && defined (i860)
840 printf ("i860-alliant-bsd\n"); exit (0);
841 #endif
842
843 exit (1);
844 }
845 EOF
846
847 ${CC-cc} dummy.c -o dummy 2>/dev/null && ./dummy && rm dummy.c dummy && exit 0
848 rm -f dummy.c dummy
849
850 # Apollos put the system type in the environment.
851
852 test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }
853
854 # Convex versions that predate uname can use getsysinfo(1)
855
856 if [ -x /usr/convex/getsysinfo ]
857 then
858 case `getsysinfo -f cpu_type` in
859 c1*)
860 echo c1-convex-bsd
861 exit 0 ;;
862 c2*)
863 if getsysinfo -f scalar_acc
864 then echo c32-convex-bsd
865 else echo c2-convex-bsd
866 fi
867 exit 0 ;;
868 c34*)
869 echo c34-convex-bsd
870 exit 0 ;;
871 c38*)
872 echo c38-convex-bsd
873 exit 0 ;;
874 c4*)
875 echo c4-convex-bsd
876 exit 0 ;;
877 esac
878 fi
879
880 #echo '(Unable to guess system type)' 1>&2
881
882 exit 1
0 /* config.h.in. Generated automatically from configure.in by autoheader. */
0 This file contains any messages produced by compilers while
1 running configure, to aid debugging if configure makes a mistake.
2
3 configure:533: checking how to run the C preprocessor
4 configure:554: cc -E conftest.c >/dev/null 2>conftest.out
5 configure:618: checking for flex
6 configure:651: checking for flex
7 configure:685: checking for yywrap in -lfl
8 configure:704: cc -o conftest conftest.c -lfl 1>&5
9 configure:727: checking lex output file root
10 configure:748: checking whether yytext is a pointer
11 configure:767: cc -o conftest conftest.c -lfl 1>&5
12 configure:823: checking for a BSD compatible install
13 configure:876: checking whether build environment is sane
14 configure:933: checking whether make sets ${MAKE}
15 configure:979: checking for working aclocal
16 configure:992: checking for working autoconf
17 configure:1005: checking for working automake
18 configure:1018: checking for working autoheader
19 configure:1031: checking for working makeinfo
20 configure:1053: checking whether make sets ${MAKE}
21 configure:1084: checking for c++
22 configure:1116: checking whether the C++ compiler (c++ -O2 ) works
23 configure:1132: c++ -o conftest -O2 conftest.C 1>&5
24 configure:1158: checking whether the C++ compiler (c++ -O2 ) is a cross-compiler
25 configure:1163: checking whether we are using GNU C++
26 configure:1172: c++ -E conftest.C
27 configure:1191: checking whether c++ accepts -g
28 configure:1234: checking for a BSD compatible install
29 configure:1293: checking target system type
30 configure:1361: checking for sdl-config
31 configure:1396: checking for SDL - version >= 1.1.5
32 configure:1478: cc -o conftest -I/usr/local/include -I/usr/local/include/SDL -D_REENTRANT conftest.c -L/usr/local/lib -Wl,-rpath,/usr/local/lib -lSDL -lpthread 1>&5
33 configure:1561: checking for IMG_Load in -lSDL_image
34 configure:1580: cc -o conftest conftest.c -lSDL_image -L/usr/local/lib -Wl,-rpath,/usr/local/lib -lSDL -lpthread 1>&5
0 #! /bin/sh
1 # Generated automatically by configure.
2 # Run this file to recreate the current configuration.
3 # This directory was configured as follows,
4 # on host polidor:
5 #
6 # ./configure
7 #
8 # Compiler output produced by configure, useful for debugging
9 # configure, is in ./config.log if it exists.
10
11 ac_cs_usage="Usage: ./config.status [--recheck] [--version] [--help]"
12 for ac_option
13 do
14 case "$ac_option" in
15 -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
16 echo "running ${CONFIG_SHELL-/bin/sh} ./configure --no-create --no-recursion"
17 exec ${CONFIG_SHELL-/bin/sh} ./configure --no-create --no-recursion ;;
18 -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
19 echo "./config.status generated by autoconf version 2.13"
20 exit 0 ;;
21 -help | --help | --hel | --he | --h)
22 echo "$ac_cs_usage"; exit 0 ;;
23 *) echo "$ac_cs_usage"; exit 1 ;;
24 esac
25 done
26
27 ac_given_srcdir=.
28 ac_given_INSTALL="/usr/bin/install -c"
29
30 trap 'rm -fr
31 Makefile
32 src/Makefile
33 levels/Makefile
34 images/Makefile
35 images/arrows_yellow/Makefile
36 images/flow_green/Makefile
37 images/pipes_toys/Makefile
38 images/default/Makefile
39 images/flow_light/Makefile
40 images/pipes_cables/Makefile
41 images/pipes_wire/Makefile
42 images/pipes_metal/Makefile
43 images/arrows_grey/Makefile
44 images/flow_blue/Makefile
45 images/pipes_space/Makefile
46 images/pipes_space/back01/Makefile
47 images/pipes_space/back02/Makefile
48 images/pipes_space/back03/Makefile
49 images/pipes_space/back04/Makefile
50 images/pipes_space/back05/Makefile
51 man/Makefile
52 src/config.h conftest*; exit 1' 1 2 15
53
54 # Protect against being on the right side of a sed subst in config.status.
55 sed 's/%@/@@/; s/@%/@@/; s/%g$/@g/; /@g$/s/[\\&%]/\\&/g;
56 s/@@/%@/; s/@@/@%/; s/@g$/%g/' > conftest.subs <<\CEOF
57 /^[ ]*VPATH[ ]*=[^:]*$/d
58
59 s%@SHELL@%/bin/sh%g
60 s%@CFLAGS@%%g
61 s%@CPPFLAGS@%%g
62 s%@CXXFLAGS@%-O2 -I/usr/local/include -I/usr/local/include/SDL -D_REENTRANT%g
63 s%@FFLAGS@%%g
64 s%@DEFS@%-DHAVE_CONFIG_H%g
65 s%@LDFLAGS@%%g
66 s%@LIBS@%-lSDL_image -L/usr/local/lib -Wl,-rpath,/usr/local/lib -lSDL -lpthread%g
67 s%@exec_prefix@%${prefix}%g
68 s%@prefix@%/usr/local%g
69 s%@program_transform_name@%s,x,x,%g
70 s%@bindir@%${exec_prefix}/bin%g
71 s%@sbindir@%${exec_prefix}/sbin%g
72 s%@libexecdir@%${exec_prefix}/libexec%g
73 s%@datadir@%${prefix}/share%g
74 s%@sysconfdir@%${prefix}/etc%g
75 s%@sharedstatedir@%${prefix}/com%g
76 s%@localstatedir@%${prefix}/var%g
77 s%@libdir@%${exec_prefix}/lib%g
78 s%@includedir@%${prefix}/include%g
79 s%@oldincludedir@%/usr/include%g
80 s%@infodir@%${prefix}/info%g
81 s%@mandir@%${prefix}/man%g
82 s%@LEX@%flex%g
83 s%@LEXLIB@%-lfl%g
84 s%@CPP@%cc -E%g
85 s%@LEX_OUTPUT_ROOT@%lex.yy%g
86 s%@INSTALL_PROGRAM@%${INSTALL}%g
87 s%@INSTALL_SCRIPT@%${INSTALL_PROGRAM}%g
88 s%@INSTALL_DATA@%${INSTALL} -m 644%g
89 s%@PACKAGE@%pipenightdreams%g
90 s%@VERSION@%0.9.0%g
91 s%@ACLOCAL@%aclocal%g
92 s%@AUTOCONF@%autoconf%g
93 s%@AUTOMAKE@%automake%g
94 s%@AUTOHEADER@%autoheader%g
95 s%@MAKEINFO@%makeinfo%g
96 s%@SET_MAKE@%%g
97 s%@CXX@%c++%g
98 s%@target@%%g
99 s%@target_alias@%%g
100 s%@target_cpu@%%g
101 s%@target_vendor@%%g
102 s%@target_os@%%g
103 s%@SDL_CONFIG@%/usr/local/bin/sdl-config%g
104 s%@SDL_CFLAGS@%-I/usr/local/include -I/usr/local/include/SDL -D_REENTRANT%g
105 s%@SDL_LIBS@%-L/usr/local/lib -Wl,-rpath,/usr/local/lib -lSDL -lpthread%g
106 s%@LIBTOOL@%../libtool%g
107
108 CEOF
109
110 # Split the substitutions into bite-sized pieces for seds with
111 # small command number limits, like on Digital OSF/1 and HP-UX.
112 ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
113 ac_file=1 # Number of current file.
114 ac_beg=1 # First line for current file.
115 ac_end=$ac_max_sed_cmds # Line after last line for current file.
116 ac_more_lines=:
117 ac_sed_cmds=""
118 while $ac_more_lines; do
119 if test $ac_beg -gt 1; then
120 sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file
121 else
122 sed "${ac_end}q" conftest.subs > conftest.s$ac_file
123 fi
124 if test ! -s conftest.s$ac_file; then
125 ac_more_lines=false
126 rm -f conftest.s$ac_file
127 else
128 if test -z "$ac_sed_cmds"; then
129 ac_sed_cmds="sed -f conftest.s$ac_file"
130 else
131 ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file"
132 fi
133 ac_file=`expr $ac_file + 1`
134 ac_beg=$ac_end
135 ac_end=`expr $ac_end + $ac_max_sed_cmds`
136 fi
137 done
138 if test -z "$ac_sed_cmds"; then
139 ac_sed_cmds=cat
140 fi
141
142 CONFIG_FILES=${CONFIG_FILES-"Makefile
143 src/Makefile
144 levels/Makefile
145 images/Makefile
146 images/arrows_yellow/Makefile
147 images/flow_green/Makefile
148 images/pipes_toys/Makefile
149 images/default/Makefile
150 images/flow_light/Makefile
151 images/pipes_cables/Makefile
152 images/pipes_wire/Makefile
153 images/pipes_metal/Makefile
154 images/arrows_grey/Makefile
155 images/flow_blue/Makefile
156 images/pipes_space/Makefile
157 images/pipes_space/back01/Makefile
158 images/pipes_space/back02/Makefile
159 images/pipes_space/back03/Makefile
160 images/pipes_space/back04/Makefile
161 images/pipes_space/back05/Makefile
162 man/Makefile
163 "}
164 for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
165 # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
166 case "$ac_file" in
167 *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
168 ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
169 *) ac_file_in="${ac_file}.in" ;;
170 esac
171
172 # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
173
174 # Remove last slash and all that follows it. Not all systems have dirname.
175 ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
176 if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
177 # The file is in a subdirectory.
178 test ! -d "$ac_dir" && mkdir "$ac_dir"
179 ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
180 # A "../" for each directory in $ac_dir_suffix.
181 ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
182 else
183 ac_dir_suffix= ac_dots=
184 fi
185
186 case "$ac_given_srcdir" in
187 .) srcdir=.
188 if test -z "$ac_dots"; then top_srcdir=.
189 else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
190 /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
191 *) # Relative path.
192 srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
193 top_srcdir="$ac_dots$ac_given_srcdir" ;;
194 esac
195
196 case "$ac_given_INSTALL" in
197 [/$]*) INSTALL="$ac_given_INSTALL" ;;
198 *) INSTALL="$ac_dots$ac_given_INSTALL" ;;
199 esac
200
201 echo creating "$ac_file"
202 rm -f "$ac_file"
203 configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
204 case "$ac_file" in
205 *Makefile*) ac_comsub="1i\\
206 # $configure_input" ;;
207 *) ac_comsub= ;;
208 esac
209
210 ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
211 sed -e "$ac_comsub
212 s%@configure_input@%$configure_input%g
213 s%@srcdir@%$srcdir%g
214 s%@top_srcdir@%$top_srcdir%g
215 s%@INSTALL@%$INSTALL%g
216 " $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file
217 fi; done
218 rm -f conftest.s*
219
220 # These sed commands are passed to sed as "A NAME B NAME C VALUE D", where
221 # NAME is the cpp macro being defined and VALUE is the value it is being given.
222 #
223 # ac_d sets the value in "#define NAME VALUE" lines.
224 ac_dA='s%^\([ ]*\)#\([ ]*define[ ][ ]*\)'
225 ac_dB='\([ ][ ]*\)[^ ]*%\1#\2'
226 ac_dC='\3'
227 ac_dD='%g'
228 # ac_u turns "#undef NAME" with trailing blanks into "#define NAME VALUE".
229 ac_uA='s%^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)'
230 ac_uB='\([ ]\)%\1#\2define\3'
231 ac_uC=' '
232 ac_uD='\4%g'
233 # ac_e turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
234 ac_eA='s%^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)'
235 ac_eB='$%\1#\2define\3'
236 ac_eC=' '
237 ac_eD='%g'
238
239 if test "${CONFIG_HEADERS+set}" != set; then
240 CONFIG_HEADERS="src/config.h"
241 fi
242 for ac_file in .. $CONFIG_HEADERS; do if test "x$ac_file" != x..; then
243 # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
244 case "$ac_file" in
245 *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
246 ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
247 *) ac_file_in="${ac_file}.in" ;;
248 esac
249
250 echo creating $ac_file
251
252 rm -f conftest.frag conftest.in conftest.out
253 ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
254 cat $ac_file_inputs > conftest.in
255
256 cat > conftest.frag <<CEOF
257 ${ac_dA}YYTEXT_POINTER${ac_dB}YYTEXT_POINTER${ac_dC}1${ac_dD}
258 ${ac_uA}YYTEXT_POINTER${ac_uB}YYTEXT_POINTER${ac_uC}1${ac_uD}
259 ${ac_eA}YYTEXT_POINTER${ac_eB}YYTEXT_POINTER${ac_eC}1${ac_eD}
260 ${ac_dA}PACKAGE${ac_dB}PACKAGE${ac_dC}"pipenightdreams"${ac_dD}
261 ${ac_uA}PACKAGE${ac_uB}PACKAGE${ac_uC}"pipenightdreams"${ac_uD}
262 ${ac_eA}PACKAGE${ac_eB}PACKAGE${ac_eC}"pipenightdreams"${ac_eD}
263 ${ac_dA}VERSION${ac_dB}VERSION${ac_dC}"0.9.0"${ac_dD}
264 ${ac_uA}VERSION${ac_uB}VERSION${ac_uC}"0.9.0"${ac_uD}
265 ${ac_eA}VERSION${ac_eB}VERSION${ac_eC}"0.9.0"${ac_eD}
266 ${ac_dA}HAVE_LIBSDL_IMAGE${ac_dB}HAVE_LIBSDL_IMAGE${ac_dC}1${ac_dD}
267 ${ac_uA}HAVE_LIBSDL_IMAGE${ac_uB}HAVE_LIBSDL_IMAGE${ac_uC}1${ac_uD}
268 ${ac_eA}HAVE_LIBSDL_IMAGE${ac_eB}HAVE_LIBSDL_IMAGE${ac_eC}1${ac_eD}
269 CEOF
270 sed -f conftest.frag conftest.in > conftest.out
271 rm -f conftest.in
272 mv conftest.out conftest.in
273
274 cat > conftest.frag <<CEOF
275 ${ac_dA}GAME_DATADIR${ac_dB}GAME_DATADIR${ac_dC}"/usr/local/share/games/pipenightdreams"${ac_dD}
276 ${ac_uA}GAME_DATADIR${ac_uB}GAME_DATADIR${ac_uC}"/usr/local/share/games/pipenightdreams"${ac_uD}
277 ${ac_eA}GAME_DATADIR${ac_eB}GAME_DATADIR${ac_eC}"/usr/local/share/games/pipenightdreams"${ac_eD}
278 s%^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*%/* & */%
279 CEOF
280 sed -f conftest.frag conftest.in > conftest.out
281 rm -f conftest.in
282 mv conftest.out conftest.in
283
284 rm -f conftest.frag conftest.h
285 echo "/* $ac_file. Generated automatically by configure. */" > conftest.h
286 cat conftest.in >> conftest.h
287 rm -f conftest.in
288 if cmp -s $ac_file conftest.h 2>/dev/null; then
289 echo "$ac_file is unchanged"
290 rm -f conftest.h
291 else
292 # Remove last slash and all that follows it. Not all systems have dirname.
293 ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
294 if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
295 # The file is in a subdirectory.
296 test ! -d "$ac_dir" && mkdir "$ac_dir"
297 fi
298 rm -f $ac_file
299 mv conftest.h $ac_file
300 fi
301 fi; done
302
303
304
305 test -z "$CONFIG_HEADERS" || echo timestamp > src/stamp-h
306
307 exit 0
0 #! /bin/sh
1 # Configuration validation subroutine script, version 1.1.
2 # Copyright (C) 1991, 92-97, 1998, 1999 Free Software Foundation, Inc.
3 # This file is (in principle) common to ALL GNU software.
4 # The presence of a machine in this file suggests that SOME GNU software
5 # can handle that machine. It does not imply ALL GNU software can.
6 #
7 # This file is free software; you can redistribute it and/or modify
8 # it under the terms of the GNU General Public License as published by
9 # the Free Software Foundation; either version 2 of the License, or
10 # (at your option) any later version.
11 #
12 # This program is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 # GNU General Public License for more details.
16 #
17 # You should have received a copy of the GNU General Public License
18 # along with this program; if not, write to the Free Software
19 # Foundation, Inc., 59 Temple Place - Suite 330,
20 # Boston, MA 02111-1307, USA.
21
22 # As a special exception to the GNU General Public License, if you
23 # distribute this file as part of a program that contains a
24 # configuration script generated by Autoconf, you may include it under
25 # the same distribution terms that you use for the rest of that program.
26
27 # Configuration subroutine to validate and canonicalize a configuration type.
28 # Supply the specified configuration type as an argument.
29 # If it is invalid, we print an error message on stderr and exit with code 1.
30 # Otherwise, we print the canonical config type on stdout and succeed.
31
32 # This file is supposed to be the same for all GNU packages
33 # and recognize all the CPU types, system types and aliases
34 # that are meaningful with *any* GNU software.
35 # Each package is responsible for reporting which valid configurations
36 # it does not support. The user should be able to distinguish
37 # a failure to support a valid configuration from a meaningless
38 # configuration.
39
40 # The goal of this file is to map all the various variations of a given
41 # machine specification into a single specification in the form:
42 # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
43 # or in some cases, the newer four-part form:
44 # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
45 # It is wrong to echo any other type of specification.
46
47 if [ x$1 = x ]
48 then
49 echo Configuration name missing. 1>&2
50 echo "Usage: $0 CPU-MFR-OPSYS" 1>&2
51 echo "or $0 ALIAS" 1>&2
52 echo where ALIAS is a recognized configuration type. 1>&2
53 exit 1
54 fi
55
56 # First pass through any local machine types.
57 case $1 in
58 *local*)
59 echo $1
60 exit 0
61 ;;
62 *)
63 ;;
64 esac
65
66 # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
67 # Here we must recognize all the valid KERNEL-OS combinations.
68 maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
69 case $maybe_os in
70 linux-gnu*)
71 os=-$maybe_os
72 basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
73 ;;
74 *)
75 basic_machine=`echo $1 | sed 's/-[^-]*$//'`
76 if [ $basic_machine != $1 ]
77 then os=`echo $1 | sed 's/.*-/-/'`
78 else os=; fi
79 ;;
80 esac
81
82 ### Let's recognize common machines as not being operating systems so
83 ### that things like config.sub decstation-3100 work. We also
84 ### recognize some manufacturers as not being operating systems, so we
85 ### can provide default operating systems below.
86 case $os in
87 -sun*os*)
88 # Prevent following clause from handling this invalid input.
89 ;;
90 -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
91 -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
92 -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
93 -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
94 -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
95 -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
96 -apple)
97 os=
98 basic_machine=$1
99 ;;
100 -sim | -cisco | -oki | -wec | -winbond)
101 os=
102 basic_machine=$1
103 ;;
104 -scout)
105 ;;
106 -wrs)
107 os=vxworks
108 basic_machine=$1
109 ;;
110 -hiux*)
111 os=-hiuxwe2
112 ;;
113 -sco5)
114 os=-sco3.2v5
115 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
116 ;;
117 -sco4)
118 os=-sco3.2v4
119 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
120 ;;
121 -sco3.2.[4-9]*)
122 os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
123 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
124 ;;
125 -sco3.2v[4-9]*)
126 # Don't forget version if it is 3.2v4 or newer.
127 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
128 ;;
129 -sco*)
130 os=-sco3.2v2
131 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
132 ;;
133 -udk*)
134 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
135 ;;
136 -isc)
137 os=-isc2.2
138 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
139 ;;
140 -clix*)
141 basic_machine=clipper-intergraph
142 ;;
143 -isc*)
144 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
145 ;;
146 -lynx*)
147 os=-lynxos
148 ;;
149 -ptx*)
150 basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
151 ;;
152 -windowsnt*)
153 os=`echo $os | sed -e 's/windowsnt/winnt/'`
154 ;;
155 -psos*)
156 os=-psos
157 ;;
158 esac
159
160 # Decode aliases for certain CPU-COMPANY combinations.
161 case $basic_machine in
162 # Recognize the basic CPU types without company name.
163 # Some are omitted here because they have special meanings below.
164 tahoe | i860 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \
165 | arme[lb] | pyramid | mn10200 | mn10300 | tron | a29k \
166 | 580 | i960 | h8300 \
167 | hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \
168 | alpha | alphaev[4-7] | alphaev56 | alphapca5[67] \
169 | we32k | ns16k | clipper | i370 | sh | powerpc | powerpcle \
170 | 1750a | dsp16xx | pdp11 | mips16 | mips64 | mipsel | mips64el \
171 | mips64orion | mips64orionel | mipstx39 | mipstx39el \
172 | mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \
173 | mips64vr5000 | miprs64vr5000el \
174 | sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \
175 | thumb | d10v)
176 basic_machine=$basic_machine-unknown
177 ;;
178 m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | h8500 | w65)
179 ;;
180
181 # We use `pc' rather than `unknown'
182 # because (1) that's what they normally are, and
183 # (2) the word "unknown" tends to confuse beginning users.
184 i[34567]86)
185 basic_machine=$basic_machine-pc
186 ;;
187 # Object if more than one company name word.
188 *-*-*)
189 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
190 exit 1
191 ;;
192 # Recognize the basic CPU types with company name.
193 vax-* | tahoe-* | i[34567]86-* | i860-* | m32r-* | m68k-* | m68000-* \
194 | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \
195 | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \
196 | power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \
197 | xmp-* | ymp-* \
198 | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* | hppa2.0n-* \
199 | alpha-* | alphaev[4-7]-* | alphaev56-* | alphapca5[67]-* \
200 | we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \
201 | clipper-* | orion-* \
202 | sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \
203 | sparc64-* | sparcv9-* | sparc86x-* | mips16-* | mips64-* | mipsel-* \
204 | mips64el-* | mips64orion-* | mips64orionel-* \
205 | mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \
206 | mipstx39-* | mipstx39el-* \
207 | f301-* | armv*-* | t3e-* \
208 | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \
209 | thumb-* | v850-* | d30v-* | tic30-* | c30-* )
210 ;;
211 # Recognize the various machine names and aliases which stand
212 # for a CPU type and a company and sometimes even an OS.
213 386bsd)
214 basic_machine=i386-unknown
215 os=-bsd
216 ;;
217 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
218 basic_machine=m68000-att
219 ;;
220 3b*)
221 basic_machine=we32k-att
222 ;;
223 a29khif)
224 basic_machine=a29k-amd
225 os=-udi
226 ;;
227 adobe68k)
228 basic_machine=m68010-adobe
229 os=-scout
230 ;;
231 alliant | fx80)
232 basic_machine=fx80-alliant
233 ;;
234 altos | altos3068)
235 basic_machine=m68k-altos
236 ;;
237 am29k)
238 basic_machine=a29k-none
239 os=-bsd
240 ;;
241 amdahl)
242 basic_machine=580-amdahl
243 os=-sysv
244 ;;
245 amiga | amiga-*)
246 basic_machine=m68k-cbm
247 ;;
248 amigaos | amigados)
249 basic_machine=m68k-cbm
250 os=-amigaos
251 ;;
252 amigaunix | amix)
253 basic_machine=m68k-cbm
254 os=-sysv4
255 ;;
256 apollo68)
257 basic_machine=m68k-apollo
258 os=-sysv
259 ;;
260 apollo68bsd)
261 basic_machine=m68k-apollo
262 os=-bsd
263 ;;
264 aux)
265 basic_machine=m68k-apple
266 os=-aux
267 ;;
268 balance)
269 basic_machine=ns32k-sequent
270 os=-dynix
271 ;;
272 convex-c1)
273 basic_machine=c1-convex
274 os=-bsd
275 ;;
276 convex-c2)
277 basic_machine=c2-convex
278 os=-bsd
279 ;;
280 convex-c32)
281 basic_machine=c32-convex
282 os=-bsd
283 ;;
284 convex-c34)
285 basic_machine=c34-convex
286 os=-bsd
287 ;;
288 convex-c38)
289 basic_machine=c38-convex
290 os=-bsd
291 ;;
292 cray | ymp)
293 basic_machine=ymp-cray
294 os=-unicos
295 ;;
296 cray2)
297 basic_machine=cray2-cray
298 os=-unicos
299 ;;
300 [ctj]90-cray)
301 basic_machine=c90-cray
302 os=-unicos
303 ;;
304 crds | unos)
305 basic_machine=m68k-crds
306 ;;
307 da30 | da30-*)
308 basic_machine=m68k-da30
309 ;;
310 decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
311 basic_machine=mips-dec
312 ;;
313 delta | 3300 | motorola-3300 | motorola-delta \
314 | 3300-motorola | delta-motorola)
315 basic_machine=m68k-motorola
316 ;;
317 delta88)
318 basic_machine=m88k-motorola
319 os=-sysv3
320 ;;
321 dpx20 | dpx20-*)
322 basic_machine=rs6000-bull
323 os=-bosx
324 ;;
325 dpx2* | dpx2*-bull)
326 basic_machine=m68k-bull
327 os=-sysv3
328 ;;
329 ebmon29k)
330 basic_machine=a29k-amd
331 os=-ebmon
332 ;;
333 elxsi)
334 basic_machine=elxsi-elxsi
335 os=-bsd
336 ;;
337 encore | umax | mmax)
338 basic_machine=ns32k-encore
339 ;;
340 es1800 | OSE68k | ose68k | ose | OSE)
341 basic_machine=m68k-ericsson
342 os=-ose
343 ;;
344 fx2800)
345 basic_machine=i860-alliant
346 ;;
347 genix)
348 basic_machine=ns32k-ns
349 ;;
350 gmicro)
351 basic_machine=tron-gmicro
352 os=-sysv
353 ;;
354 h3050r* | hiux*)
355 basic_machine=hppa1.1-hitachi
356 os=-hiuxwe2
357 ;;
358 h8300hms)
359 basic_machine=h8300-hitachi
360 os=-hms
361 ;;
362 h8300xray)
363 basic_machine=h8300-hitachi
364 os=-xray
365 ;;
366 h8500hms)
367 basic_machine=h8500-hitachi
368 os=-hms
369 ;;
370 harris)
371 basic_machine=m88k-harris
372 os=-sysv3
373 ;;
374 hp300-*)
375 basic_machine=m68k-hp
376 ;;
377 hp300bsd)
378 basic_machine=m68k-hp
379 os=-bsd
380 ;;
381 hp300hpux)
382 basic_machine=m68k-hp
383 os=-hpux
384 ;;
385 hp3k9[0-9][0-9] | hp9[0-9][0-9])
386 basic_machine=hppa1.0-hp
387 ;;
388 hp9k2[0-9][0-9] | hp9k31[0-9])
389 basic_machine=m68000-hp
390 ;;
391 hp9k3[2-9][0-9])
392 basic_machine=m68k-hp
393 ;;
394 hp9k6[0-9][0-9] | hp6[0-9][0-9])
395 basic_machine=hppa1.0-hp
396 ;;
397 hp9k7[0-79][0-9] | hp7[0-79][0-9])
398 basic_machine=hppa1.1-hp
399 ;;
400 hp9k78[0-9] | hp78[0-9])
401 # FIXME: really hppa2.0-hp
402 basic_machine=hppa1.1-hp
403 ;;
404 hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
405 # FIXME: really hppa2.0-hp
406 basic_machine=hppa1.1-hp
407 ;;
408 hp9k8[0-9][13679] | hp8[0-9][13679])
409 basic_machine=hppa1.1-hp
410 ;;
411 hp9k8[0-9][0-9] | hp8[0-9][0-9])
412 basic_machine=hppa1.0-hp
413 ;;
414 hppa-next)
415 os=-nextstep3
416 ;;
417 hppaosf)
418 basic_machine=hppa1.1-hp
419 os=-osf
420 ;;
421 hppro)
422 basic_machine=hppa1.1-hp
423 os=-proelf
424 ;;
425 i370-ibm* | ibm*)
426 basic_machine=i370-ibm
427 os=-mvs
428 ;;
429 # I'm not sure what "Sysv32" means. Should this be sysv3.2?
430 i[34567]86v32)
431 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
432 os=-sysv32
433 ;;
434 i[34567]86v4*)
435 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
436 os=-sysv4
437 ;;
438 i[34567]86v)
439 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
440 os=-sysv
441 ;;
442 i[34567]86sol2)
443 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
444 os=-solaris2
445 ;;
446 i386mach)
447 basic_machine=i386-mach
448 os=-mach
449 ;;
450 i386-vsta | vsta)
451 basic_machine=i386-unknown
452 os=-vsta
453 ;;
454 i386-go32 | go32)
455 basic_machine=i386-unknown
456 os=-go32
457 ;;
458 i386-mingw32 | mingw32)
459 basic_machine=i386-unknown
460 os=-mingw32
461 ;;
462 iris | iris4d)
463 basic_machine=mips-sgi
464 case $os in
465 -irix*)
466 ;;
467 *)
468 os=-irix4
469 ;;
470 esac
471 ;;
472 isi68 | isi)
473 basic_machine=m68k-isi
474 os=-sysv
475 ;;
476 m88k-omron*)
477 basic_machine=m88k-omron
478 ;;
479 magnum | m3230)
480 basic_machine=mips-mips
481 os=-sysv
482 ;;
483 merlin)
484 basic_machine=ns32k-utek
485 os=-sysv
486 ;;
487 miniframe)
488 basic_machine=m68000-convergent
489 ;;
490 *mint | *MiNT)
491 basic_machine=m68k-atari
492 os=-mint
493 ;;
494 mipsel*-linux*)
495 basic_machine=mipsel-unknown
496 os=-linux-gnu
497 ;;
498 mips*-linux*)
499 basic_machine=mips-unknown
500 os=-linux-gnu
501 ;;
502 mips3*-*)
503 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
504 ;;
505 mips3*)
506 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
507 ;;
508 monitor)
509 basic_machine=m68k-rom68k
510 os=-coff
511 ;;
512 msdos)
513 basic_machine=i386-unknown
514 os=-msdos
515 ;;
516 ncr3000)
517 basic_machine=i486-ncr
518 os=-sysv4
519 ;;
520 netbsd386)
521 basic_machine=i386-unknown
522 os=-netbsd
523 ;;
524 netwinder)
525 basic_machine=armv4l-corel
526 os=-linux
527 ;;
528 news | news700 | news800 | news900)
529 basic_machine=m68k-sony
530 os=-newsos
531 ;;
532 news1000)
533 basic_machine=m68030-sony
534 os=-newsos
535 ;;
536 news-3600 | risc-news)
537 basic_machine=mips-sony
538 os=-newsos
539 ;;
540 necv70)
541 basic_machine=v70-nec
542 os=-sysv
543 ;;
544 next | m*-next )
545 basic_machine=m68k-next
546 case $os in
547 -nextstep* )
548 ;;
549 -ns2*)
550 os=-nextstep2
551 ;;
552 *)
553 os=-nextstep3
554 ;;
555 esac
556 ;;
557 nh3000)
558 basic_machine=m68k-harris
559 os=-cxux
560 ;;
561 nh[45]000)
562 basic_machine=m88k-harris
563 os=-cxux
564 ;;
565 nindy960)
566 basic_machine=i960-intel
567 os=-nindy
568 ;;
569 mon960)
570 basic_machine=i960-intel
571 os=-mon960
572 ;;
573 np1)
574 basic_machine=np1-gould
575 ;;
576 op50n-* | op60c-*)
577 basic_machine=hppa1.1-oki
578 os=-proelf
579 ;;
580 OSE68000 | ose68000)
581 basic_machine=m68000-ericsson
582 os=-ose
583 ;;
584 os68k)
585 basic_machine=m68k-none
586 os=-os68k
587 ;;
588 pa-hitachi)
589 basic_machine=hppa1.1-hitachi
590 os=-hiuxwe2
591 ;;
592 paragon)
593 basic_machine=i860-intel
594 os=-osf
595 ;;
596 pbd)
597 basic_machine=sparc-tti
598 ;;
599 pbb)
600 basic_machine=m68k-tti
601 ;;
602 pc532 | pc532-*)
603 basic_machine=ns32k-pc532
604 ;;
605 pentium | p5 | k5 | k6 | nexen)
606 basic_machine=i586-pc
607 ;;
608 pentiumpro | p6 | 6x86)
609 basic_machine=i686-pc
610 ;;
611 pentiumii | pentium2)
612 basic_machine=i786-pc
613 ;;
614 pentium-* | p5-* | k5-* | k6-* | nexen-*)
615 basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
616 ;;
617 pentiumpro-* | p6-* | 6x86-*)
618 basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
619 ;;
620 pentiumii-* | pentium2-*)
621 basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
622 ;;
623 pn)
624 basic_machine=pn-gould
625 ;;
626 power) basic_machine=rs6000-ibm
627 ;;
628 ppc) basic_machine=powerpc-unknown
629 ;;
630 ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
631 ;;
632 ppcle | powerpclittle | ppc-le | powerpc-little)
633 basic_machine=powerpcle-unknown
634 ;;
635 ppcle-* | powerpclittle-*)
636 basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
637 ;;
638 ps2)
639 basic_machine=i386-ibm
640 ;;
641 rom68k)
642 basic_machine=m68k-rom68k
643 os=-coff
644 ;;
645 rm[46]00)
646 basic_machine=mips-siemens
647 ;;
648 rtpc | rtpc-*)
649 basic_machine=romp-ibm
650 ;;
651 sa29200)
652 basic_machine=a29k-amd
653 os=-udi
654 ;;
655 sequent)
656 basic_machine=i386-sequent
657 ;;
658 sh)
659 basic_machine=sh-hitachi
660 os=-hms
661 ;;
662 sparclite-wrs)
663 basic_machine=sparclite-wrs
664 os=-vxworks
665 ;;
666 sps7)
667 basic_machine=m68k-bull
668 os=-sysv2
669 ;;
670 spur)
671 basic_machine=spur-unknown
672 ;;
673 st2000)
674 basic_machine=m68k-tandem
675 ;;
676 stratus)
677 basic_machine=i860-stratus
678 os=-sysv4
679 ;;
680 sun2)
681 basic_machine=m68000-sun
682 ;;
683 sun2os3)
684 basic_machine=m68000-sun
685 os=-sunos3
686 ;;
687 sun2os4)
688 basic_machine=m68000-sun
689 os=-sunos4
690 ;;
691 sun3os3)
692 basic_machine=m68k-sun
693 os=-sunos3
694 ;;
695 sun3os4)
696 basic_machine=m68k-sun
697 os=-sunos4
698 ;;
699 sun4os3)
700 basic_machine=sparc-sun
701 os=-sunos3
702 ;;
703 sun4os4)
704 basic_machine=sparc-sun
705 os=-sunos4
706 ;;
707 sun4sol2)
708 basic_machine=sparc-sun
709 os=-solaris2
710 ;;
711 sun3 | sun3-*)
712 basic_machine=m68k-sun
713 ;;
714 sun4)
715 basic_machine=sparc-sun
716 ;;
717 sun386 | sun386i | roadrunner)
718 basic_machine=i386-sun
719 ;;
720 symmetry)
721 basic_machine=i386-sequent
722 os=-dynix
723 ;;
724 t3e)
725 basic_machine=t3e-cray
726 os=-unicos
727 ;;
728 tx39)
729 basic_machine=mipstx39-unknown
730 ;;
731 tx39el)
732 basic_machine=mipstx39el-unknown
733 ;;
734 tower | tower-32)
735 basic_machine=m68k-ncr
736 ;;
737 udi29k)
738 basic_machine=a29k-amd
739 os=-udi
740 ;;
741 ultra3)
742 basic_machine=a29k-nyu
743 os=-sym1
744 ;;
745 v810 | necv810)
746 basic_machine=v810-nec
747 os=-none
748 ;;
749 vaxv)
750 basic_machine=vax-dec
751 os=-sysv
752 ;;
753 vms)
754 basic_machine=vax-dec
755 os=-vms
756 ;;
757 vpp*|vx|vx-*)
758 basic_machine=f301-fujitsu
759 ;;
760 vxworks960)
761 basic_machine=i960-wrs
762 os=-vxworks
763 ;;
764 vxworks68)
765 basic_machine=m68k-wrs
766 os=-vxworks
767 ;;
768 vxworks29k)
769 basic_machine=a29k-wrs
770 os=-vxworks
771 ;;
772 w65*)
773 basic_machine=w65-wdc
774 os=-none
775 ;;
776 w89k-*)
777 basic_machine=hppa1.1-winbond
778 os=-proelf
779 ;;
780 xmp)
781 basic_machine=xmp-cray
782 os=-unicos
783 ;;
784 xps | xps100)
785 basic_machine=xps100-honeywell
786 ;;
787 z8k-*-coff)
788 basic_machine=z8k-unknown
789 os=-sim
790 ;;
791 none)
792 basic_machine=none-none
793 os=-none
794 ;;
795
796 # Here we handle the default manufacturer of certain CPU types. It is in
797 # some cases the only manufacturer, in others, it is the most popular.
798 w89k)
799 basic_machine=hppa1.1-winbond
800 ;;
801 op50n)
802 basic_machine=hppa1.1-oki
803 ;;
804 op60c)
805 basic_machine=hppa1.1-oki
806 ;;
807 mips)
808 if [ x$os = x-linux-gnu ]; then
809 basic_machine=mips-unknown
810 else
811 basic_machine=mips-mips
812 fi
813 ;;
814 romp)
815 basic_machine=romp-ibm
816 ;;
817 rs6000)
818 basic_machine=rs6000-ibm
819 ;;
820 vax)
821 basic_machine=vax-dec
822 ;;
823 pdp11)
824 basic_machine=pdp11-dec
825 ;;
826 we32k)
827 basic_machine=we32k-att
828 ;;
829 sparc | sparcv9)
830 basic_machine=sparc-sun
831 ;;
832 cydra)
833 basic_machine=cydra-cydrome
834 ;;
835 orion)
836 basic_machine=orion-highlevel
837 ;;
838 orion105)
839 basic_machine=clipper-highlevel
840 ;;
841 mac | mpw | mac-mpw)
842 basic_machine=m68k-apple
843 ;;
844 pmac | pmac-mpw)
845 basic_machine=powerpc-apple
846 ;;
847 c4x*)
848 basic_machine=c4x-none
849 os=-coff
850 ;;
851 *)
852 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
853 exit 1
854 ;;
855 esac
856
857 # Here we canonicalize certain aliases for manufacturers.
858 case $basic_machine in
859 *-digital*)
860 basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
861 ;;
862 *-commodore*)
863 basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
864 ;;
865 *)
866 ;;
867 esac
868
869 # Decode manufacturer-specific aliases for certain operating systems.
870
871 if [ x"$os" != x"" ]
872 then
873 case $os in
874 # First match some system type aliases
875 # that might get confused with valid system types.
876 # -solaris* is a basic system type, with this one exception.
877 -solaris1 | -solaris1.*)
878 os=`echo $os | sed -e 's|solaris1|sunos4|'`
879 ;;
880 -solaris)
881 os=-solaris2
882 ;;
883 -svr4*)
884 os=-sysv4
885 ;;
886 -unixware*)
887 os=-sysv4.2uw
888 ;;
889 -gnu/linux*)
890 os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
891 ;;
892 # First accept the basic system types.
893 # The portable systems comes first.
894 # Each alternative MUST END IN A *, to match a version number.
895 # -sysv* is not here because it comes later, after sysvr4.
896 -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
897 | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
898 | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
899 | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
900 | -aos* \
901 | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
902 | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
903 | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
904 | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
905 | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
906 | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
907 | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
908 | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
909 | -interix* | -uwin* | -rhapsody* | -openstep* | -oskit*)
910 # Remember, each alternative MUST END IN *, to match a version number.
911 ;;
912 -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
913 | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
914 | -macos* | -mpw* | -magic* | -mon960* | -lnews*)
915 ;;
916 -mac*)
917 os=`echo $os | sed -e 's|mac|macos|'`
918 ;;
919 -linux*)
920 os=`echo $os | sed -e 's|linux|linux-gnu|'`
921 ;;
922 -sunos5*)
923 os=`echo $os | sed -e 's|sunos5|solaris2|'`
924 ;;
925 -sunos6*)
926 os=`echo $os | sed -e 's|sunos6|solaris3|'`
927 ;;
928 -osfrose*)
929 os=-osfrose
930 ;;
931 -osf*)
932 os=-osf
933 ;;
934 -utek*)
935 os=-bsd
936 ;;
937 -dynix*)
938 os=-bsd
939 ;;
940 -acis*)
941 os=-aos
942 ;;
943 -386bsd)
944 os=-bsd
945 ;;
946 -ctix* | -uts*)
947 os=-sysv
948 ;;
949 -ns2 )
950 os=-nextstep2
951 ;;
952 # Preserve the version number of sinix5.
953 -sinix5.*)
954 os=`echo $os | sed -e 's|sinix|sysv|'`
955 ;;
956 -sinix*)
957 os=-sysv4
958 ;;
959 -triton*)
960 os=-sysv3
961 ;;
962 -oss*)
963 os=-sysv3
964 ;;
965 -svr4)
966 os=-sysv4
967 ;;
968 -svr3)
969 os=-sysv3
970 ;;
971 -sysvr4)
972 os=-sysv4
973 ;;
974 # This must come after -sysvr4.
975 -sysv*)
976 ;;
977 -ose*)
978 os=-ose
979 ;;
980 -es1800*)
981 os=-ose
982 ;;
983 -xenix)
984 os=-xenix
985 ;;
986 -*mint | -*MiNT)
987 os=-mint
988 ;;
989 -none)
990 ;;
991 *)
992 # Get rid of the `-' at the beginning of $os.
993 os=`echo $os | sed 's/[^-]*-//'`
994 echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
995 exit 1
996 ;;
997 esac
998 else
999
1000 # Here we handle the default operating systems that come with various machines.
1001 # The value should be what the vendor currently ships out the door with their
1002 # machine or put another way, the most popular os provided with the machine.
1003
1004 # Note that if you're going to try to match "-MANUFACTURER" here (say,
1005 # "-sun"), then you have to tell the case statement up towards the top
1006 # that MANUFACTURER isn't an operating system. Otherwise, code above
1007 # will signal an error saying that MANUFACTURER isn't an operating
1008 # system, and we'll never get to this point.
1009
1010 case $basic_machine in
1011 *-acorn)
1012 os=-riscix1.2
1013 ;;
1014 arm*-corel)
1015 os=-linux
1016 ;;
1017 arm*-semi)
1018 os=-aout
1019 ;;
1020 pdp11-*)
1021 os=-none
1022 ;;
1023 *-dec | vax-*)
1024 os=-ultrix4.2
1025 ;;
1026 m68*-apollo)
1027 os=-domain
1028 ;;
1029 i386-sun)
1030 os=-sunos4.0.2
1031 ;;
1032 m68000-sun)
1033 os=-sunos3
1034 # This also exists in the configure program, but was not the
1035 # default.
1036 # os=-sunos4
1037 ;;
1038 m68*-cisco)
1039 os=-aout
1040 ;;
1041 mips*-cisco)
1042 os=-elf
1043 ;;
1044 mips*-*)
1045 os=-elf
1046 ;;
1047 *-tti) # must be before sparc entry or we get the wrong os.
1048 os=-sysv3
1049 ;;
1050 sparc-* | *-sun)
1051 os=-sunos4.1.1
1052 ;;
1053 *-be)
1054 os=-beos
1055 ;;
1056 *-ibm)
1057 os=-aix
1058 ;;
1059 *-wec)
1060 os=-proelf
1061 ;;
1062 *-winbond)
1063 os=-proelf
1064 ;;
1065 *-oki)
1066 os=-proelf
1067 ;;
1068 *-hp)
1069 os=-hpux
1070 ;;
1071 *-hitachi)
1072 os=-hiux
1073 ;;
1074 i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
1075 os=-sysv
1076 ;;
1077 *-cbm)
1078 os=-amigaos
1079 ;;
1080 *-dg)
1081 os=-dgux
1082 ;;
1083 *-dolphin)
1084 os=-sysv3
1085 ;;
1086 m68k-ccur)
1087 os=-rtu
1088 ;;
1089 m88k-omron*)
1090 os=-luna
1091 ;;
1092 *-next )
1093 os=-nextstep
1094 ;;
1095 *-sequent)
1096 os=-ptx
1097 ;;
1098 *-crds)
1099 os=-unos
1100 ;;
1101 *-ns)
1102 os=-genix
1103 ;;
1104 i370-*)
1105 os=-mvs
1106 ;;
1107 *-next)
1108 os=-nextstep3
1109 ;;
1110 *-gould)
1111 os=-sysv
1112 ;;
1113 *-highlevel)
1114 os=-bsd
1115 ;;
1116 *-encore)
1117 os=-bsd
1118 ;;
1119 *-sgi)
1120 os=-irix
1121 ;;
1122 *-siemens)
1123 os=-sysv4
1124 ;;
1125 *-masscomp)
1126 os=-rtu
1127 ;;
1128 f301-fujitsu)
1129 os=-uxpv
1130 ;;
1131 *-rom68k)
1132 os=-coff
1133 ;;
1134 *-*bug)
1135 os=-coff
1136 ;;
1137 *-apple)
1138 os=-macos
1139 ;;
1140 *-atari*)
1141 os=-mint
1142 ;;
1143 *)
1144 os=-none
1145 ;;
1146 esac
1147 fi
1148
1149 # Here we handle the case where we know the os, and the CPU type, but not the
1150 # manufacturer. We pick the logical manufacturer.
1151 vendor=unknown
1152 case $basic_machine in
1153 *-unknown)
1154 case $os in
1155 -riscix*)
1156 vendor=acorn
1157 ;;
1158 -sunos*)
1159 vendor=sun
1160 ;;
1161 -aix*)
1162 vendor=ibm
1163 ;;
1164 -beos*)
1165 vendor=be
1166 ;;
1167 -hpux*)
1168 vendor=hp
1169 ;;
1170 -mpeix*)
1171 vendor=hp
1172 ;;
1173 -hiux*)
1174 vendor=hitachi
1175 ;;
1176 -unos*)
1177 vendor=crds
1178 ;;
1179 -dgux*)
1180 vendor=dg
1181 ;;
1182 -luna*)
1183 vendor=omron
1184 ;;
1185 -genix*)
1186 vendor=ns
1187 ;;
1188 -mvs*)
1189 vendor=ibm
1190 ;;
1191 -ptx*)
1192 vendor=sequent
1193 ;;
1194 -vxsim* | -vxworks*)
1195 vendor=wrs
1196 ;;
1197 -aux*)
1198 vendor=apple
1199 ;;
1200 -hms*)
1201 vendor=hitachi
1202 ;;
1203 -mpw* | -macos*)
1204 vendor=apple
1205 ;;
1206 -*mint | -*MiNT)
1207 vendor=atari
1208 ;;
1209 esac
1210 basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
1211 ;;
1212 esac
1213
1214 echo $basic_machine$os
0 #! /bin/sh
1
2 # Guess values for system-dependent variables and create Makefiles.
3 # Generated automatically using autoconf version 2.13
4 # Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
5 #
6 # This configure script is free software; the Free Software Foundation
7 # gives unlimited permission to copy, distribute and modify it.
8
9 # Defaults:
10 ac_help=
11 ac_default_prefix=/usr/local
12 # Any additions from configure.in:
13 ac_default_prefix=/usr/local
14 ac_help="$ac_help
15 --with-sdl-prefix=PFX Prefix where SDL is installed (optional)"
16 ac_help="$ac_help
17 --with-sdl-exec-prefix=PFX Exec prefix where SDL is installed (optional)"
18 ac_help="$ac_help
19 --disable-sdltest Do not try to compile and run a test SDL program"
20
21 # Initialize some variables set by options.
22 # The variables have the same names as the options, with
23 # dashes changed to underlines.
24 build=NONE
25 cache_file=./config.cache
26 exec_prefix=NONE
27 host=NONE
28 no_create=
29 nonopt=NONE
30 no_recursion=
31 prefix=NONE
32 program_prefix=NONE
33 program_suffix=NONE
34 program_transform_name=s,x,x,
35 silent=
36 site=
37 srcdir=
38 target=NONE
39 verbose=
40 x_includes=NONE
41 x_libraries=NONE
42 bindir='${exec_prefix}/bin'
43 sbindir='${exec_prefix}/sbin'
44 libexecdir='${exec_prefix}/libexec'
45 datadir='${prefix}/share'
46 sysconfdir='${prefix}/etc'
47 sharedstatedir='${prefix}/com'
48 localstatedir='${prefix}/var'
49 libdir='${exec_prefix}/lib'
50 includedir='${prefix}/include'
51 oldincludedir='/usr/include'
52 infodir='${prefix}/info'
53 mandir='${prefix}/man'
54
55 # Initialize some other variables.
56 subdirs=
57 MFLAGS= MAKEFLAGS=
58 SHELL=${CONFIG_SHELL-/bin/sh}
59 # Maximum number of lines to put in a shell here document.
60 ac_max_here_lines=12
61
62 ac_prev=
63 for ac_option
64 do
65
66 # If the previous option needs an argument, assign it.
67 if test -n "$ac_prev"; then
68 eval "$ac_prev=\$ac_option"
69 ac_prev=
70 continue
71 fi
72
73 case "$ac_option" in
74 -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
75 *) ac_optarg= ;;
76 esac
77
78 # Accept the important Cygnus configure options, so we can diagnose typos.
79
80 case "$ac_option" in
81
82 -bindir | --bindir | --bindi | --bind | --bin | --bi)
83 ac_prev=bindir ;;
84 -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
85 bindir="$ac_optarg" ;;
86
87 -build | --build | --buil | --bui | --bu)
88 ac_prev=build ;;
89 -build=* | --build=* | --buil=* | --bui=* | --bu=*)
90 build="$ac_optarg" ;;
91
92 -cache-file | --cache-file | --cache-fil | --cache-fi \
93 | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
94 ac_prev=cache_file ;;
95 -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
96 | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
97 cache_file="$ac_optarg" ;;
98
99 -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
100 ac_prev=datadir ;;
101 -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
102 | --da=*)
103 datadir="$ac_optarg" ;;
104
105 -disable-* | --disable-*)
106 ac_feature=`echo $ac_option|sed -e 's/-*disable-//'`
107 # Reject names that are not valid shell variable names.
108 if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then
109 { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
110 fi
111 ac_feature=`echo $ac_feature| sed 's/-/_/g'`
112 eval "enable_${ac_feature}=no" ;;
113
114 -enable-* | --enable-*)
115 ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'`
116 # Reject names that are not valid shell variable names.
117 if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then
118 { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
119 fi
120 ac_feature=`echo $ac_feature| sed 's/-/_/g'`
121 case "$ac_option" in
122 *=*) ;;
123 *) ac_optarg=yes ;;
124 esac
125 eval "enable_${ac_feature}='$ac_optarg'" ;;
126
127 -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
128 | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
129 | --exec | --exe | --ex)
130 ac_prev=exec_prefix ;;
131 -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
132 | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
133 | --exec=* | --exe=* | --ex=*)
134 exec_prefix="$ac_optarg" ;;
135
136 -gas | --gas | --ga | --g)
137 # Obsolete; use --with-gas.
138 with_gas=yes ;;
139
140 -help | --help | --hel | --he)
141 # Omit some internal or obsolete options to make the list less imposing.
142 # This message is too long to be a string in the A/UX 3.1 sh.
143 cat << EOF
144 Usage: configure [options] [host]
145 Options: [defaults in brackets after descriptions]
146 Configuration:
147 --cache-file=FILE cache test results in FILE
148 --help print this message
149 --no-create do not create output files
150 --quiet, --silent do not print \`checking...' messages
151 --version print the version of autoconf that created configure
152 Directory and file names:
153 --prefix=PREFIX install architecture-independent files in PREFIX
154 [$ac_default_prefix]
155 --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
156 [same as prefix]
157 --bindir=DIR user executables in DIR [EPREFIX/bin]
158 --sbindir=DIR system admin executables in DIR [EPREFIX/sbin]
159 --libexecdir=DIR program executables in DIR [EPREFIX/libexec]
160 --datadir=DIR read-only architecture-independent data in DIR
161 [PREFIX/share]
162 --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc]
163 --sharedstatedir=DIR modifiable architecture-independent data in DIR
164 [PREFIX/com]
165 --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var]
166 --libdir=DIR object code libraries in DIR [EPREFIX/lib]
167 --includedir=DIR C header files in DIR [PREFIX/include]
168 --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include]
169 --infodir=DIR info documentation in DIR [PREFIX/info]
170 --mandir=DIR man documentation in DIR [PREFIX/man]
171 --srcdir=DIR find the sources in DIR [configure dir or ..]
172 --program-prefix=PREFIX prepend PREFIX to installed program names
173 --program-suffix=SUFFIX append SUFFIX to installed program names
174 --program-transform-name=PROGRAM
175 run sed PROGRAM on installed program names
176 EOF
177 cat << EOF
178 Host type:
179 --build=BUILD configure for building on BUILD [BUILD=HOST]
180 --host=HOST configure for HOST [guessed]
181 --target=TARGET configure for TARGET [TARGET=HOST]
182 Features and packages:
183 --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
184 --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
185 --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
186 --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
187 --x-includes=DIR X include files are in DIR
188 --x-libraries=DIR X library files are in DIR
189 EOF
190 if test -n "$ac_help"; then
191 echo "--enable and --with options recognized:$ac_help"
192 fi
193 exit 0 ;;
194
195 -host | --host | --hos | --ho)
196 ac_prev=host ;;
197 -host=* | --host=* | --hos=* | --ho=*)
198 host="$ac_optarg" ;;
199
200 -includedir | --includedir | --includedi | --included | --include \
201 | --includ | --inclu | --incl | --inc)
202 ac_prev=includedir ;;
203 -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
204 | --includ=* | --inclu=* | --incl=* | --inc=*)
205 includedir="$ac_optarg" ;;
206
207 -infodir | --infodir | --infodi | --infod | --info | --inf)
208 ac_prev=infodir ;;
209 -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
210 infodir="$ac_optarg" ;;
211
212 -libdir | --libdir | --libdi | --libd)
213 ac_prev=libdir ;;
214 -libdir=* | --libdir=* | --libdi=* | --libd=*)
215 libdir="$ac_optarg" ;;
216
217 -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
218 | --libexe | --libex | --libe)
219 ac_prev=libexecdir ;;
220 -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
221 | --libexe=* | --libex=* | --libe=*)
222 libexecdir="$ac_optarg" ;;
223
224 -localstatedir | --localstatedir | --localstatedi | --localstated \
225 | --localstate | --localstat | --localsta | --localst \
226 | --locals | --local | --loca | --loc | --lo)
227 ac_prev=localstatedir ;;
228 -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
229 | --localstate=* | --localstat=* | --localsta=* | --localst=* \
230 | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
231 localstatedir="$ac_optarg" ;;
232
233 -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
234 ac_prev=mandir ;;
235 -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
236 mandir="$ac_optarg" ;;
237
238 -nfp | --nfp | --nf)
239 # Obsolete; use --without-fp.
240 with_fp=no ;;
241
242 -no-create | --no-create | --no-creat | --no-crea | --no-cre \
243 | --no-cr | --no-c)
244 no_create=yes ;;
245
246 -no-recursion | --no-recursion | --no-recursio | --no-recursi \
247 | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
248 no_recursion=yes ;;
249
250 -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
251 | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
252 | --oldin | --oldi | --old | --ol | --o)
253 ac_prev=oldincludedir ;;
254 -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
255 | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
256 | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
257 oldincludedir="$ac_optarg" ;;
258
259 -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
260 ac_prev=prefix ;;
261 -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
262 prefix="$ac_optarg" ;;
263
264 -program-prefix | --program-prefix | --program-prefi | --program-pref \
265 | --program-pre | --program-pr | --program-p)
266 ac_prev=program_prefix ;;
267 -program-prefix=* | --program-prefix=* | --program-prefi=* \
268 | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
269 program_prefix="$ac_optarg" ;;
270
271 -program-suffix | --program-suffix | --program-suffi | --program-suff \
272 | --program-suf | --program-su | --program-s)
273 ac_prev=program_suffix ;;
274 -program-suffix=* | --program-suffix=* | --program-suffi=* \
275 | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
276 program_suffix="$ac_optarg" ;;
277
278 -program-transform-name | --program-transform-name \
279 | --program-transform-nam | --program-transform-na \
280 | --program-transform-n | --program-transform- \
281 | --program-transform | --program-transfor \
282 | --program-transfo | --program-transf \
283 | --program-trans | --program-tran \
284 | --progr-tra | --program-tr | --program-t)
285 ac_prev=program_transform_name ;;
286 -program-transform-name=* | --program-transform-name=* \
287 | --program-transform-nam=* | --program-transform-na=* \
288 | --program-transform-n=* | --program-transform-=* \
289 | --program-transform=* | --program-transfor=* \
290 | --program-transfo=* | --program-transf=* \
291 | --program-trans=* | --program-tran=* \
292 | --progr-tra=* | --program-tr=* | --program-t=*)
293 program_transform_name="$ac_optarg" ;;
294
295 -q | -quiet | --quiet | --quie | --qui | --qu | --q \
296 | -silent | --silent | --silen | --sile | --sil)
297 silent=yes ;;
298
299 -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
300 ac_prev=sbindir ;;
301 -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
302 | --sbi=* | --sb=*)
303 sbindir="$ac_optarg" ;;
304
305 -sharedstatedir | --sharedstatedir | --sharedstatedi \
306 | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
307 | --sharedst | --shareds | --shared | --share | --shar \
308 | --sha | --sh)
309 ac_prev=sharedstatedir ;;
310 -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
311 | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
312 | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
313 | --sha=* | --sh=*)
314 sharedstatedir="$ac_optarg" ;;
315
316 -site | --site | --sit)
317 ac_prev=site ;;
318 -site=* | --site=* | --sit=*)
319 site="$ac_optarg" ;;
320
321 -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
322 ac_prev=srcdir ;;
323 -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
324 srcdir="$ac_optarg" ;;
325
326 -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
327 | --syscon | --sysco | --sysc | --sys | --sy)
328 ac_prev=sysconfdir ;;
329 -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
330 | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
331 sysconfdir="$ac_optarg" ;;
332
333 -target | --target | --targe | --targ | --tar | --ta | --t)
334 ac_prev=target ;;
335 -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
336 target="$ac_optarg" ;;
337
338 -v | -verbose | --verbose | --verbos | --verbo | --verb)
339 verbose=yes ;;
340
341 -version | --version | --versio | --versi | --vers)
342 echo "configure generated by autoconf version 2.13"
343 exit 0 ;;
344
345 -with-* | --with-*)
346 ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'`
347 # Reject names that are not valid shell variable names.
348 if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then
349 { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
350 fi
351 ac_package=`echo $ac_package| sed 's/-/_/g'`
352 case "$ac_option" in
353 *=*) ;;
354 *) ac_optarg=yes ;;
355 esac
356 eval "with_${ac_package}='$ac_optarg'" ;;
357
358 -without-* | --without-*)
359 ac_package=`echo $ac_option|sed -e 's/-*without-//'`
360 # Reject names that are not valid shell variable names.
361 if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then
362 { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
363 fi
364 ac_package=`echo $ac_package| sed 's/-/_/g'`
365 eval "with_${ac_package}=no" ;;
366
367 --x)
368 # Obsolete; use --with-x.
369 with_x=yes ;;
370
371 -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
372 | --x-incl | --x-inc | --x-in | --x-i)
373 ac_prev=x_includes ;;
374 -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
375 | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
376 x_includes="$ac_optarg" ;;
377
378 -x-libraries | --x-libraries | --x-librarie | --x-librari \
379 | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
380 ac_prev=x_libraries ;;
381 -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
382 | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
383 x_libraries="$ac_optarg" ;;
384
385 -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
386 ;;
387
388 *)
389 if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
390 echo "configure: warning: $ac_option: invalid host type" 1>&2
391 fi
392 if test "x$nonopt" != xNONE; then
393 { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; }
394 fi
395 nonopt="$ac_option"
396 ;;
397
398 esac
399 done
400
401 if test -n "$ac_prev"; then
402 { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; }
403 fi
404
405 trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
406
407 # File descriptor usage:
408 # 0 standard input
409 # 1 file creation
410 # 2 errors and warnings
411 # 3 some systems may open it to /dev/tty
412 # 4 used on the Kubota Titan
413 # 6 checking for... messages and results
414 # 5 compiler messages saved in config.log
415 if test "$silent" = yes; then
416 exec 6>/dev/null
417 else
418 exec 6>&1
419 fi
420 exec 5>./config.log
421
422 echo "\
423 This file contains any messages produced by compilers while
424 running configure, to aid debugging if configure makes a mistake.
425 " 1>&5
426
427 # Strip out --no-create and --no-recursion so they do not pile up.
428 # Also quote any args containing shell metacharacters.
429 ac_configure_args=
430 for ac_arg
431 do
432 case "$ac_arg" in
433 -no-create | --no-create | --no-creat | --no-crea | --no-cre \
434 | --no-cr | --no-c) ;;
435 -no-recursion | --no-recursion | --no-recursio | --no-recursi \
436 | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
437 *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
438 ac_configure_args="$ac_configure_args '$ac_arg'" ;;
439 *) ac_configure_args="$ac_configure_args $ac_arg" ;;
440 esac
441 done
442
443 # NLS nuisances.
444 # Only set these to C if already set. These must not be set unconditionally
445 # because not all systems understand e.g. LANG=C (notably SCO).
446 # Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
447 # Non-C LC_CTYPE values break the ctype check.
448 if test "${LANG+set}" = set; then LANG=C; export LANG; fi
449 if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
450 if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
451 if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi
452
453 # confdefs.h avoids OS command line length limits that DEFS can exceed.
454 rm -rf conftest* confdefs.h
455 # AIX cpp loses on an empty file, so make sure it contains at least a newline.
456 echo > confdefs.h
457
458 # A filename unique to this package, relative to the directory that
459 # configure is in, which we can look for to find out if srcdir is correct.
460 ac_unique_file=README
461
462 # Find the source files, if location was not specified.
463 if test -z "$srcdir"; then
464 ac_srcdir_defaulted=yes
465 # Try the directory containing this script, then its parent.
466 ac_prog=$0
467 ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'`
468 test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
469 srcdir=$ac_confdir
470 if test ! -r $srcdir/$ac_unique_file; then
471 srcdir=..
472 fi
473 else
474 ac_srcdir_defaulted=no
475 fi
476 if test ! -r $srcdir/$ac_unique_file; then
477 if test "$ac_srcdir_defaulted" = yes; then
478 { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; }
479 else
480 { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; }
481 fi
482 fi
483 srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
484
485 # Prefer explicitly selected file to automatically selected ones.
486 if test -z "$CONFIG_SITE"; then
487 if test "x$prefix" != xNONE; then
488 CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
489 else
490 CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
491 fi
492 fi
493 for ac_site_file in $CONFIG_SITE; do
494 if test -r "$ac_site_file"; then
495 echo "loading site script $ac_site_file"
496 . "$ac_site_file"
497 fi
498 done
499
500 if test -r "$cache_file"; then
501 echo "loading cache $cache_file"
502 . $cache_file
503 else
504 echo "creating cache $cache_file"
505 > $cache_file
506 fi
507
508 ac_ext=c
509 # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
510 ac_cpp='$CPP $CPPFLAGS'
511 ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
512 ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
513 cross_compiling=$ac_cv_prog_cc_cross
514
515 ac_exeext=
516 ac_objext=o
517 if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
518 # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
519 if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
520 ac_n= ac_c='
521 ' ac_t=' '
522 else
523 ac_n=-n ac_c= ac_t=
524 fi
525 else
526 ac_n= ac_c='\c' ac_t=
527 fi
528
529
530 echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
531 echo "configure:533: checking how to run the C preprocessor" >&5
532 # On Suns, sometimes $CPP names a directory.
533 if test -n "$CPP" && test -d "$CPP"; then
534 CPP=
535 fi
536 if test -z "$CPP"; then
537 if eval "test \"`echo '$''{'ac_cv_prog_CPP'+set}'`\" = set"; then
538 echo $ac_n "(cached) $ac_c" 1>&6
539 else
540 # This must be in double quotes, not single quotes, because CPP may get
541 # substituted into the Makefile and "${CC-cc}" will confuse make.
542 CPP="${CC-cc} -E"
543 # On the NeXT, cc -E runs the code through the compiler's parser,
544 # not just through cpp.
545 cat > conftest.$ac_ext <<EOF
546 #line 548 "configure"
547 #include "confdefs.h"
548 #include <assert.h>
549 Syntax Error
550 EOF
551 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
552 { (eval echo configure:554: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
553 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
554 if test -z "$ac_err"; then
555 :
556 else
557 echo "$ac_err" >&5
558 echo "configure: failed program was:" >&5
559 cat conftest.$ac_ext >&5
560 rm -rf conftest*
561 CPP="${CC-cc} -E -traditional-cpp"
562 cat > conftest.$ac_ext <<EOF
563 #line 565 "configure"
564 #include "confdefs.h"
565 #include <assert.h>
566 Syntax Error
567 EOF
568 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
569 { (eval echo configure:571: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
570 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
571 if test -z "$ac_err"; then
572 :
573 else
574 echo "$ac_err" >&5
575 echo "configure: failed program was:" >&5
576 cat conftest.$ac_ext >&5
577 rm -rf conftest*
578 CPP="${CC-cc} -nologo -E"
579 cat > conftest.$ac_ext <<EOF
580 #line 582 "configure"
581 #include "confdefs.h"
582 #include <assert.h>
583 Syntax Error
584 EOF
585 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
586 { (eval echo configure:588: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
587 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
588 if test -z "$ac_err"; then
589 :
590 else
591 echo "$ac_err" >&5
592 echo "configure: failed program was:" >&5
593 cat conftest.$ac_ext >&5
594 rm -rf conftest*
595 CPP=/lib/cpp
596 fi
597 rm -f conftest*
598 fi
599 rm -f conftest*
600 fi
601 rm -f conftest*
602 ac_cv_prog_CPP="$CPP"
603 fi
604 CPP="$ac_cv_prog_CPP"
605 else
606 ac_cv_prog_CPP="$CPP"
607 fi
608 echo "$ac_t""$CPP" 1>&6
609
610 missing_dir=`cd $ac_aux_dir && pwd`
611 for ac_prog in flex lex
612 do
613 # Extract the first word of "$ac_prog", so it can be a program name with args.
614 set dummy $ac_prog; ac_word=$2
615 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
616 echo "configure:618: checking for $ac_word" >&5
617 if eval "test \"`echo '$''{'ac_cv_prog_LEX'+set}'`\" = set"; then
618 echo $ac_n "(cached) $ac_c" 1>&6
619 else
620 if test -n "$LEX"; then
621 ac_cv_prog_LEX="$LEX" # Let the user override the test.
622 else
623 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
624 ac_dummy="$PATH"
625 for ac_dir in $ac_dummy; do
626 test -z "$ac_dir" && ac_dir=.
627 if test -f $ac_dir/$ac_word; then
628 ac_cv_prog_LEX="$ac_prog"
629 break
630 fi
631 done
632 IFS="$ac_save_ifs"
633 fi
634 fi
635 LEX="$ac_cv_prog_LEX"
636 if test -n "$LEX"; then
637 echo "$ac_t""$LEX" 1>&6
638 else
639 echo "$ac_t""no" 1>&6
640 fi
641
642 test -n "$LEX" && break
643 done
644 test -n "$LEX" || LEX=""$missing_dir/missing flex""
645
646 # Extract the first word of "flex", so it can be a program name with args.
647 set dummy flex; ac_word=$2
648 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
649 echo "configure:651: checking for $ac_word" >&5
650 if eval "test \"`echo '$''{'ac_cv_prog_LEX'+set}'`\" = set"; then
651 echo $ac_n "(cached) $ac_c" 1>&6
652 else
653 if test -n "$LEX"; then
654 ac_cv_prog_LEX="$LEX" # Let the user override the test.
655 else
656 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
657 ac_dummy="$PATH"
658 for ac_dir in $ac_dummy; do
659 test -z "$ac_dir" && ac_dir=.
660 if test -f $ac_dir/$ac_word; then
661 ac_cv_prog_LEX="flex"
662 break
663 fi
664 done
665 IFS="$ac_save_ifs"
666 test -z "$ac_cv_prog_LEX" && ac_cv_prog_LEX="lex"
667 fi
668 fi
669 LEX="$ac_cv_prog_LEX"
670 if test -n "$LEX"; then
671 echo "$ac_t""$LEX" 1>&6
672 else
673 echo "$ac_t""no" 1>&6
674 fi
675
676 if test -z "$LEXLIB"
677 then
678 case "$LEX" in
679 flex*) ac_lib=fl ;;
680 *) ac_lib=l ;;
681 esac
682 echo $ac_n "checking for yywrap in -l$ac_lib""... $ac_c" 1>&6
683 echo "configure:685: checking for yywrap in -l$ac_lib" >&5
684 ac_lib_var=`echo $ac_lib'_'yywrap | sed 'y%./+-%__p_%'`
685 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
686 echo $ac_n "(cached) $ac_c" 1>&6
687 else
688 ac_save_LIBS="$LIBS"
689 LIBS="-l$ac_lib $LIBS"
690 cat > conftest.$ac_ext <<EOF
691 #line 693 "configure"
692 #include "confdefs.h"
693 /* Override any gcc2 internal prototype to avoid an error. */
694 /* We use char because int might match the return type of a gcc2
695 builtin and then its argument prototype would still apply. */
696 char yywrap();
697
698 int main() {
699 yywrap()
700 ; return 0; }
701 EOF
702 if { (eval echo configure:704: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
703 rm -rf conftest*
704 eval "ac_cv_lib_$ac_lib_var=yes"
705 else
706 echo "configure: failed program was:" >&5
707 cat conftest.$ac_ext >&5
708 rm -rf conftest*
709 eval "ac_cv_lib_$ac_lib_var=no"
710 fi
711 rm -f conftest*
712 LIBS="$ac_save_LIBS"
713
714 fi
715 if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
716 echo "$ac_t""yes" 1>&6
717 LEXLIB="-l$ac_lib"
718 else
719 echo "$ac_t""no" 1>&6
720 fi
721
722 fi
723
724 echo $ac_n "checking lex output file root""... $ac_c" 1>&6
725 echo "configure:727: checking lex output file root" >&5
726 if eval "test \"`echo '$''{'ac_cv_prog_lex_root'+set}'`\" = set"; then
727 echo $ac_n "(cached) $ac_c" 1>&6
728 else
729 # The minimal lex program is just a single line: %%. But some broken lexes
730 # (Solaris, I think it was) want two %% lines, so accommodate them.
731 echo '%%
732 %%' | $LEX
733 if test -f lex.yy.c; then
734 ac_cv_prog_lex_root=lex.yy
735 elif test -f lexyy.c; then
736 ac_cv_prog_lex_root=lexyy
737 else
738 { echo "configure: error: cannot find output from $LEX; giving up" 1>&2; exit 1; }
739 fi
740 fi
741
742 echo "$ac_t""$ac_cv_prog_lex_root" 1>&6
743 LEX_OUTPUT_ROOT=$ac_cv_prog_lex_root
744
745 echo $ac_n "checking whether yytext is a pointer""... $ac_c" 1>&6
746 echo "configure:748: checking whether yytext is a pointer" >&5
747 if eval "test \"`echo '$''{'ac_cv_prog_lex_yytext_pointer'+set}'`\" = set"; then
748 echo $ac_n "(cached) $ac_c" 1>&6
749 else
750 # POSIX says lex can declare yytext either as a pointer or an array; the
751 # default is implementation-dependent. Figure out which it is, since
752 # not all implementations provide the %pointer and %array declarations.
753 ac_cv_prog_lex_yytext_pointer=no
754 echo 'extern char *yytext;' >>$LEX_OUTPUT_ROOT.c
755 ac_save_LIBS="$LIBS"
756 LIBS="$LIBS $LEXLIB"
757 cat > conftest.$ac_ext <<EOF
758 #line 760 "configure"
759 #include "confdefs.h"
760 `cat $LEX_OUTPUT_ROOT.c`
761 int main() {
762
763 ; return 0; }
764 EOF
765 if { (eval echo configure:767: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
766 rm -rf conftest*
767 ac_cv_prog_lex_yytext_pointer=yes
768 else
769 echo "configure: failed program was:" >&5
770 cat conftest.$ac_ext >&5
771 fi
772 rm -f conftest*
773 LIBS="$ac_save_LIBS"
774 rm -f "${LEX_OUTPUT_ROOT}.c"
775
776 fi
777
778 echo "$ac_t""$ac_cv_prog_lex_yytext_pointer" 1>&6
779 if test $ac_cv_prog_lex_yytext_pointer = yes; then
780 cat >> confdefs.h <<\EOF
781 #define YYTEXT_POINTER 1
782 EOF
783
784 fi
785
786
787 # The AM_INIT_AUTOMAKE macro tells automake the name and version number
788 # of the software package so it can generate rules for building a source
789 # archive.
790 ac_aux_dir=
791 for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
792 if test -f $ac_dir/install-sh; then
793 ac_aux_dir=$ac_dir
794 ac_install_sh="$ac_aux_dir/install-sh -c"
795 break
796 elif test -f $ac_dir/install.sh; then
797 ac_aux_dir=$ac_dir
798 ac_install_sh="$ac_aux_dir/install.sh -c"
799 break
800 fi
801 done
802 if test -z "$ac_aux_dir"; then
803 { echo "configure: error: can not find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." 1>&2; exit 1; }
804 fi
805 ac_config_guess=$ac_aux_dir/config.guess
806 ac_config_sub=$ac_aux_dir/config.sub
807 ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
808
809 # Find a good install program. We prefer a C program (faster),
810 # so one script is as good as another. But avoid the broken or
811 # incompatible versions:
812 # SysV /etc/install, /usr/sbin/install
813 # SunOS /usr/etc/install
814 # IRIX /sbin/install
815 # AIX /bin/install
816 # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
817 # AFS /usr/afsws/bin/install, which mishandles nonexistent args
818 # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
819 # ./install, which can be erroneously created by make from ./install.sh.
820 echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
821 echo "configure:823: checking for a BSD compatible install" >&5
822 if test -z "$INSTALL"; then
823 if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
824 echo $ac_n "(cached) $ac_c" 1>&6
825 else
826 IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":"
827 for ac_dir in $PATH; do
828 # Account for people who put trailing slashes in PATH elements.
829 case "$ac_dir/" in
830 /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
831 *)
832 # OSF1 and SCO ODT 3.0 have their own names for install.
833 # Don't use installbsd from OSF since it installs stuff as root
834 # by default.
835 for ac_prog in ginstall scoinst install; do
836 if test -f $ac_dir/$ac_prog; then
837 if test $ac_prog = install &&
838 grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
839 # AIX install. It has an incompatible calling convention.
840 :
841 else
842 ac_cv_path_install="$ac_dir/$ac_prog -c"
843 break 2
844 fi
845 fi
846 done
847 ;;
848 esac
849 done
850 IFS="$ac_save_IFS"
851
852 fi
853 if test "${ac_cv_path_install+set}" = set; then
854 INSTALL="$ac_cv_path_install"
855 else
856 # As a last resort, use the slow shell script. We don't cache a
857 # path for INSTALL within a source directory, because that will
858 # break other packages using the cache if that directory is
859 # removed, or if the path is relative.
860 INSTALL="$ac_install_sh"
861 fi
862 fi
863 echo "$ac_t""$INSTALL" 1>&6
864
865 # Use test -z because SunOS4 sh mishandles braces in ${var-val}.
866 # It thinks the first close brace ends the variable substitution.
867 test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
868
869 test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
870
871 test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
872
873 echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6
874 echo "configure:876: checking whether build environment is sane" >&5
875 # Just in case
876 sleep 1
877 echo timestamp > conftestfile
878 # Do `set' in a subshell so we don't clobber the current shell's
879 # arguments. Must try -L first in case configure is actually a
880 # symlink; some systems play weird games with the mod time of symlinks
881 # (eg FreeBSD returns the mod time of the symlink's containing
882 # directory).
883 if (
884 set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
885 if test "$*" = "X"; then
886 # -L didn't work.
887 set X `ls -t $srcdir/configure conftestfile`
888 fi
889 if test "$*" != "X $srcdir/configure conftestfile" \
890 && test "$*" != "X conftestfile $srcdir/configure"; then
891
892 # If neither matched, then we have a broken ls. This can happen
893 # if, for instance, CONFIG_SHELL is bash and it inherits a
894 # broken ls alias from the environment. This has actually
895 # happened. Such a system could not be considered "sane".
896 { echo "configure: error: ls -t appears to fail. Make sure there is not a broken
897 alias in your environment" 1>&2; exit 1; }
898 fi
899
900 test "$2" = conftestfile
901 )
902 then
903 # Ok.
904 :
905 else
906 { echo "configure: error: newly created file is older than distributed files!
907 Check your system clock" 1>&2; exit 1; }
908 fi
909 rm -f conftest*
910 echo "$ac_t""yes" 1>&6
911 if test "$program_transform_name" = s,x,x,; then
912 program_transform_name=
913 else
914 # Double any \ or $. echo might interpret backslashes.
915 cat <<\EOF_SED > conftestsed
916 s,\\,\\\\,g; s,\$,$$,g
917 EOF_SED
918 program_transform_name="`echo $program_transform_name|sed -f conftestsed`"
919 rm -f conftestsed
920 fi
921 test "$program_prefix" != NONE &&
922 program_transform_name="s,^,${program_prefix},; $program_transform_name"
923 # Use a double $ so make ignores it.
924 test "$program_suffix" != NONE &&
925 program_transform_name="s,\$\$,${program_suffix},; $program_transform_name"
926
927 # sed with no file args requires a program.
928 test "$program_transform_name" = "" && program_transform_name="s,x,x,"
929
930 echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
931 echo "configure:933: checking whether ${MAKE-make} sets \${MAKE}" >&5
932 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
933 if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
934 echo $ac_n "(cached) $ac_c" 1>&6
935 else
936 cat > conftestmake <<\EOF
937 all:
938 @echo 'ac_maketemp="${MAKE}"'
939 EOF
940 # GNU make sometimes prints "make[1]: Entering...", which would confuse us.
941 eval `${MAKE-make} -f conftestmake 2>/dev/null | grep temp=`
942 if test -n "$ac_maketemp"; then
943 eval ac_cv_prog_make_${ac_make}_set=yes
944 else
945 eval ac_cv_prog_make_${ac_make}_set=no
946 fi
947 rm -f conftestmake
948 fi
949 if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
950 echo "$ac_t""yes" 1>&6
951 SET_MAKE=
952 else
953 echo "$ac_t""no" 1>&6
954 SET_MAKE="MAKE=${MAKE-make}"
955 fi
956
957
958 PACKAGE=pipenightdreams
959
960 VERSION=0.9.0
961
962 if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
963 { echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
964 fi
965 cat >> confdefs.h <<EOF
966 #define PACKAGE "$PACKAGE"
967 EOF
968
969 cat >> confdefs.h <<EOF
970 #define VERSION "$VERSION"
971 EOF
972
973
974
975 missing_dir=`cd $ac_aux_dir && pwd`
976 echo $ac_n "checking for working aclocal""... $ac_c" 1>&6
977 echo "configure:979: checking for working aclocal" >&5
978 # Run test in a subshell; some versions of sh will print an error if
979 # an executable is not found, even if stderr is redirected.
980 # Redirect stdin to placate older versions of autoconf. Sigh.
981 if (aclocal --version) < /dev/null > /dev/null 2>&1; then
982 ACLOCAL=aclocal
983 echo "$ac_t""found" 1>&6
984 else
985 ACLOCAL="$missing_dir/missing aclocal"
986 echo "$ac_t""missing" 1>&6
987 fi
988
989 echo $ac_n "checking for working autoconf""... $ac_c" 1>&6
990 echo "configure:992: checking for working autoconf" >&5
991 # Run test in a subshell; some versions of sh will print an error if
992 # an executable is not found, even if stderr is redirected.
993 # Redirect stdin to placate older versions of autoconf. Sigh.
994 if (autoconf --version) < /dev/null > /dev/null 2>&1; then
995 AUTOCONF=autoconf
996 echo "$ac_t""found" 1>&6
997 else
998 AUTOCONF="$missing_dir/missing autoconf"
999 echo "$ac_t""missing" 1>&6
1000 fi
1001
1002 echo $ac_n "checking for working automake""... $ac_c" 1>&6
1003 echo "configure:1005: checking for working automake" >&5
1004 # Run test in a subshell; some versions of sh will print an error if
1005 # an executable is not found, even if stderr is redirected.
1006 # Redirect stdin to placate older versions of autoconf. Sigh.
1007 if (automake --version) < /dev/null > /dev/null 2>&1; then
1008 AUTOMAKE=automake
1009 echo "$ac_t""found" 1>&6
1010 else
1011 AUTOMAKE="$missing_dir/missing automake"
1012 echo "$ac_t""missing" 1>&6
1013 fi
1014
1015 echo $ac_n "checking for working autoheader""... $ac_c" 1>&6
1016 echo "configure:1018: checking for working autoheader" >&5
1017 # Run test in a subshell; some versions of sh will print an error if
1018 # an executable is not found, even if stderr is redirected.
1019 # Redirect stdin to placate older versions of autoconf. Sigh.
1020 if (autoheader --version) < /dev/null > /dev/null 2>&1; then
1021 AUTOHEADER=autoheader
1022 echo "$ac_t""found" 1>&6
1023 else
1024 AUTOHEADER="$missing_dir/missing autoheader"
1025 echo "$ac_t""missing" 1>&6
1026 fi
1027
1028 echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6
1029 echo "configure:1031: checking for working makeinfo" >&5
1030 # Run test in a subshell; some versions of sh will print an error if
1031 # an executable is not found, even if stderr is redirected.
1032 # Redirect stdin to placate older versions of autoconf. Sigh.
1033 if (makeinfo --version) < /dev/null > /dev/null 2>&1; then
1034 MAKEINFO=makeinfo
1035 echo "$ac_t""found" 1>&6
1036 else
1037 MAKEINFO="$missing_dir/missing makeinfo"
1038 echo "$ac_t""missing" 1>&6
1039 fi
1040
1041
1042
1043
1044
1045
1046 CXXFLAGS="-O2"
1047 # We now have a list of macros which tell autoconf what tools we need to
1048 # build our software, in this case "make", a C++ compiler, and "install".
1049 # If we were creating a C program, we would use AC_PROC_CC instead of CXX.
1050 echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
1051 echo "configure:1053: checking whether ${MAKE-make} sets \${MAKE}" >&5
1052 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
1053 if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
1054 echo $ac_n "(cached) $ac_c" 1>&6
1055 else
1056 cat > conftestmake <<\EOF
1057 all:
1058 @echo 'ac_maketemp="${MAKE}"'
1059 EOF
1060 # GNU make sometimes prints "make[1]: Entering...", which would confuse us.
1061 eval `${MAKE-make} -f conftestmake 2>/dev/null | grep temp=`
1062 if test -n "$ac_maketemp"; then
1063 eval ac_cv_prog_make_${ac_make}_set=yes
1064 else
1065 eval ac_cv_prog_make_${ac_make}_set=no
1066 fi
1067 rm -f conftestmake
1068 fi
1069 if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
1070 echo "$ac_t""yes" 1>&6
1071 SET_MAKE=
1072 else
1073 echo "$ac_t""no" 1>&6
1074 SET_MAKE="MAKE=${MAKE-make}"
1075 fi
1076
1077 for ac_prog in $CCC c++ g++ gcc CC cxx cc++ cl
1078 do
1079 # Extract the first word of "$ac_prog", so it can be a program name with args.
1080 set dummy $ac_prog; ac_word=$2
1081 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
1082 echo "configure:1084: checking for $ac_word" >&5
1083 if eval "test \"`echo '$''{'ac_cv_prog_CXX'+set}'`\" = set"; then
1084 echo $ac_n "(cached) $ac_c" 1>&6
1085 else
1086 if test -n "$CXX"; then
1087 ac_cv_prog_CXX="$CXX" # Let the user override the test.
1088 else
1089 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
1090 ac_dummy="$PATH"
1091 for ac_dir in $ac_dummy; do
1092 test -z "$ac_dir" && ac_dir=.
1093 if test -f $ac_dir/$ac_word; then
1094 ac_cv_prog_CXX="$ac_prog"
1095 break
1096 fi
1097 done
1098 IFS="$ac_save_ifs"
1099 fi
1100 fi
1101 CXX="$ac_cv_prog_CXX"
1102 if test -n "$CXX"; then
1103 echo "$ac_t""$CXX" 1>&6
1104 else
1105 echo "$ac_t""no" 1>&6
1106 fi
1107
1108 test -n "$CXX" && break
1109 done
1110 test -n "$CXX" || CXX="gcc"
1111
1112
1113 echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works""... $ac_c" 1>&6
1114 echo "configure:1116: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5
1115
1116 ac_ext=C
1117 # CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
1118 ac_cpp='$CXXCPP $CPPFLAGS'
1119 ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
1120 ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
1121 cross_compiling=$ac_cv_prog_cxx_cross
1122
1123 cat > conftest.$ac_ext << EOF
1124
1125 #line 1127 "configure"
1126 #include "confdefs.h"
1127
1128 int main(){return(0);}
1129 EOF
1130 if { (eval echo configure:1132: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
1131 ac_cv_prog_cxx_works=yes
1132 # If we can't run a trivial program, we are probably using a cross compiler.
1133 if (./conftest; exit) 2>/dev/null; then
1134 ac_cv_prog_cxx_cross=no
1135 else
1136 ac_cv_prog_cxx_cross=yes
1137 fi
1138 else
1139 echo "configure: failed program was:" >&5
1140 cat conftest.$ac_ext >&5
1141 ac_cv_prog_cxx_works=no
1142 fi
1143 rm -fr conftest*
1144 ac_ext=c
1145 # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
1146 ac_cpp='$CPP $CPPFLAGS'
1147 ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
1148 ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
1149 cross_compiling=$ac_cv_prog_cc_cross
1150
1151 echo "$ac_t""$ac_cv_prog_cxx_works" 1>&6
1152 if test $ac_cv_prog_cxx_works = no; then
1153 { echo "configure: error: installation or configuration problem: C++ compiler cannot create executables." 1>&2; exit 1; }
1154 fi
1155 echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
1156 echo "configure:1158: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler" >&5
1157 echo "$ac_t""$ac_cv_prog_cxx_cross" 1>&6
1158 cross_compiling=$ac_cv_prog_cxx_cross
1159
1160 echo $ac_n "checking whether we are using GNU C++""... $ac_c" 1>&6
1161 echo "configure:1163: checking whether we are using GNU C++" >&5
1162 if eval "test \"`echo '$''{'ac_cv_prog_gxx'+set}'`\" = set"; then
1163 echo $ac_n "(cached) $ac_c" 1>&6
1164 else
1165 cat > conftest.C <<EOF
1166 #ifdef __GNUC__
1167 yes;
1168 #endif
1169 EOF
1170 if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:1172: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
1171 ac_cv_prog_gxx=yes
1172 else
1173 ac_cv_prog_gxx=no
1174 fi
1175 fi
1176
1177 echo "$ac_t""$ac_cv_prog_gxx" 1>&6
1178
1179 if test $ac_cv_prog_gxx = yes; then
1180 GXX=yes
1181 else
1182 GXX=
1183 fi
1184
1185 ac_test_CXXFLAGS="${CXXFLAGS+set}"
1186 ac_save_CXXFLAGS="$CXXFLAGS"
1187 CXXFLAGS=
1188 echo $ac_n "checking whether ${CXX-g++} accepts -g""... $ac_c" 1>&6
1189 echo "configure:1191: checking whether ${CXX-g++} accepts -g" >&5
1190 if eval "test \"`echo '$''{'ac_cv_prog_cxx_g'+set}'`\" = set"; then
1191 echo $ac_n "(cached) $ac_c" 1>&6
1192 else
1193 echo 'void f(){}' > conftest.cc
1194 if test -z "`${CXX-g++} -g -c conftest.cc 2>&1`"; then
1195 ac_cv_prog_cxx_g=yes
1196 else
1197 ac_cv_prog_cxx_g=no
1198 fi
1199 rm -f conftest*
1200
1201 fi
1202
1203 echo "$ac_t""$ac_cv_prog_cxx_g" 1>&6
1204 if test "$ac_test_CXXFLAGS" = set; then
1205 CXXFLAGS="$ac_save_CXXFLAGS"
1206 elif test $ac_cv_prog_cxx_g = yes; then
1207 if test "$GXX" = yes; then
1208 CXXFLAGS="-g -O2"
1209 else
1210 CXXFLAGS="-g"
1211 fi
1212 else
1213 if test "$GXX" = yes; then
1214 CXXFLAGS="-O2"
1215 else
1216 CXXFLAGS=
1217 fi
1218 fi
1219
1220 # Find a good install program. We prefer a C program (faster),
1221 # so one script is as good as another. But avoid the broken or
1222 # incompatible versions:
1223 # SysV /etc/install, /usr/sbin/install
1224 # SunOS /usr/etc/install
1225 # IRIX /sbin/install
1226 # AIX /bin/install
1227 # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
1228 # AFS /usr/afsws/bin/install, which mishandles nonexistent args
1229 # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
1230 # ./install, which can be erroneously created by make from ./install.sh.
1231 echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
1232 echo "configure:1234: checking for a BSD compatible install" >&5
1233 if test -z "$INSTALL"; then
1234 if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
1235 echo $ac_n "(cached) $ac_c" 1>&6
1236 else
1237 IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":"
1238 for ac_dir in $PATH; do
1239 # Account for people who put trailing slashes in PATH elements.
1240 case "$ac_dir/" in
1241 /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
1242 *)
1243 # OSF1 and SCO ODT 3.0 have their own names for install.
1244 # Don't use installbsd from OSF since it installs stuff as root
1245 # by default.
1246 for ac_prog in ginstall scoinst install; do
1247 if test -f $ac_dir/$ac_prog; then
1248 if test $ac_prog = install &&
1249 grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
1250 # AIX install. It has an incompatible calling convention.
1251 :
1252 else
1253 ac_cv_path_install="$ac_dir/$ac_prog -c"
1254 break 2
1255 fi
1256 fi
1257 done
1258 ;;
1259 esac
1260 done
1261 IFS="$ac_save_IFS"
1262
1263 fi
1264 if test "${ac_cv_path_install+set}" = set; then
1265 INSTALL="$ac_cv_path_install"
1266 else
1267 # As a last resort, use the slow shell script. We don't cache a
1268 # path for INSTALL within a source directory, because that will
1269 # break other packages using the cache if that directory is
1270 # removed, or if the path is relative.
1271 INSTALL="$ac_install_sh"
1272 fi
1273 fi
1274 echo "$ac_t""$INSTALL" 1>&6
1275
1276 # Use test -z because SunOS4 sh mishandles braces in ${var-val}.
1277 # It thinks the first close brace ends the variable substitution.
1278 test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
1279
1280 test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
1281
1282 test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
1283
1284
1285 # This is a trick I learned at Loki - the current compiler for the alpha
1286 # architecture doesn't produce code that works on all versions of the
1287 # alpha processor. This bit detects the current compile architecture
1288 # and sets the compiler flags to produce portable binary code.
1289 #AC_CANONICAL_HOST
1290 echo $ac_n "checking target system type""... $ac_c" 1>&6
1291 echo "configure:1293: checking target system type" >&5
1292
1293 target_alias=$target
1294 case "$target_alias" in
1295 NONE)
1296 case $nonopt in
1297 NONE) target_alias=$host_alias ;;
1298 *) target_alias=$nonopt ;;
1299 esac ;;
1300 esac
1301
1302 target=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $target_alias`
1303 target_cpu=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
1304 target_vendor=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
1305 target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
1306 echo "$ac_t""$target" 1>&6
1307
1308 case "$target" in
1309 alpha*-*-linux*)
1310 CXXFLAGS="$CXXFLAGS -mcpu=ev4 -Wa,-mall"
1311 ;;
1312 esac
1313
1314 # Use the macro SDL provides to check the installed version of the SDL
1315 # development environment. Abort the configuration process if the
1316 # minimum version we require isn't available.
1317 SDL_VERSION=1.1.5
1318 # Check whether --with-sdl-prefix or --without-sdl-prefix was given.
1319 if test "${with_sdl_prefix+set}" = set; then
1320 withval="$with_sdl_prefix"
1321 sdl_prefix="$withval"
1322 else
1323 sdl_prefix=""
1324 fi
1325
1326 # Check whether --with-sdl-exec-prefix or --without-sdl-exec-prefix was given.
1327 if test "${with_sdl_exec_prefix+set}" = set; then
1328 withval="$with_sdl_exec_prefix"
1329 sdl_exec_prefix="$withval"
1330 else
1331 sdl_exec_prefix=""
1332 fi
1333
1334 # Check whether --enable-sdltest or --disable-sdltest was given.
1335 if test "${enable_sdltest+set}" = set; then
1336 enableval="$enable_sdltest"
1337 :
1338 else
1339 enable_sdltest=yes
1340 fi
1341
1342
1343 if test x$sdl_exec_prefix != x ; then
1344 sdl_args="$sdl_args --exec-prefix=$sdl_exec_prefix"
1345 if test x${SDL_CONFIG+set} != xset ; then
1346 SDL_CONFIG=$sdl_exec_prefix/bin/sdl-config
1347 fi
1348 fi
1349 if test x$sdl_prefix != x ; then
1350 sdl_args="$sdl_args --prefix=$sdl_prefix"
1351 if test x${SDL_CONFIG+set} != xset ; then
1352 SDL_CONFIG=$sdl_prefix/bin/sdl-config
1353 fi
1354 fi
1355
1356 # Extract the first word of "sdl-config", so it can be a program name with args.
1357 set dummy sdl-config; ac_word=$2
1358 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
1359 echo "configure:1361: checking for $ac_word" >&5
1360 if eval "test \"`echo '$''{'ac_cv_path_SDL_CONFIG'+set}'`\" = set"; then
1361 echo $ac_n "(cached) $ac_c" 1>&6
1362 else
1363 case "$SDL_CONFIG" in
1364 /*)
1365 ac_cv_path_SDL_CONFIG="$SDL_CONFIG" # Let the user override the test with a path.
1366 ;;
1367 ?:/*)
1368 ac_cv_path_SDL_CONFIG="$SDL_CONFIG" # Let the user override the test with a dos path.
1369 ;;
1370 *)
1371 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
1372 ac_dummy="$PATH"
1373 for ac_dir in $ac_dummy; do
1374 test -z "$ac_dir" && ac_dir=.
1375 if test -f $ac_dir/$ac_word; then
1376 ac_cv_path_SDL_CONFIG="$ac_dir/$ac_word"
1377 break
1378 fi
1379 done
1380 IFS="$ac_save_ifs"
1381 test -z "$ac_cv_path_SDL_CONFIG" && ac_cv_path_SDL_CONFIG="no"
1382 ;;
1383 esac
1384 fi
1385 SDL_CONFIG="$ac_cv_path_SDL_CONFIG"
1386 if test -n "$SDL_CONFIG"; then
1387 echo "$ac_t""$SDL_CONFIG" 1>&6
1388 else
1389 echo "$ac_t""no" 1>&6
1390 fi
1391
1392 min_sdl_version=$SDL_VERSION
1393 echo $ac_n "checking for SDL - version >= $min_sdl_version""... $ac_c" 1>&6
1394 echo "configure:1396: checking for SDL - version >= $min_sdl_version" >&5
1395 no_sdl=""
1396 if test "$SDL_CONFIG" = "no" ; then
1397 no_sdl=yes
1398 else
1399 SDL_CFLAGS=`$SDL_CONFIG $sdlconf_args --cflags`
1400 SDL_LIBS=`$SDL_CONFIG $sdlconf_args --libs`
1401
1402 sdl_major_version=`$SDL_CONFIG $sdl_args --version | \
1403 sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\1/'`
1404 sdl_minor_version=`$SDL_CONFIG $sdl_args --version | \
1405 sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\2/'`
1406 sdl_micro_version=`$SDL_CONFIG $sdl_config_args --version | \
1407 sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\3/'`
1408 if test "x$enable_sdltest" = "xyes" ; then
1409 ac_save_CFLAGS="$CFLAGS"
1410 ac_save_LIBS="$LIBS"
1411 CFLAGS="$CFLAGS $SDL_CFLAGS"
1412 LIBS="$LIBS $SDL_LIBS"
1413 rm -f conf.sdltest
1414 if test "$cross_compiling" = yes; then
1415 echo $ac_n "cross compiling; assumed OK... $ac_c"
1416 else
1417 cat > conftest.$ac_ext <<EOF
1418 #line 1420 "configure"
1419 #include "confdefs.h"
1420
1421 #include <stdio.h>
1422 #include <stdlib.h>
1423 #include <string.h>
1424 #include <SDL/SDL.h>
1425
1426 char*
1427 my_strdup (char *str)
1428 {
1429 char *new_str;
1430
1431 if (str)
1432 {
1433 new_str = malloc ((strlen (str) + 1) * sizeof(char));
1434 strcpy (new_str, str);
1435 }
1436 else
1437 new_str = NULL;
1438
1439 return new_str;
1440 }
1441
1442 int main ()
1443 {
1444 int major, minor, micro;
1445 char *tmp_version;
1446
1447 system ("touch conf.sdltest");
1448
1449 /* HP/UX 9 (%@#!) writes to sscanf strings */
1450 tmp_version = my_strdup("$min_sdl_version");
1451 if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, &micro) != 3) {
1452 printf("%s, bad version string\n", "$min_sdl_version");
1453 exit(1);
1454 }
1455
1456 if (($sdl_major_version > major) ||
1457 (($sdl_major_version == major) && ($sdl_minor_version > minor)) ||
1458 (($sdl_major_version == major) && ($sdl_minor_version == minor) && ($sdl_micro_version >= micro)))
1459 {
1460 return 0;
1461 }
1462 else
1463 {
1464 printf("\n*** 'sdl-config --version' returned %d.%d.%d, but the minimum version\n", $sdl_major_version, $sdl_minor_version, $sdl_micro_version);
1465 printf("*** of SDL required is %d.%d.%d. If sdl-config is correct, then it is\n", major, minor, micro);
1466 printf("*** best to upgrade to the required version.\n");
1467 printf("*** If sdl-config was wrong, set the environment variable SDL_CONFIG\n");
1468 printf("*** to point to the correct copy of sdl-config, and remove the file\n");
1469 printf("*** config.cache before re-running configure\n");
1470 return 1;
1471 }
1472 }
1473
1474
1475 EOF
1476 if { (eval echo configure:1478: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
1477 then
1478 :
1479 else
1480 echo "configure: failed program was:" >&5
1481 cat conftest.$ac_ext >&5
1482 rm -fr conftest*
1483 no_sdl=yes
1484 fi
1485 rm -fr conftest*
1486 fi
1487
1488 CFLAGS="$ac_save_CFLAGS"
1489 LIBS="$ac_save_LIBS"
1490 fi
1491 fi
1492 if test "x$no_sdl" = x ; then
1493 echo "$ac_t""yes" 1>&6
1494 :
1495 else
1496 echo "$ac_t""no" 1>&6
1497 if test "$SDL_CONFIG" = "no" ; then
1498 echo "*** The sdl-config script installed by SDL could not be found"
1499 echo "*** If SDL was installed in PREFIX, make sure PREFIX/bin is in"
1500 echo "*** your path, or set the SDL_CONFIG environment variable to the"
1501 echo "*** full path to sdl-config."
1502 else
1503 if test -f conf.sdltest ; then
1504 :
1505 else
1506 echo "*** Could not run SDL test program, checking why..."
1507 CFLAGS="$CFLAGS $SDL_CFLAGS"
1508 LIBS="$LIBS $SDL_LIBS"
1509 cat > conftest.$ac_ext <<EOF
1510 #line 1512 "configure"
1511 #include "confdefs.h"
1512
1513 #include <stdio.h>
1514 #include <SDL/SDL.h>
1515
1516 int main() {
1517 return 0;
1518 ; return 0; }
1519 EOF
1520 if { (eval echo configure:1522: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
1521 rm -rf conftest*
1522 echo "*** The test program compiled, but did not run. This usually means"
1523 echo "*** that the run-time linker is not finding SDL or finding the wrong"
1524 echo "*** version of SDL. If it is not finding SDL, you'll need to set your"
1525 echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
1526 echo "*** to the installed location Also, make sure you have run ldconfig if that"
1527 echo "*** is required on your system"
1528 echo "***"
1529 echo "*** If you have an old version installed, it is best to remove it, although"
1530 echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"
1531 else
1532 echo "configure: failed program was:" >&5
1533 cat conftest.$ac_ext >&5
1534 rm -rf conftest*
1535 echo "*** The test program failed to compile or link. See the file config.log for the"
1536 echo "*** exact error that occured. This usually means SDL was incorrectly installed"
1537 echo "*** or that you have moved SDL since it was installed. In the latter case, you"
1538 echo "*** may want to edit the sdl-config script: $SDL_CONFIG"
1539 fi
1540 rm -f conftest*
1541 CFLAGS="$ac_save_CFLAGS"
1542 LIBS="$ac_save_LIBS"
1543 fi
1544 fi
1545 SDL_CFLAGS=""
1546 SDL_LIBS=""
1547 { echo "configure: error: *** SDL version $SDL_VERSION not found!" 1>&2; exit 1; }
1548
1549 fi
1550
1551
1552 rm -f conf.sdltest
1553
1554 # Add the SDL preprocessor flags and libraries to the build process
1555 CXXFLAGS="$CXXFLAGS $SDL_CFLAGS"
1556 LIBS="$LIBS $SDL_LIBS"
1557
1558 echo $ac_n "checking for IMG_Load in -lSDL_image""... $ac_c" 1>&6
1559 echo "configure:1561: checking for IMG_Load in -lSDL_image" >&5
1560 ac_lib_var=`echo SDL_image'_'IMG_Load | sed 'y%./+-%__p_%'`
1561 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
1562 echo $ac_n "(cached) $ac_c" 1>&6
1563 else
1564 ac_save_LIBS="$LIBS"
1565 LIBS="-lSDL_image $LIBS"
1566 cat > conftest.$ac_ext <<EOF
1567 #line 1569 "configure"
1568 #include "confdefs.h"
1569 /* Override any gcc2 internal prototype to avoid an error. */
1570 /* We use char because int might match the return type of a gcc2
1571 builtin and then its argument prototype would still apply. */
1572 char IMG_Load();
1573
1574 int main() {
1575 IMG_Load()
1576 ; return 0; }
1577 EOF
1578 if { (eval echo configure:1580: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
1579 rm -rf conftest*
1580 eval "ac_cv_lib_$ac_lib_var=yes"
1581 else
1582 echo "configure: failed program was:" >&5
1583 cat conftest.$ac_ext >&5
1584 rm -rf conftest*
1585 eval "ac_cv_lib_$ac_lib_var=no"
1586 fi
1587 rm -f conftest*
1588 LIBS="$ac_save_LIBS"
1589
1590 fi
1591 if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
1592 echo "$ac_t""yes" 1>&6
1593 ac_tr_lib=HAVE_LIB`echo SDL_image | sed -e 's/[^a-zA-Z0-9_]/_/g' \
1594 -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
1595 cat >> confdefs.h <<EOF
1596 #define $ac_tr_lib 1
1597 EOF
1598
1599 LIBS="-lSDL_image $LIBS"
1600
1601 else
1602 echo "$ac_t""no" 1>&6
1603 fi
1604
1605
1606 LIBTOOL=../libtool
1607
1608
1609 #Thanks to Ingo Ruhnke <grumbel@gmx.de>
1610
1611 game_datadir="$datadir/games/$PACKAGE"
1612 game_datadir=`(
1613 test "x$prefix" = xNONE && prefix=${ac_default_prefix}
1614 test "x$exec_prefix" = xNONE && exec_prefix=${prefix}
1615 eval echo \""$game_datadir"\"
1616 )`
1617
1618 cat >> confdefs.h <<EOF
1619 #define GAME_DATADIR "$game_datadir"
1620 EOF
1621
1622
1623 # Finally create all the generated files
1624 # The configure script takes "file.in" and substitutes variables to produce
1625 # "file". In this case we are just generating the Makefiles, but this could
1626 # be used to generate any number of automatically generated files.
1627 trap '' 1 2 15
1628 cat > confcache <<\EOF
1629 # This file is a shell script that caches the results of configure
1630 # tests run on this system so they can be shared between configure
1631 # scripts and configure runs. It is not useful on other systems.
1632 # If it contains results you don't want to keep, you may remove or edit it.
1633 #
1634 # By default, configure uses ./config.cache as the cache file,
1635 # creating it if it does not exist already. You can give configure
1636 # the --cache-file=FILE option to use a different cache file; that is
1637 # what configure does when it calls configure scripts in
1638 # subdirectories, so they share the cache.
1639 # Giving --cache-file=/dev/null disables caching, for debugging configure.
1640 # config.status only pays attention to the cache file if you give it the
1641 # --recheck option to rerun configure.
1642 #
1643 EOF
1644 # The following way of writing the cache mishandles newlines in values,
1645 # but we know of no workaround that is simple, portable, and efficient.
1646 # So, don't put newlines in cache variables' values.
1647 # Ultrix sh set writes to stderr and can't be redirected directly,
1648 # and sets the high bit in the cache file unless we assign to the vars.
1649 (set) 2>&1 |
1650 case `(ac_space=' '; set | grep ac_space) 2>&1` in
1651 *ac_space=\ *)
1652 # `set' does not quote correctly, so add quotes (double-quote substitution
1653 # turns \\\\ into \\, and sed turns \\ into \).
1654 sed -n \
1655 -e "s/'/'\\\\''/g" \
1656 -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
1657 ;;
1658 *)
1659 # `set' quotes correctly as required by POSIX, so do not add quotes.
1660 sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
1661 ;;
1662 esac >> confcache
1663 if cmp -s $cache_file confcache; then
1664 :
1665 else
1666 if test -w $cache_file; then
1667 echo "updating cache $cache_file"
1668 cat confcache > $cache_file
1669 else
1670 echo "not updating unwritable cache $cache_file"
1671 fi
1672 fi
1673 rm -f confcache
1674
1675 trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
1676
1677 test "x$prefix" = xNONE && prefix=$ac_default_prefix
1678 # Let make expand exec_prefix.
1679 test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
1680
1681 # Any assignment to VPATH causes Sun make to only execute
1682 # the first set of double-colon rules, so remove it if not needed.
1683 # If there is a colon in the path, we need to keep it.
1684 if test "x$srcdir" = x.; then
1685 ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d'
1686 fi
1687
1688 trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15
1689
1690 DEFS=-DHAVE_CONFIG_H
1691
1692 # Without the "./", some shells look in PATH for config.status.
1693 : ${CONFIG_STATUS=./config.status}
1694
1695 echo creating $CONFIG_STATUS
1696 rm -f $CONFIG_STATUS
1697 cat > $CONFIG_STATUS <<EOF
1698 #! /bin/sh
1699 # Generated automatically by configure.
1700 # Run this file to recreate the current configuration.
1701 # This directory was configured as follows,
1702 # on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
1703 #
1704 # $0 $ac_configure_args
1705 #
1706 # Compiler output produced by configure, useful for debugging
1707 # configure, is in ./config.log if it exists.
1708
1709 ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
1710 for ac_option
1711 do
1712 case "\$ac_option" in
1713 -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
1714 echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
1715 exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
1716 -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
1717 echo "$CONFIG_STATUS generated by autoconf version 2.13"
1718 exit 0 ;;
1719 -help | --help | --hel | --he | --h)
1720 echo "\$ac_cs_usage"; exit 0 ;;
1721 *) echo "\$ac_cs_usage"; exit 1 ;;
1722 esac
1723 done
1724
1725 ac_given_srcdir=$srcdir
1726 ac_given_INSTALL="$INSTALL"
1727
1728 trap 'rm -fr `echo "
1729 Makefile
1730 src/Makefile
1731 levels/Makefile
1732 images/Makefile
1733 images/arrows_yellow/Makefile
1734 images/flow_green/Makefile
1735 images/pipes_toys/Makefile
1736 images/default/Makefile
1737 images/flow_light/Makefile
1738 images/pipes_cables/Makefile
1739 images/pipes_wire/Makefile
1740 images/pipes_metal/Makefile
1741 images/arrows_grey/Makefile
1742 images/flow_blue/Makefile
1743 images/pipes_space/Makefile
1744 images/pipes_space/back01/Makefile
1745 images/pipes_space/back02/Makefile
1746 images/pipes_space/back03/Makefile
1747 images/pipes_space/back04/Makefile
1748 images/pipes_space/back05/Makefile
1749 man/Makefile
1750 src/config.h" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
1751 EOF
1752 cat >> $CONFIG_STATUS <<EOF
1753
1754 # Protect against being on the right side of a sed subst in config.status.
1755 sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g;
1756 s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF
1757 $ac_vpsub
1758 $extrasub
1759 s%@SHELL@%$SHELL%g
1760 s%@CFLAGS@%$CFLAGS%g
1761 s%@CPPFLAGS@%$CPPFLAGS%g
1762 s%@CXXFLAGS@%$CXXFLAGS%g
1763 s%@FFLAGS@%$FFLAGS%g
1764 s%@DEFS@%$DEFS%g
1765 s%@LDFLAGS@%$LDFLAGS%g
1766 s%@LIBS@%$LIBS%g
1767 s%@exec_prefix@%$exec_prefix%g
1768 s%@prefix@%$prefix%g
1769 s%@program_transform_name@%$program_transform_name%g
1770 s%@bindir@%$bindir%g
1771 s%@sbindir@%$sbindir%g
1772 s%@libexecdir@%$libexecdir%g
1773 s%@datadir@%$datadir%g
1774 s%@sysconfdir@%$sysconfdir%g
1775 s%@sharedstatedir@%$sharedstatedir%g
1776 s%@localstatedir@%$localstatedir%g
1777 s%@libdir@%$libdir%g
1778 s%@includedir@%$includedir%g
1779 s%@oldincludedir@%$oldincludedir%g
1780 s%@infodir@%$infodir%g
1781 s%@mandir@%$mandir%g
1782 s%@LEX@%$LEX%g
1783 s%@LEXLIB@%$LEXLIB%g
1784 s%@CPP@%$CPP%g
1785 s%@LEX_OUTPUT_ROOT@%$LEX_OUTPUT_ROOT%g
1786 s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
1787 s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g
1788 s%@INSTALL_DATA@%$INSTALL_DATA%g
1789 s%@PACKAGE@%$PACKAGE%g
1790 s%@VERSION@%$VERSION%g
1791 s%@ACLOCAL@%$ACLOCAL%g
1792 s%@AUTOCONF@%$AUTOCONF%g
1793 s%@AUTOMAKE@%$AUTOMAKE%g
1794 s%@AUTOHEADER@%$AUTOHEADER%g
1795 s%@MAKEINFO@%$MAKEINFO%g
1796 s%@SET_MAKE@%$SET_MAKE%g
1797 s%@CXX@%$CXX%g
1798 s%@target@%$target%g
1799 s%@target_alias@%$target_alias%g
1800 s%@target_cpu@%$target_cpu%g
1801 s%@target_vendor@%$target_vendor%g
1802 s%@target_os@%$target_os%g
1803 s%@SDL_CONFIG@%$SDL_CONFIG%g
1804 s%@SDL_CFLAGS@%$SDL_CFLAGS%g
1805 s%@SDL_LIBS@%$SDL_LIBS%g
1806 s%@LIBTOOL@%$LIBTOOL%g
1807
1808 CEOF
1809 EOF
1810
1811 cat >> $CONFIG_STATUS <<\EOF
1812
1813 # Split the substitutions into bite-sized pieces for seds with
1814 # small command number limits, like on Digital OSF/1 and HP-UX.
1815 ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
1816 ac_file=1 # Number of current file.
1817 ac_beg=1 # First line for current file.
1818 ac_end=$ac_max_sed_cmds # Line after last line for current file.
1819 ac_more_lines=:
1820 ac_sed_cmds=""
1821 while $ac_more_lines; do
1822 if test $ac_beg -gt 1; then
1823 sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file
1824 else
1825 sed "${ac_end}q" conftest.subs > conftest.s$ac_file
1826 fi
1827 if test ! -s conftest.s$ac_file; then
1828 ac_more_lines=false
1829 rm -f conftest.s$ac_file
1830 else
1831 if test -z "$ac_sed_cmds"; then
1832 ac_sed_cmds="sed -f conftest.s$ac_file"
1833 else
1834 ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file"
1835 fi
1836 ac_file=`expr $ac_file + 1`
1837 ac_beg=$ac_end
1838 ac_end=`expr $ac_end + $ac_max_sed_cmds`
1839 fi
1840 done
1841 if test -z "$ac_sed_cmds"; then
1842 ac_sed_cmds=cat
1843 fi
1844 EOF
1845
1846 cat >> $CONFIG_STATUS <<EOF
1847
1848 CONFIG_FILES=\${CONFIG_FILES-"Makefile
1849 src/Makefile
1850 levels/Makefile
1851 images/Makefile
1852 images/arrows_yellow/Makefile
1853 images/flow_green/Makefile
1854 images/pipes_toys/Makefile
1855 images/default/Makefile
1856 images/flow_light/Makefile
1857 images/pipes_cables/Makefile
1858 images/pipes_wire/Makefile
1859 images/pipes_metal/Makefile
1860 images/arrows_grey/Makefile
1861 images/flow_blue/Makefile
1862 images/pipes_space/Makefile
1863 images/pipes_space/back01/Makefile
1864 images/pipes_space/back02/Makefile
1865 images/pipes_space/back03/Makefile
1866 images/pipes_space/back04/Makefile
1867 images/pipes_space/back05/Makefile
1868 man/Makefile
1869 "}
1870 EOF
1871 cat >> $CONFIG_STATUS <<\EOF
1872 for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
1873 # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
1874 case "$ac_file" in
1875 *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
1876 ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
1877 *) ac_file_in="${ac_file}.in" ;;
1878 esac
1879
1880 # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
1881
1882 # Remove last slash and all that follows it. Not all systems have dirname.
1883 ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
1884 if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
1885 # The file is in a subdirectory.
1886 test ! -d "$ac_dir" && mkdir "$ac_dir"
1887 ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
1888 # A "../" for each directory in $ac_dir_suffix.
1889 ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
1890 else
1891 ac_dir_suffix= ac_dots=
1892 fi
1893
1894 case "$ac_given_srcdir" in
1895 .) srcdir=.
1896 if test -z "$ac_dots"; then top_srcdir=.
1897 else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
1898 /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
1899 *) # Relative path.
1900 srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
1901 top_srcdir="$ac_dots$ac_given_srcdir" ;;
1902 esac
1903
1904 case "$ac_given_INSTALL" in
1905 [/$]*) INSTALL="$ac_given_INSTALL" ;;
1906 *) INSTALL="$ac_dots$ac_given_INSTALL" ;;
1907 esac
1908
1909 echo creating "$ac_file"
1910 rm -f "$ac_file"
1911 configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
1912 case "$ac_file" in
1913 *Makefile*) ac_comsub="1i\\
1914 # $configure_input" ;;
1915 *) ac_comsub= ;;
1916 esac
1917
1918 ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
1919 sed -e "$ac_comsub
1920 s%@configure_input@%$configure_input%g
1921 s%@srcdir@%$srcdir%g
1922 s%@top_srcdir@%$top_srcdir%g
1923 s%@INSTALL@%$INSTALL%g
1924 " $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file
1925 fi; done
1926 rm -f conftest.s*
1927
1928 # These sed commands are passed to sed as "A NAME B NAME C VALUE D", where
1929 # NAME is the cpp macro being defined and VALUE is the value it is being given.
1930 #
1931 # ac_d sets the value in "#define NAME VALUE" lines.
1932 ac_dA='s%^\([ ]*\)#\([ ]*define[ ][ ]*\)'
1933 ac_dB='\([ ][ ]*\)[^ ]*%\1#\2'
1934 ac_dC='\3'
1935 ac_dD='%g'
1936 # ac_u turns "#undef NAME" with trailing blanks into "#define NAME VALUE".
1937 ac_uA='s%^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)'
1938 ac_uB='\([ ]\)%\1#\2define\3'
1939 ac_uC=' '
1940 ac_uD='\4%g'
1941 # ac_e turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
1942 ac_eA='s%^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)'
1943 ac_eB='$%\1#\2define\3'
1944 ac_eC=' '
1945 ac_eD='%g'
1946
1947 if test "${CONFIG_HEADERS+set}" != set; then
1948 EOF
1949 cat >> $CONFIG_STATUS <<EOF
1950 CONFIG_HEADERS="src/config.h"
1951 EOF
1952 cat >> $CONFIG_STATUS <<\EOF
1953 fi
1954 for ac_file in .. $CONFIG_HEADERS; do if test "x$ac_file" != x..; then
1955 # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
1956 case "$ac_file" in
1957 *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
1958 ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
1959 *) ac_file_in="${ac_file}.in" ;;
1960 esac
1961
1962 echo creating $ac_file
1963
1964 rm -f conftest.frag conftest.in conftest.out
1965 ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
1966 cat $ac_file_inputs > conftest.in
1967
1968 EOF
1969
1970 # Transform confdefs.h into a sed script conftest.vals that substitutes
1971 # the proper values into config.h.in to produce config.h. And first:
1972 # Protect against being on the right side of a sed subst in config.status.
1973 # Protect against being in an unquoted here document in config.status.
1974 rm -f conftest.vals
1975 cat > conftest.hdr <<\EOF
1976 s/[\\&%]/\\&/g
1977 s%[\\$`]%\\&%g
1978 s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD}%gp
1979 s%ac_d%ac_u%gp
1980 s%ac_u%ac_e%gp
1981 EOF
1982 sed -n -f conftest.hdr confdefs.h > conftest.vals
1983 rm -f conftest.hdr
1984
1985 # This sed command replaces #undef with comments. This is necessary, for
1986 # example, in the case of _POSIX_SOURCE, which is predefined and required
1987 # on some systems where configure will not decide to define it.
1988 cat >> conftest.vals <<\EOF
1989 s%^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*%/* & */%
1990 EOF
1991
1992 # Break up conftest.vals because some shells have a limit on
1993 # the size of here documents, and old seds have small limits too.
1994
1995 rm -f conftest.tail
1996 while :
1997 do
1998 ac_lines=`grep -c . conftest.vals`
1999 # grep -c gives empty output for an empty file on some AIX systems.
2000 if test -z "$ac_lines" || test "$ac_lines" -eq 0; then break; fi
2001 # Write a limited-size here document to conftest.frag.
2002 echo ' cat > conftest.frag <<CEOF' >> $CONFIG_STATUS
2003 sed ${ac_max_here_lines}q conftest.vals >> $CONFIG_STATUS
2004 echo 'CEOF
2005 sed -f conftest.frag conftest.in > conftest.out
2006 rm -f conftest.in
2007 mv conftest.out conftest.in
2008 ' >> $CONFIG_STATUS
2009 sed 1,${ac_max_here_lines}d conftest.vals > conftest.tail
2010 rm -f conftest.vals
2011 mv conftest.tail conftest.vals
2012 done
2013 rm -f conftest.vals
2014
2015 cat >> $CONFIG_STATUS <<\EOF
2016 rm -f conftest.frag conftest.h
2017 echo "/* $ac_file. Generated automatically by configure. */" > conftest.h
2018 cat conftest.in >> conftest.h
2019 rm -f conftest.in
2020 if cmp -s $ac_file conftest.h 2>/dev/null; then
2021 echo "$ac_file is unchanged"
2022 rm -f conftest.h
2023 else
2024 # Remove last slash and all that follows it. Not all systems have dirname.
2025 ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
2026 if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
2027 # The file is in a subdirectory.
2028 test ! -d "$ac_dir" && mkdir "$ac_dir"
2029 fi
2030 rm -f $ac_file
2031 mv conftest.h $ac_file
2032 fi
2033 fi; done
2034
2035 EOF
2036 cat >> $CONFIG_STATUS <<EOF
2037
2038
2039 EOF
2040 cat >> $CONFIG_STATUS <<\EOF
2041 test -z "$CONFIG_HEADERS" || echo timestamp > src/stamp-h
2042
2043 exit 0
2044 EOF
2045 chmod +x $CONFIG_STATUS
2046 rm -fr confdefs* $ac_clean_files
2047 test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1
2048
0 # This first line initializes autoconf and gives it a file that it can
1 # look for to make sure the source distribution is complete.
2 AC_INIT(README)
3 AM_PROG_LEX
4
5 # The AM_INIT_AUTOMAKE macro tells automake the name and version number
6 # of the software package so it can generate rules for building a source
7 # archive.
8 AM_INIT_AUTOMAKE(pipenightdreams, 0.9.0)
9 AC_PREFIX_DEFAULT(/usr/local)
10 AM_CONFIG_HEADER(src/config.h)
11 CXXFLAGS="-O2"
12 # We now have a list of macros which tell autoconf what tools we need to
13 # build our software, in this case "make", a C++ compiler, and "install".
14 # If we were creating a C program, we would use AC_PROC_CC instead of CXX.
15 AC_PROG_MAKE_SET
16 AC_PROG_CXX
17 AC_PROG_INSTALL
18
19 # This is a trick I learned at Loki - the current compiler for the alpha
20 # architecture doesn't produce code that works on all versions of the
21 # alpha processor. This bit detects the current compile architecture
22 # and sets the compiler flags to produce portable binary code.
23 #AC_CANONICAL_HOST
24 AC_CANONICAL_TARGET
25 case "$target" in
26 alpha*-*-linux*)
27 CXXFLAGS="$CXXFLAGS -mcpu=ev4 -Wa,-mall"
28 ;;
29 esac
30
31 # Use the macro SDL provides to check the installed version of the SDL
32 # development environment. Abort the configuration process if the
33 # minimum version we require isn't available.
34 SDL_VERSION=1.1.5
35 AM_PATH_SDL($SDL_VERSION,
36 :,
37 AC_MSG_ERROR([*** SDL version $SDL_VERSION not found!])
38 )
39 # Add the SDL preprocessor flags and libraries to the build process
40 CXXFLAGS="$CXXFLAGS $SDL_CFLAGS"
41 LIBS="$LIBS $SDL_LIBS"
42
43 AC_CHECK_LIB(SDL_image, IMG_Load)
44
45 LIBTOOL=../libtool
46 AC_SUBST(LIBTOOL)
47
48 #Thanks to Ingo Ruhnke <grumbel@gmx.de>
49 MY_EXPAND_DIR(game_datadir, "$datadir/games/$PACKAGE")
50 AC_DEFINE_UNQUOTED(GAME_DATADIR, "$game_datadir")
51
52 # Finally create all the generated files
53 # The configure script takes "file.in" and substitutes variables to produce
54 # "file". In this case we are just generating the Makefiles, but this could
55 # be used to generate any number of automatically generated files.
56 AC_OUTPUT([
57 Makefile
58 src/Makefile
59 levels/Makefile
60 images/Makefile
61 images/arrows_yellow/Makefile
62 images/flow_green/Makefile
63 images/pipes_toys/Makefile
64 images/default/Makefile
65 images/flow_light/Makefile
66 images/pipes_cables/Makefile
67 images/pipes_wire/Makefile
68 images/pipes_metal/Makefile
69 images/arrows_grey/Makefile
70 images/flow_blue/Makefile
71 images/pipes_space/Makefile
72 images/pipes_space/back01/Makefile
73 images/pipes_space/back02/Makefile
74 images/pipes_space/back03/Makefile
75 images/pipes_space/back04/Makefile
76 images/pipes_space/back05/Makefile
77 man/Makefile
78 ])
0 SUBDIRS = arrows_yellow flow_green pipes_toys default flow_light pipes_cables pipes_wire pipes_metal arrows_grey flow_blue pipes_space
1
2 pkgdatadir= $(datadir)/games/@PACKAGE@/images
3
4 pkgdata_DATA= *.png *.jpg
5
6
7
0 # Makefile.in generated automatically by automake 1.4 from Makefile.am
1
2 # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
3 # This Makefile.in is free software; the Free Software Foundation
4 # gives unlimited permission to copy and/or distribute it,
5 # with or without modifications, as long as this notice is preserved.
6
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
9 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 # PARTICULAR PURPOSE.
11
12
13 SHELL = @SHELL@
14
15 srcdir = @srcdir@
16 top_srcdir = @top_srcdir@
17 VPATH = @srcdir@
18 prefix = @prefix@
19 exec_prefix = @exec_prefix@
20
21 bindir = @bindir@
22 sbindir = @sbindir@
23 libexecdir = @libexecdir@
24 datadir = @datadir@
25 sysconfdir = @sysconfdir@
26 sharedstatedir = @sharedstatedir@
27 localstatedir = @localstatedir@
28 libdir = @libdir@
29 infodir = @infodir@
30 mandir = @mandir@
31 includedir = @includedir@
32 oldincludedir = /usr/include
33
34 DESTDIR =
35 pkglibdir = $(libdir)/@PACKAGE@
36 pkgincludedir = $(includedir)/@PACKAGE@
37
38 top_builddir = ..
39
40 ACLOCAL = @ACLOCAL@
41 AUTOCONF = @AUTOCONF@
42 AUTOMAKE = @AUTOMAKE@
43 AUTOHEADER = @AUTOHEADER@
44
45 INSTALL = @INSTALL@
46 INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
47 INSTALL_DATA = @INSTALL_DATA@
48 INSTALL_SCRIPT = @INSTALL_SCRIPT@
49 transform = @program_transform_name@
50
51 NORMAL_INSTALL = :
52 PRE_INSTALL = :
53 POST_INSTALL = :
54 NORMAL_UNINSTALL = :
55 PRE_UNINSTALL = :
56 POST_UNINSTALL = :
57 host_alias = @host_alias@
58 host_triplet = @host@
59 AS = @AS@
60 CC = @CC@
61 CXX = @CXX@
62 DLLTOOL = @DLLTOOL@
63 LD = @LD@
64 LEX = @LEX@
65 LIBTOOL = @LIBTOOL@
66 LN_S = @LN_S@
67 MAKEINFO = @MAKEINFO@
68 NM = @NM@
69 OBJDUMP = @OBJDUMP@
70 PACKAGE = @PACKAGE@
71 RANLIB = @RANLIB@
72 SDL_CFLAGS = @SDL_CFLAGS@
73 SDL_CONFIG = @SDL_CONFIG@
74 SDL_LIBS = @SDL_LIBS@
75 VERSION = @VERSION@
76
77 SUBDIRS = arrows_yellow flow_green pipes_toys default flow_light pipes_cables pipes_wire pipes_metal arrows_grey flow_blue pipes_space
78
79 pkgdatadir = $(datadir)/games/@PACKAGE@/images
80
81 pkgdata_DATA = *.png *.jpg
82 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
83 CONFIG_HEADER = ../src/config.h
84 CONFIG_CLEAN_FILES =
85 DATA = $(pkgdata_DATA)
86
87 DIST_COMMON = Makefile.am Makefile.in
88
89
90 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
91
92 TAR = tar
93 GZIP_ENV = --best
94 all: all-redirect
95 .SUFFIXES:
96 $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
97 cd $(top_srcdir) && $(AUTOMAKE) --gnu images/Makefile
98
99 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
100 cd $(top_builddir) \
101 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
102
103
104 install-pkgdataDATA: $(pkgdata_DATA)
105 @$(NORMAL_INSTALL)
106 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
107 @list='$(pkgdata_DATA)'; for p in $$list; do \
108 if test -f $(srcdir)/$$p; then \
109 echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p"; \
110 $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p; \
111 else if test -f $$p; then \
112 echo " $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p"; \
113 $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p; \
114 fi; fi; \
115 done
116
117 uninstall-pkgdataDATA:
118 @$(NORMAL_UNINSTALL)
119 list='$(pkgdata_DATA)'; for p in $$list; do \
120 rm -f $(DESTDIR)$(pkgdatadir)/$$p; \
121 done
122
123 # This directory's subdirectories are mostly independent; you can cd
124 # into them and run `make' without going through this Makefile.
125 # To change the values of `make' variables: instead of editing Makefiles,
126 # (1) if the variable is set in `config.status', edit `config.status'
127 # (which will cause the Makefiles to be regenerated when you run `make');
128 # (2) otherwise, pass the desired values on the `make' command line.
129
130 @SET_MAKE@
131
132 all-recursive install-data-recursive install-exec-recursive \
133 installdirs-recursive install-recursive uninstall-recursive \
134 check-recursive installcheck-recursive info-recursive dvi-recursive:
135 @set fnord $(MAKEFLAGS); amf=$$2; \
136 dot_seen=no; \
137 target=`echo $@ | sed s/-recursive//`; \
138 list='$(SUBDIRS)'; for subdir in $$list; do \
139 echo "Making $$target in $$subdir"; \
140 if test "$$subdir" = "."; then \
141 dot_seen=yes; \
142 local_target="$$target-am"; \
143 else \
144 local_target="$$target"; \
145 fi; \
146 (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
147 || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
148 done; \
149 if test "$$dot_seen" = "no"; then \
150 $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
151 fi; test -z "$$fail"
152
153 mostlyclean-recursive clean-recursive distclean-recursive \
154 maintainer-clean-recursive:
155 @set fnord $(MAKEFLAGS); amf=$$2; \
156 dot_seen=no; \
157 rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \
158 rev="$$subdir $$rev"; \
159 test "$$subdir" = "." && dot_seen=yes; \
160 done; \
161 test "$$dot_seen" = "no" && rev=". $$rev"; \
162 target=`echo $@ | sed s/-recursive//`; \
163 for subdir in $$rev; do \
164 echo "Making $$target in $$subdir"; \
165 if test "$$subdir" = "."; then \
166 local_target="$$target-am"; \
167 else \
168 local_target="$$target"; \
169 fi; \
170 (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
171 || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
172 done && test -z "$$fail"
173 tags-recursive:
174 list='$(SUBDIRS)'; for subdir in $$list; do \
175 test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
176 done
177
178 tags: TAGS
179
180 ID: $(HEADERS) $(SOURCES) $(LISP)
181 list='$(SOURCES) $(HEADERS)'; \
182 unique=`for i in $$list; do echo $$i; done | \
183 awk ' { files[$$0] = 1; } \
184 END { for (i in files) print i; }'`; \
185 here=`pwd` && cd $(srcdir) \
186 && mkid -f$$here/ID $$unique $(LISP)
187
188 TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)
189 tags=; \
190 here=`pwd`; \
191 list='$(SUBDIRS)'; for subdir in $$list; do \
192 if test "$$subdir" = .; then :; else \
193 test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
194 fi; \
195 done; \
196 list='$(SOURCES) $(HEADERS)'; \
197 unique=`for i in $$list; do echo $$i; done | \
198 awk ' { files[$$0] = 1; } \
199 END { for (i in files) print i; }'`; \
200 test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
201 || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS)
202
203 mostlyclean-tags:
204
205 clean-tags:
206
207 distclean-tags:
208 -rm -f TAGS ID
209
210 maintainer-clean-tags:
211
212 distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
213
214 subdir = images
215
216 distdir: $(DISTFILES)
217 here=`cd $(top_builddir) && pwd`; \
218 top_distdir=`cd $(top_distdir) && pwd`; \
219 distdir=`cd $(distdir) && pwd`; \
220 cd $(top_srcdir) \
221 && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu images/Makefile
222 @for file in $(DISTFILES); do \
223 d=$(srcdir); \
224 if test -d $$d/$$file; then \
225 cp -pr $$d/$$file $(distdir)/$$file; \
226 else \
227 test -f $(distdir)/$$file \
228 || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
229 || cp -p $$d/$$file $(distdir)/$$file || :; \
230 fi; \
231 done
232 for subdir in $(SUBDIRS); do \
233 if test "$$subdir" = .; then :; else \
234 test -d $(distdir)/$$subdir \
235 || mkdir $(distdir)/$$subdir \
236 || exit 1; \
237 chmod 777 $(distdir)/$$subdir; \
238 (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \
239 || exit 1; \
240 fi; \
241 done
242 info-am:
243 info: info-recursive
244 dvi-am:
245 dvi: dvi-recursive
246 check-am: all-am
247 check: check-recursive
248 installcheck-am:
249 installcheck: installcheck-recursive
250 install-exec-am:
251 install-exec: install-exec-recursive
252
253 install-data-am: install-pkgdataDATA
254 install-data: install-data-recursive
255
256 install-am: all-am
257 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
258 install: install-recursive
259 uninstall-am: uninstall-pkgdataDATA
260 uninstall: uninstall-recursive
261 all-am: Makefile $(DATA)
262 all-redirect: all-recursive
263 install-strip:
264 $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
265 installdirs: installdirs-recursive
266 installdirs-am:
267 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
268
269
270 mostlyclean-generic:
271
272 clean-generic:
273
274 distclean-generic:
275 -rm -f Makefile $(CONFIG_CLEAN_FILES)
276 -rm -f config.cache config.log stamp-h stamp-h[0-9]*
277
278 maintainer-clean-generic:
279 mostlyclean-am: mostlyclean-tags mostlyclean-generic
280
281 mostlyclean: mostlyclean-recursive
282
283 clean-am: clean-tags clean-generic mostlyclean-am
284
285 clean: clean-recursive
286
287 distclean-am: distclean-tags distclean-generic clean-am
288
289 distclean: distclean-recursive
290
291 maintainer-clean-am: maintainer-clean-tags maintainer-clean-generic \
292 distclean-am
293 @echo "This command is intended for maintainers to use;"
294 @echo "it deletes files that may require special tools to rebuild."
295
296 maintainer-clean: maintainer-clean-recursive
297
298 .PHONY: uninstall-pkgdataDATA install-pkgdataDATA install-data-recursive \
299 uninstall-data-recursive install-exec-recursive \
300 uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \
301 all-recursive check-recursive installcheck-recursive info-recursive \
302 dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \
303 maintainer-clean-recursive tags tags-recursive mostlyclean-tags \
304 distclean-tags clean-tags maintainer-clean-tags distdir info-am info \
305 dvi-am dvi check check-am installcheck-am installcheck install-exec-am \
306 install-exec install-data-am install-data install-am install \
307 uninstall-am uninstall all-redirect all-am all installdirs-am \
308 installdirs mostlyclean-generic distclean-generic clean-generic \
309 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
310
311
312 # Tell versions [3.59,3.63) of GNU make to not export all variables.
313 # Otherwise a system limit (for SysV at least) may be exceeded.
314 .NOEXPORT:
Binary diff not shown
0 pkgdatadir = $(datadir)/games/@PACKAGE@/images/arrows_grey
1
2 pkgdata_DATA= *.png
0 # Makefile.in generated automatically by automake 1.4 from Makefile.am
1
2 # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
3 # This Makefile.in is free software; the Free Software Foundation
4 # gives unlimited permission to copy and/or distribute it,
5 # with or without modifications, as long as this notice is preserved.
6
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
9 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 # PARTICULAR PURPOSE.
11
12
13 SHELL = @SHELL@
14
15 srcdir = @srcdir@
16 top_srcdir = @top_srcdir@
17 VPATH = @srcdir@
18 prefix = @prefix@
19 exec_prefix = @exec_prefix@
20
21 bindir = @bindir@
22 sbindir = @sbindir@
23 libexecdir = @libexecdir@
24 datadir = @datadir@
25 sysconfdir = @sysconfdir@
26 sharedstatedir = @sharedstatedir@
27 localstatedir = @localstatedir@
28 libdir = @libdir@
29 infodir = @infodir@
30 mandir = @mandir@
31 includedir = @includedir@
32 oldincludedir = /usr/include
33
34 DESTDIR =
35 pkglibdir = $(libdir)/@PACKAGE@
36 pkgincludedir = $(includedir)/@PACKAGE@
37
38 top_builddir = ../..
39
40 ACLOCAL = @ACLOCAL@
41 AUTOCONF = @AUTOCONF@
42 AUTOMAKE = @AUTOMAKE@
43 AUTOHEADER = @AUTOHEADER@
44
45 INSTALL = @INSTALL@
46 INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
47 INSTALL_DATA = @INSTALL_DATA@
48 INSTALL_SCRIPT = @INSTALL_SCRIPT@
49 transform = @program_transform_name@
50
51 NORMAL_INSTALL = :
52 PRE_INSTALL = :
53 POST_INSTALL = :
54 NORMAL_UNINSTALL = :
55 PRE_UNINSTALL = :
56 POST_UNINSTALL = :
57 host_alias = @host_alias@
58 host_triplet = @host@
59 AS = @AS@
60 CC = @CC@
61 CXX = @CXX@
62 DLLTOOL = @DLLTOOL@
63 LD = @LD@
64 LEX = @LEX@
65 LIBTOOL = @LIBTOOL@
66 LN_S = @LN_S@
67 MAKEINFO = @MAKEINFO@
68 NM = @NM@
69 OBJDUMP = @OBJDUMP@
70 PACKAGE = @PACKAGE@
71 RANLIB = @RANLIB@
72 SDL_CFLAGS = @SDL_CFLAGS@
73 SDL_CONFIG = @SDL_CONFIG@
74 SDL_LIBS = @SDL_LIBS@
75 VERSION = @VERSION@
76
77 pkgdatadir = $(datadir)/games/@PACKAGE@/images/arrows_grey
78
79 pkgdata_DATA = *.png
80 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
81 CONFIG_HEADER = ../../src/config.h
82 CONFIG_CLEAN_FILES =
83 DATA = $(pkgdata_DATA)
84
85 DIST_COMMON = Makefile.am Makefile.in
86
87
88 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
89
90 TAR = tar
91 GZIP_ENV = --best
92 all: all-redirect
93 .SUFFIXES:
94 $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
95 cd $(top_srcdir) && $(AUTOMAKE) --gnu images/arrows_grey/Makefile
96
97 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
98 cd $(top_builddir) \
99 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
100
101
102 install-pkgdataDATA: $(pkgdata_DATA)
103 @$(NORMAL_INSTALL)
104 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
105 @list='$(pkgdata_DATA)'; for p in $$list; do \
106 if test -f $(srcdir)/$$p; then \
107 echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p"; \
108 $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p; \
109 else if test -f $$p; then \
110 echo " $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p"; \
111 $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p; \
112 fi; fi; \
113 done
114
115 uninstall-pkgdataDATA:
116 @$(NORMAL_UNINSTALL)
117 list='$(pkgdata_DATA)'; for p in $$list; do \
118 rm -f $(DESTDIR)$(pkgdatadir)/$$p; \
119 done
120 tags: TAGS
121 TAGS:
122
123
124 distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
125
126 subdir = images/arrows_grey
127
128 distdir: $(DISTFILES)
129 here=`cd $(top_builddir) && pwd`; \
130 top_distdir=`cd $(top_distdir) && pwd`; \
131 distdir=`cd $(distdir) && pwd`; \
132 cd $(top_srcdir) \
133 && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu images/arrows_grey/Makefile
134 @for file in $(DISTFILES); do \
135 d=$(srcdir); \
136 if test -d $$d/$$file; then \
137 cp -pr $$d/$$file $(distdir)/$$file; \
138 else \
139 test -f $(distdir)/$$file \
140 || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
141 || cp -p $$d/$$file $(distdir)/$$file || :; \
142 fi; \
143 done
144 info-am:
145 info: info-am
146 dvi-am:
147 dvi: dvi-am
148 check-am: all-am
149 check: check-am
150 installcheck-am:
151 installcheck: installcheck-am
152 install-exec-am:
153 install-exec: install-exec-am
154
155 install-data-am: install-pkgdataDATA
156 install-data: install-data-am
157
158 install-am: all-am
159 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
160 install: install-am
161 uninstall-am: uninstall-pkgdataDATA
162 uninstall: uninstall-am
163 all-am: Makefile $(DATA)
164 all-redirect: all-am
165 install-strip:
166 $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
167 installdirs:
168 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
169
170
171 mostlyclean-generic:
172
173 clean-generic:
174
175 distclean-generic:
176 -rm -f Makefile $(CONFIG_CLEAN_FILES)
177 -rm -f config.cache config.log stamp-h stamp-h[0-9]*
178
179 maintainer-clean-generic:
180 mostlyclean-am: mostlyclean-generic
181
182 mostlyclean: mostlyclean-am
183
184 clean-am: clean-generic mostlyclean-am
185
186 clean: clean-am
187
188 distclean-am: distclean-generic clean-am
189
190 distclean: distclean-am
191
192 maintainer-clean-am: maintainer-clean-generic distclean-am
193 @echo "This command is intended for maintainers to use;"
194 @echo "it deletes files that may require special tools to rebuild."
195
196 maintainer-clean: maintainer-clean-am
197
198 .PHONY: uninstall-pkgdataDATA install-pkgdataDATA tags distdir info-am \
199 info dvi-am dvi check check-am installcheck-am installcheck \
200 install-exec-am install-exec install-data-am install-data install-am \
201 install uninstall-am uninstall all-redirect all-am all installdirs \
202 mostlyclean-generic distclean-generic clean-generic \
203 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
204
205
206 # Tell versions [3.59,3.63) of GNU make to not export all variables.
207 # Otherwise a system limit (for SysV at least) may be exceeded.
208 .NOEXPORT:
0 pkgdatadir = $(datadir)/games/@PACKAGE@/images/arrows_yellow
1
2 pkgdata_DATA= *.png
0 # Makefile.in generated automatically by automake 1.4 from Makefile.am
1
2 # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
3 # This Makefile.in is free software; the Free Software Foundation
4 # gives unlimited permission to copy and/or distribute it,
5 # with or without modifications, as long as this notice is preserved.
6
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
9 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 # PARTICULAR PURPOSE.
11
12
13 SHELL = @SHELL@
14
15 srcdir = @srcdir@
16 top_srcdir = @top_srcdir@
17 VPATH = @srcdir@
18 prefix = @prefix@
19 exec_prefix = @exec_prefix@
20
21 bindir = @bindir@
22 sbindir = @sbindir@
23 libexecdir = @libexecdir@
24 datadir = @datadir@
25 sysconfdir = @sysconfdir@
26 sharedstatedir = @sharedstatedir@
27 localstatedir = @localstatedir@
28 libdir = @libdir@
29 infodir = @infodir@
30 mandir = @mandir@
31 includedir = @includedir@
32 oldincludedir = /usr/include
33
34 DESTDIR =
35 pkglibdir = $(libdir)/@PACKAGE@
36 pkgincludedir = $(includedir)/@PACKAGE@
37
38 top_builddir = ../..
39
40 ACLOCAL = @ACLOCAL@
41 AUTOCONF = @AUTOCONF@
42 AUTOMAKE = @AUTOMAKE@
43 AUTOHEADER = @AUTOHEADER@
44
45 INSTALL = @INSTALL@
46 INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
47 INSTALL_DATA = @INSTALL_DATA@
48 INSTALL_SCRIPT = @INSTALL_SCRIPT@
49 transform = @program_transform_name@
50
51 NORMAL_INSTALL = :
52 PRE_INSTALL = :
53 POST_INSTALL = :
54 NORMAL_UNINSTALL = :
55 PRE_UNINSTALL = :
56 POST_UNINSTALL = :
57 host_alias = @host_alias@
58 host_triplet = @host@
59 AS = @AS@
60 CC = @CC@
61 CXX = @CXX@
62 DLLTOOL = @DLLTOOL@
63 LD = @LD@
64 LEX = @LEX@
65 LIBTOOL = @LIBTOOL@
66 LN_S = @LN_S@
67 MAKEINFO = @MAKEINFO@
68 NM = @NM@
69 OBJDUMP = @OBJDUMP@
70 PACKAGE = @PACKAGE@
71 RANLIB = @RANLIB@
72 SDL_CFLAGS = @SDL_CFLAGS@
73 SDL_CONFIG = @SDL_CONFIG@
74 SDL_LIBS = @SDL_LIBS@
75 VERSION = @VERSION@
76
77 pkgdatadir = $(datadir)/games/@PACKAGE@/images/arrows_yellow
78
79 pkgdata_DATA = *.png
80 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
81 CONFIG_HEADER = ../../src/config.h
82 CONFIG_CLEAN_FILES =
83 DATA = $(pkgdata_DATA)
84
85 DIST_COMMON = Makefile.am Makefile.in
86
87
88 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
89
90 TAR = tar
91 GZIP_ENV = --best
92 all: all-redirect
93 .SUFFIXES:
94 $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
95 cd $(top_srcdir) && $(AUTOMAKE) --gnu images/arrows_yellow/Makefile
96
97 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
98 cd $(top_builddir) \
99 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
100
101
102 install-pkgdataDATA: $(pkgdata_DATA)
103 @$(NORMAL_INSTALL)
104 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
105 @list='$(pkgdata_DATA)'; for p in $$list; do \
106 if test -f $(srcdir)/$$p; then \
107 echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p"; \
108 $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p; \
109 else if test -f $$p; then \
110 echo " $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p"; \
111 $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p; \
112 fi; fi; \
113 done
114
115 uninstall-pkgdataDATA:
116 @$(NORMAL_UNINSTALL)
117 list='$(pkgdata_DATA)'; for p in $$list; do \
118 rm -f $(DESTDIR)$(pkgdatadir)/$$p; \
119 done
120 tags: TAGS
121 TAGS:
122
123
124 distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
125
126 subdir = images/arrows_yellow
127
128 distdir: $(DISTFILES)
129 here=`cd $(top_builddir) && pwd`; \
130 top_distdir=`cd $(top_distdir) && pwd`; \
131 distdir=`cd $(distdir) && pwd`; \
132 cd $(top_srcdir) \
133 && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu images/arrows_yellow/Makefile
134 @for file in $(DISTFILES); do \
135 d=$(srcdir); \
136 if test -d $$d/$$file; then \
137 cp -pr $$d/$$file $(distdir)/$$file; \
138 else \
139 test -f $(distdir)/$$file \
140 || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
141 || cp -p $$d/$$file $(distdir)/$$file || :; \
142 fi; \
143 done
144 info-am:
145 info: info-am
146 dvi-am:
147 dvi: dvi-am
148 check-am: all-am
149 check: check-am
150 installcheck-am:
151 installcheck: installcheck-am
152 install-exec-am:
153 install-exec: install-exec-am
154
155 install-data-am: install-pkgdataDATA
156 install-data: install-data-am
157
158 install-am: all-am
159 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
160 install: install-am
161 uninstall-am: uninstall-pkgdataDATA
162 uninstall: uninstall-am
163 all-am: Makefile $(DATA)
164 all-redirect: all-am
165 install-strip:
166 $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
167 installdirs:
168 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
169
170
171 mostlyclean-generic:
172
173 clean-generic:
174
175 distclean-generic:
176 -rm -f Makefile $(CONFIG_CLEAN_FILES)
177 -rm -f config.cache config.log stamp-h stamp-h[0-9]*
178
179 maintainer-clean-generic:
180 mostlyclean-am: mostlyclean-generic
181
182 mostlyclean: mostlyclean-am
183
184 clean-am: clean-generic mostlyclean-am
185
186 clean: clean-am
187
188 distclean-am: distclean-generic clean-am
189
190 distclean: distclean-am
191
192 maintainer-clean-am: maintainer-clean-generic distclean-am
193 @echo "This command is intended for maintainers to use;"
194 @echo "it deletes files that may require special tools to rebuild."
195
196 maintainer-clean: maintainer-clean-am
197
198 .PHONY: uninstall-pkgdataDATA install-pkgdataDATA tags distdir info-am \
199 info dvi-am dvi check check-am installcheck-am installcheck \
200 install-exec-am install-exec install-data-am install-data install-am \
201 install uninstall-am uninstall all-redirect all-am all installdirs \
202 mostlyclean-generic distclean-generic clean-generic \
203 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
204
205
206 # Tell versions [3.59,3.63) of GNU make to not export all variables.
207 # Otherwise a system limit (for SysV at least) may be exceeded.
208 .NOEXPORT:
Binary diff not shown
Binary diff not shown
Binary diff not shown
Binary diff not shown
Binary diff not shown
Binary diff not shown
Binary diff not shown
Binary diff not shown
Binary diff not shown
Binary diff not shown
0 pkgdatadir = $(datadir)/games/@PACKAGE@/images/default
1
2 pkgdata_DATA= *.png *.jpg
0 # Makefile.in generated automatically by automake 1.4 from Makefile.am
1
2 # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
3 # This Makefile.in is free software; the Free Software Foundation
4 # gives unlimited permission to copy and/or distribute it,
5 # with or without modifications, as long as this notice is preserved.
6
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
9 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 # PARTICULAR PURPOSE.
11
12
13 SHELL = @SHELL@
14
15 srcdir = @srcdir@
16 top_srcdir = @top_srcdir@
17 VPATH = @srcdir@
18 prefix = @prefix@
19 exec_prefix = @exec_prefix@
20
21 bindir = @bindir@
22 sbindir = @sbindir@
23 libexecdir = @libexecdir@
24 datadir = @datadir@
25 sysconfdir = @sysconfdir@
26 sharedstatedir = @sharedstatedir@
27 localstatedir = @localstatedir@
28 libdir = @libdir@
29 infodir = @infodir@
30 mandir = @mandir@
31 includedir = @includedir@
32 oldincludedir = /usr/include
33
34 DESTDIR =
35 pkglibdir = $(libdir)/@PACKAGE@
36 pkgincludedir = $(includedir)/@PACKAGE@
37
38 top_builddir = ../..
39
40 ACLOCAL = @ACLOCAL@
41 AUTOCONF = @AUTOCONF@
42 AUTOMAKE = @AUTOMAKE@
43 AUTOHEADER = @AUTOHEADER@
44
45 INSTALL = @INSTALL@
46 INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
47 INSTALL_DATA = @INSTALL_DATA@
48 INSTALL_SCRIPT = @INSTALL_SCRIPT@
49 transform = @program_transform_name@
50
51 NORMAL_INSTALL = :
52 PRE_INSTALL = :
53 POST_INSTALL = :
54 NORMAL_UNINSTALL = :
55 PRE_UNINSTALL = :
56 POST_UNINSTALL = :
57 host_alias = @host_alias@
58 host_triplet = @host@
59 AS = @AS@
60 CC = @CC@
61 CXX = @CXX@
62 DLLTOOL = @DLLTOOL@
63 LD = @LD@
64 LEX = @LEX@
65 LIBTOOL = @LIBTOOL@
66 LN_S = @LN_S@
67 MAKEINFO = @MAKEINFO@
68 NM = @NM@
69 OBJDUMP = @OBJDUMP@
70 PACKAGE = @PACKAGE@
71 RANLIB = @RANLIB@
72 SDL_CFLAGS = @SDL_CFLAGS@
73 SDL_CONFIG = @SDL_CONFIG@
74 SDL_LIBS = @SDL_LIBS@
75 VERSION = @VERSION@
76
77 pkgdatadir = $(datadir)/games/@PACKAGE@/images/default
78
79 pkgdata_DATA = *.png *.jpg
80 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
81 CONFIG_HEADER = ../../src/config.h
82 CONFIG_CLEAN_FILES =
83 DATA = $(pkgdata_DATA)
84
85 DIST_COMMON = Makefile.am Makefile.in
86
87
88 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
89
90 TAR = tar
91 GZIP_ENV = --best
92 all: all-redirect
93 .SUFFIXES:
94 $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
95 cd $(top_srcdir) && $(AUTOMAKE) --gnu images/default/Makefile
96
97 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
98 cd $(top_builddir) \
99 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
100
101
102 install-pkgdataDATA: $(pkgdata_DATA)
103 @$(NORMAL_INSTALL)
104 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
105 @list='$(pkgdata_DATA)'; for p in $$list; do \
106 if test -f $(srcdir)/$$p; then \
107 echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p"; \
108 $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p; \
109 else if test -f $$p; then \
110 echo " $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p"; \
111 $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p; \
112 fi; fi; \
113 done
114
115 uninstall-pkgdataDATA:
116 @$(NORMAL_UNINSTALL)
117 list='$(pkgdata_DATA)'; for p in $$list; do \
118 rm -f $(DESTDIR)$(pkgdatadir)/$$p; \
119 done
120 tags: TAGS
121 TAGS:
122
123
124 distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
125
126 subdir = images/default
127
128 distdir: $(DISTFILES)
129 here=`cd $(top_builddir) && pwd`; \
130 top_distdir=`cd $(top_distdir) && pwd`; \
131 distdir=`cd $(distdir) && pwd`; \
132 cd $(top_srcdir) \
133 && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu images/default/Makefile
134 @for file in $(DISTFILES); do \
135 d=$(srcdir); \
136 if test -d $$d/$$file; then \
137 cp -pr $$d/$$file $(distdir)/$$file; \
138 else \
139 test -f $(distdir)/$$file \
140 || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
141 || cp -p $$d/$$file $(distdir)/$$file || :; \
142 fi; \
143 done
144 info-am:
145 info: info-am
146 dvi-am:
147 dvi: dvi-am
148 check-am: all-am
149 check: check-am
150 installcheck-am:
151 installcheck: installcheck-am
152 install-exec-am:
153 install-exec: install-exec-am
154
155 install-data-am: install-pkgdataDATA
156 install-data: install-data-am
157
158 install-am: all-am
159 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
160 install: install-am
161 uninstall-am: uninstall-pkgdataDATA
162 uninstall: uninstall-am
163 all-am: Makefile $(DATA)
164 all-redirect: all-am
165 install-strip:
166 $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
167 installdirs:
168 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
169
170
171 mostlyclean-generic:
172
173 clean-generic:
174
175 distclean-generic:
176 -rm -f Makefile $(CONFIG_CLEAN_FILES)
177 -rm -f config.cache config.log stamp-h stamp-h[0-9]*
178
179 maintainer-clean-generic:
180 mostlyclean-am: mostlyclean-generic
181
182 mostlyclean: mostlyclean-am
183
184 clean-am: clean-generic mostlyclean-am
185
186 clean: clean-am
187
188 distclean-am: distclean-generic clean-am
189
190 distclean: distclean-am
191
192 maintainer-clean-am: maintainer-clean-generic distclean-am
193 @echo "This command is intended for maintainers to use;"
194 @echo "it deletes files that may require special tools to rebuild."
195
196 maintainer-clean: maintainer-clean-am
197
198 .PHONY: uninstall-pkgdataDATA install-pkgdataDATA tags distdir info-am \
199 info dvi-am dvi check check-am installcheck-am installcheck \
200 install-exec-am install-exec install-data-am install-data install-am \
201 install uninstall-am uninstall all-redirect all-am all installdirs \
202 mostlyclean-generic distclean-generic clean-generic \
203 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
204
205
206 # Tell versions [3.59,3.63) of GNU make to not export all variables.
207 # Otherwise a system limit (for SysV at least) may be exceeded.
208 .NOEXPORT:
Binary diff not shown
Binary diff not shown
Binary diff not shown
Binary diff not shown
Binary diff not shown
Binary diff not shown
Binary diff not shown
Binary diff not shown
Binary diff not shown
Binary diff not shown
Binary diff not shown
Binary diff not shown
Binary diff not shown
Binary diff not shown
Binary diff not shown
Binary diff not shown
Binary diff not shown
0 pkgdatadir = $(datadir)/games/@PACKAGE@/images/flow_blue
1
2 pkgdata_DATA= *.png
0 # Makefile.in generated automatically by automake 1.4 from Makefile.am
1
2 # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
3 # This Makefile.in is free software; the Free Software Foundation
4 # gives unlimited permission to copy and/or distribute it,
5 # with or without modifications, as long as this notice is preserved.
6
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
9 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 # PARTICULAR PURPOSE.
11
12
13 SHELL = @SHELL@
14
15 srcdir = @srcdir@
16 top_srcdir = @top_srcdir@
17 VPATH = @srcdir@
18 prefix = @prefix@
19 exec_prefix = @exec_prefix@
20
21 bindir = @bindir@
22 sbindir = @sbindir@
23 libexecdir = @libexecdir@
24 datadir = @datadir@
25 sysconfdir = @sysconfdir@
26 sharedstatedir = @sharedstatedir@
27 localstatedir = @localstatedir@
28 libdir = @libdir@
29 infodir = @infodir@
30 mandir = @mandir@
31 includedir = @includedir@
32 oldincludedir = /usr/include
33
34 DESTDIR =
35 pkglibdir = $(libdir)/@PACKAGE@
36 pkgincludedir = $(includedir)/@PACKAGE@
37
38 top_builddir = ../..
39
40 ACLOCAL = @ACLOCAL@
41 AUTOCONF = @AUTOCONF@
42 AUTOMAKE = @AUTOMAKE@
43 AUTOHEADER = @AUTOHEADER@
44
45 INSTALL = @INSTALL@
46 INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
47 INSTALL_DATA = @INSTALL_DATA@
48 INSTALL_SCRIPT = @INSTALL_SCRIPT@
49 transform = @program_transform_name@
50
51 NORMAL_INSTALL = :
52 PRE_INSTALL = :
53 POST_INSTALL = :
54 NORMAL_UNINSTALL = :
55 PRE_UNINSTALL = :
56 POST_UNINSTALL = :
57 host_alias = @host_alias@
58 host_triplet = @host@
59 AS = @AS@
60 CC = @CC@
61 CXX = @CXX@
62 DLLTOOL = @DLLTOOL@
63 LD = @LD@
64 LEX = @LEX@
65 LIBTOOL = @LIBTOOL@
66 LN_S = @LN_S@
67 MAKEINFO = @MAKEINFO@
68 NM = @NM@
69 OBJDUMP = @OBJDUMP@
70 PACKAGE = @PACKAGE@
71 RANLIB = @RANLIB@
72 SDL_CFLAGS = @SDL_CFLAGS@
73 SDL_CONFIG = @SDL_CONFIG@
74 SDL_LIBS = @SDL_LIBS@
75 VERSION = @VERSION@
76
77 pkgdatadir = $(datadir)/games/@PACKAGE@/images/flow_blue
78
79 pkgdata_DATA = *.png
80 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
81 CONFIG_HEADER = ../../src/config.h
82 CONFIG_CLEAN_FILES =
83 DATA = $(pkgdata_DATA)
84
85 DIST_COMMON = Makefile.am Makefile.in
86
87
88 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
89
90 TAR = tar
91 GZIP_ENV = --best
92 all: all-redirect
93 .SUFFIXES:
94 $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
95 cd $(top_srcdir) && $(AUTOMAKE) --gnu images/flow_blue/Makefile
96
97 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
98 cd $(top_builddir) \
99 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
100
101
102 install-pkgdataDATA: $(pkgdata_DATA)
103 @$(NORMAL_INSTALL)
104 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
105 @list='$(pkgdata_DATA)'; for p in $$list; do \
106 if test -f $(srcdir)/$$p; then \
107 echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p"; \
108 $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p; \
109 else if test -f $$p; then \
110 echo " $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p"; \
111 $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p; \
112 fi; fi; \
113 done
114
115 uninstall-pkgdataDATA:
116 @$(NORMAL_UNINSTALL)
117 list='$(pkgdata_DATA)'; for p in $$list; do \
118 rm -f $(DESTDIR)$(pkgdatadir)/$$p; \
119 done
120 tags: TAGS
121 TAGS:
122
123
124 distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
125
126 subdir = images/flow_blue
127
128 distdir: $(DISTFILES)
129 here=`cd $(top_builddir) && pwd`; \
130 top_distdir=`cd $(top_distdir) && pwd`; \
131 distdir=`cd $(distdir) && pwd`; \
132 cd $(top_srcdir) \
133 && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu images/flow_blue/Makefile
134 @for file in $(DISTFILES); do \
135 d=$(srcdir); \
136 if test -d $$d/$$file; then \
137 cp -pr $$d/$$file $(distdir)/$$file; \
138 else \
139 test -f $(distdir)/$$file \
140 || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
141 || cp -p $$d/$$file $(distdir)/$$file || :; \
142 fi; \
143 done
144 info-am:
145 info: info-am
146 dvi-am:
147 dvi: dvi-am
148 check-am: all-am
149 check: check-am
150 installcheck-am:
151 installcheck: installcheck-am
152 install-exec-am:
153 install-exec: install-exec-am
154
155 install-data-am: install-pkgdataDATA
156 install-data: install-data-am
157
158 install-am: all-am
159 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
160 install: install-am
161 uninstall-am: uninstall-pkgdataDATA
162 uninstall: uninstall-am
163 all-am: Makefile $(DATA)
164 all-redirect: all-am
165 install-strip:
166 $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
167 installdirs:
168 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
169
170
171 mostlyclean-generic:
172
173 clean-generic:
174
175 distclean-generic:
176 -rm -f Makefile $(CONFIG_CLEAN_FILES)
177 -rm -f config.cache config.log stamp-h stamp-h[0-9]*
178
179 maintainer-clean-generic:
180 mostlyclean-am: mostlyclean-generic
181
182 mostlyclean: mostlyclean-am
183
184 clean-am: clean-generic mostlyclean-am
185
186 clean: clean-am
187
188 distclean-am: distclean-generic clean-am
189
190 distclean: distclean-am
191
192 maintainer-clean-am: maintainer-clean-generic distclean-am
193 @echo "This command is intended for maintainers to use;"
194 @echo "it deletes files that may require special tools to rebuild."
195
196 maintainer-clean: maintainer-clean-am
197
198 .PHONY: uninstall-pkgdataDATA install-pkgdataDATA tags distdir info-am \
199 info dvi-am dvi check check-am installcheck-am installcheck \
200 install-exec-am install-exec install-data-am install-data install-am \
201 install uninstall-am uninstall all-redirect all-am all installdirs \
202 mostlyclean-generic distclean-generic clean-generic \
203 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
204
205
206 # Tell versions [3.59,3.63) of GNU make to not export all variables.
207 # Otherwise a system limit (for SysV at least) may be exceeded.
208 .NOEXPORT:
Binary diff not shown
0 pkgdatadir = $(datadir)/games/@PACKAGE@/images/flow_green
1
2 pkgdata_DATA= *.pngāŽ
0 # Makefile.in generated automatically by automake 1.4 from Makefile.am
1
2 # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
3 # This Makefile.in is free software; the Free Software Foundation
4 # gives unlimited permission to copy and/or distribute it,
5 # with or without modifications, as long as this notice is preserved.
6
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
9 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 # PARTICULAR PURPOSE.
11
12
13 SHELL = @SHELL@
14
15 srcdir = @srcdir@
16 top_srcdir = @top_srcdir@
17 VPATH = @srcdir@
18 prefix = @prefix@
19 exec_prefix = @exec_prefix@
20
21 bindir = @bindir@
22 sbindir = @sbindir@
23 libexecdir = @libexecdir@
24 datadir = @datadir@
25 sysconfdir = @sysconfdir@
26 sharedstatedir = @sharedstatedir@
27 localstatedir = @localstatedir@
28 libdir = @libdir@
29 infodir = @infodir@
30 mandir = @mandir@
31 includedir = @includedir@
32 oldincludedir = /usr/include
33
34 DESTDIR =
35 pkglibdir = $(libdir)/@PACKAGE@
36 pkgincludedir = $(includedir)/@PACKAGE@
37
38 top_builddir = ../..
39
40 ACLOCAL = @ACLOCAL@
41 AUTOCONF = @AUTOCONF@
42 AUTOMAKE = @AUTOMAKE@
43 AUTOHEADER = @AUTOHEADER@
44
45 INSTALL = @INSTALL@
46 INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
47 INSTALL_DATA = @INSTALL_DATA@
48 INSTALL_SCRIPT = @INSTALL_SCRIPT@
49 transform = @program_transform_name@
50
51 NORMAL_INSTALL = :
52 PRE_INSTALL = :
53 POST_INSTALL = :
54 NORMAL_UNINSTALL = :
55 PRE_UNINSTALL = :
56 POST_UNINSTALL = :
57 host_alias = @host_alias@
58 host_triplet = @host@
59 AS = @AS@
60 CC = @CC@
61 CXX = @CXX@
62 DLLTOOL = @DLLTOOL@
63 LD = @LD@
64 LEX = @LEX@
65 LIBTOOL = @LIBTOOL@
66 LN_S = @LN_S@
67 MAKEINFO = @MAKEINFO@
68 NM = @NM@
69 OBJDUMP = @OBJDUMP@
70 PACKAGE = @PACKAGE@
71 RANLIB = @RANLIB@
72 SDL_CFLAGS = @SDL_CFLAGS@
73 SDL_CONFIG = @SDL_CONFIG@
74 SDL_LIBS = @SDL_LIBS@
75 VERSION = @VERSION@
76
77 pkgdatadir = $(datadir)/games/@PACKAGE@/images/flow_green
78
79 pkgdata_DATA = *.png
80 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
81 CONFIG_HEADER = ../../src/config.h
82 CONFIG_CLEAN_FILES =
83 DATA = $(pkgdata_DATA)
84
85 DIST_COMMON = Makefile.am Makefile.in
86
87
88 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
89
90 TAR = tar
91 GZIP_ENV = --best
92 all: all-redirect
93 .SUFFIXES:
94 $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
95 cd $(top_srcdir) && $(AUTOMAKE) --gnu images/flow_green/Makefile
96
97 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
98 cd $(top_builddir) \
99 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
100
101
102 install-pkgdataDATA: $(pkgdata_DATA)
103 @$(NORMAL_INSTALL)
104 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
105 @list='$(pkgdata_DATA)'; for p in $$list; do \
106 if test -f $(srcdir)/$$p; then \
107 echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p"; \
108 $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p; \
109 else if test -f $$p; then \
110 echo " $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p"; \
111 $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p; \
112 fi; fi; \
113 done
114
115 uninstall-pkgdataDATA:
116 @$(NORMAL_UNINSTALL)
117 list='$(pkgdata_DATA)'; for p in $$list; do \
118 rm -f $(DESTDIR)$(pkgdatadir)/$$p; \
119 done
120 tags: TAGS
121 TAGS:
122
123
124 distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
125
126 subdir = images/flow_green
127
128 distdir: $(DISTFILES)
129 here=`cd $(top_builddir) && pwd`; \
130 top_distdir=`cd $(top_distdir) && pwd`; \
131 distdir=`cd $(distdir) && pwd`; \
132 cd $(top_srcdir) \
133 && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu images/flow_green/Makefile
134 @for file in $(DISTFILES); do \
135 d=$(srcdir); \
136 if test -d $$d/$$file; then \
137 cp -pr $$d/$$file $(distdir)/$$file; \
138 else \
139 test -f $(distdir)/$$file \
140 || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
141 || cp -p $$d/$$file $(distdir)/$$file || :; \
142 fi; \
143 done
144 info-am:
145 info: info-am
146 dvi-am:
147 dvi: dvi-am
148 check-am: all-am
149 check: check-am
150 installcheck-am:
151 installcheck: installcheck-am
152 install-exec-am:
153 install-exec: install-exec-am
154
155 install-data-am: install-pkgdataDATA
156 install-data: install-data-am
157
158 install-am: all-am
159 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
160 install: install-am
161 uninstall-am: uninstall-pkgdataDATA
162 uninstall: uninstall-am
163 all-am: Makefile $(DATA)
164 all-redirect: all-am
165 install-strip:
166 $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
167 installdirs:
168 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
169
170
171 mostlyclean-generic:
172
173 clean-generic:
174
175 distclean-generic:
176 -rm -f Makefile $(CONFIG_CLEAN_FILES)
177 -rm -f config.cache config.log stamp-h stamp-h[0-9]*
178
179 maintainer-clean-generic:
180 mostlyclean-am: mostlyclean-generic
181
182 mostlyclean: mostlyclean-am
183
184 clean-am: clean-generic mostlyclean-am
185
186 clean: clean-am
187
188 distclean-am: distclean-generic clean-am
189
190 distclean: distclean-am
191
192 maintainer-clean-am: maintainer-clean-generic distclean-am
193 @echo "This command is intended for maintainers to use;"
194 @echo "it deletes files that may require special tools to rebuild."
195
196 maintainer-clean: maintainer-clean-am
197
198 .PHONY: uninstall-pkgdataDATA install-pkgdataDATA tags distdir info-am \
199 info dvi-am dvi check check-am installcheck-am installcheck \
200 install-exec-am install-exec install-data-am install-data install-am \
201 install uninstall-am uninstall all-redirect all-am all installdirs \
202 mostlyclean-generic distclean-generic clean-generic \
203 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
204
205
206 # Tell versions [3.59,3.63) of GNU make to not export all variables.
207 # Otherwise a system limit (for SysV at least) may be exceeded.
208 .NOEXPORT:
Binary diff not shown
0 pkgdatadir = $(datadir)/games/@PACKAGE@/images/flow_light
1
2 pkgdata_DATA= *.png
0 # Makefile.in generated automatically by automake 1.4 from Makefile.am
1
2 # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
3 # This Makefile.in is free software; the Free Software Foundation
4 # gives unlimited permission to copy and/or distribute it,
5 # with or without modifications, as long as this notice is preserved.
6
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
9 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 # PARTICULAR PURPOSE.
11
12
13 SHELL = @SHELL@
14
15 srcdir = @srcdir@
16 top_srcdir = @top_srcdir@
17 VPATH = @srcdir@
18 prefix = @prefix@
19 exec_prefix = @exec_prefix@
20
21 bindir = @bindir@
22 sbindir = @sbindir@
23 libexecdir = @libexecdir@
24 datadir = @datadir@
25 sysconfdir = @sysconfdir@
26 sharedstatedir = @sharedstatedir@
27 localstatedir = @localstatedir@
28 libdir = @libdir@
29 infodir = @infodir@
30 mandir = @mandir@
31 includedir = @includedir@
32 oldincludedir = /usr/include
33
34 DESTDIR =
35 pkglibdir = $(libdir)/@PACKAGE@
36 pkgincludedir = $(includedir)/@PACKAGE@
37
38 top_builddir = ../..
39
40 ACLOCAL = @ACLOCAL@
41 AUTOCONF = @AUTOCONF@
42 AUTOMAKE = @AUTOMAKE@
43 AUTOHEADER = @AUTOHEADER@
44
45 INSTALL = @INSTALL@
46 INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
47 INSTALL_DATA = @INSTALL_DATA@
48 INSTALL_SCRIPT = @INSTALL_SCRIPT@
49 transform = @program_transform_name@
50
51 NORMAL_INSTALL = :
52 PRE_INSTALL = :
53 POST_INSTALL = :
54 NORMAL_UNINSTALL = :
55 PRE_UNINSTALL = :
56 POST_UNINSTALL = :
57 host_alias = @host_alias@
58 host_triplet = @host@
59 AS = @AS@
60 CC = @CC@
61 CXX = @CXX@
62 DLLTOOL = @DLLTOOL@
63 LD = @LD@
64 LEX = @LEX@
65 LIBTOOL = @LIBTOOL@
66 LN_S = @LN_S@
67 MAKEINFO = @MAKEINFO@
68 NM = @NM@
69 OBJDUMP = @OBJDUMP@
70 PACKAGE = @PACKAGE@
71 RANLIB = @RANLIB@
72 SDL_CFLAGS = @SDL_CFLAGS@
73 SDL_CONFIG = @SDL_CONFIG@
74 SDL_LIBS = @SDL_LIBS@
75 VERSION = @VERSION@
76
77 pkgdatadir = $(datadir)/games/@PACKAGE@/images/flow_light
78
79 pkgdata_DATA = *.png
80 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
81 CONFIG_HEADER = ../../src/config.h
82 CONFIG_CLEAN_FILES =
83 DATA = $(pkgdata_DATA)
84
85 DIST_COMMON = Makefile.am Makefile.in
86
87
88 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
89
90 TAR = tar
91 GZIP_ENV = --best
92 all: all-redirect
93 .SUFFIXES:
94 $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
95 cd $(top_srcdir) && $(AUTOMAKE) --gnu images/flow_light/Makefile
96
97 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
98 cd $(top_builddir) \
99 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
100
101
102 install-pkgdataDATA: $(pkgdata_DATA)
103 @$(NORMAL_INSTALL)
104 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
105 @list='$(pkgdata_DATA)'; for p in $$list; do \
106 if test -f $(srcdir)/$$p; then \
107 echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p"; \
108 $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p; \
109 else if test -f $$p; then \
110 echo " $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p"; \
111 $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p; \
112 fi; fi; \
113 done
114
115 uninstall-pkgdataDATA:
116 @$(NORMAL_UNINSTALL)
117 list='$(pkgdata_DATA)'; for p in $$list; do \
118 rm -f $(DESTDIR)$(pkgdatadir)/$$p; \
119 done
120 tags: TAGS
121 TAGS:
122
123
124 distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
125
126 subdir = images/flow_light
127
128 distdir: $(DISTFILES)
129 here=`cd $(top_builddir) && pwd`; \
130 top_distdir=`cd $(top_distdir) && pwd`; \
131 distdir=`cd $(distdir) && pwd`; \
132 cd $(top_srcdir) \
133 && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu images/flow_light/Makefile
134 @for file in $(DISTFILES); do \
135 d=$(srcdir); \
136 if test -d $$d/$$file; then \
137 cp -pr $$d/$$file $(distdir)/$$file; \
138 else \
139 test -f $(distdir)/$$file \
140 || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
141 || cp -p $$d/$$file $(distdir)/$$file || :; \
142 fi; \
143 done
144 info-am:
145 info: info-am
146 dvi-am:
147 dvi: dvi-am
148 check-am: all-am
149 check: check-am
150 installcheck-am:
151 installcheck: installcheck-am
152 install-exec-am:
153 install-exec: install-exec-am
154
155 install-data-am: install-pkgdataDATA
156 install-data: install-data-am
157
158 install-am: all-am
159 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
160 install: install-am
161 uninstall-am: uninstall-pkgdataDATA
162 uninstall: uninstall-am
163 all-am: Makefile $(DATA)
164 all-redirect: all-am
165 install-strip:
166 $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
167 installdirs:
168 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
169
170
171 mostlyclean-generic:
172
173 clean-generic:
174
175 distclean-generic:
176 -rm -f Makefile $(CONFIG_CLEAN_FILES)
177 -rm -f config.cache config.log stamp-h stamp-h[0-9]*
178
179 maintainer-clean-generic:
180 mostlyclean-am: mostlyclean-generic
181
182 mostlyclean: mostlyclean-am
183
184 clean-am: clean-generic mostlyclean-am
185
186 clean: clean-am
187
188 distclean-am: distclean-generic clean-am
189
190 distclean: distclean-am
191
192 maintainer-clean-am: maintainer-clean-generic distclean-am
193 @echo "This command is intended for maintainers to use;"
194 @echo "it deletes files that may require special tools to rebuild."
195
196 maintainer-clean: maintainer-clean-am
197
198 .PHONY: uninstall-pkgdataDATA install-pkgdataDATA tags distdir info-am \
199 info dvi-am dvi check check-am installcheck-am installcheck \
200 install-exec-am install-exec install-data-am install-data install-am \
201 install uninstall-am uninstall all-redirect all-am all installdirs \
202 mostlyclean-generic distclean-generic clean-generic \
203 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
204
205
206 # Tell versions [3.59,3.63) of GNU make to not export all variables.
207 # Otherwise a system limit (for SysV at least) may be exceeded.
208 .NOEXPORT:
Binary diff not shown
Binary diff not shown
Binary diff not shown
Binary diff not shown
0 pkgdatadir = $(datadir)/games/@PACKAGE@/images/pipes_cables
1
2 pkgdata_DATA= *.png *.jpg
0 # Makefile.in generated automatically by automake 1.4 from Makefile.am
1
2 # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
3 # This Makefile.in is free software; the Free Software Foundation
4 # gives unlimited permission to copy and/or distribute it,
5 # with or without modifications, as long as this notice is preserved.
6
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
9 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 # PARTICULAR PURPOSE.
11
12
13 SHELL = @SHELL@
14
15 srcdir = @srcdir@
16 top_srcdir = @top_srcdir@
17 VPATH = @srcdir@
18 prefix = @prefix@
19 exec_prefix = @exec_prefix@
20
21 bindir = @bindir@
22 sbindir = @sbindir@
23 libexecdir = @libexecdir@
24 datadir = @datadir@
25 sysconfdir = @sysconfdir@
26 sharedstatedir = @sharedstatedir@
27 localstatedir = @localstatedir@
28 libdir = @libdir@
29 infodir = @infodir@
30 mandir = @mandir@
31 includedir = @includedir@
32 oldincludedir = /usr/include
33
34 DESTDIR =
35 pkglibdir = $(libdir)/@PACKAGE@
36 pkgincludedir = $(includedir)/@PACKAGE@
37
38 top_builddir = ../..
39
40 ACLOCAL = @ACLOCAL@
41 AUTOCONF = @AUTOCONF@
42 AUTOMAKE = @AUTOMAKE@
43 AUTOHEADER = @AUTOHEADER@
44
45 INSTALL = @INSTALL@
46 INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
47 INSTALL_DATA = @INSTALL_DATA@
48 INSTALL_SCRIPT = @INSTALL_SCRIPT@
49 transform = @program_transform_name@
50
51 NORMAL_INSTALL = :
52 PRE_INSTALL = :
53 POST_INSTALL = :
54 NORMAL_UNINSTALL = :
55 PRE_UNINSTALL = :
56 POST_UNINSTALL = :
57 host_alias = @host_alias@
58 host_triplet = @host@
59 AS = @AS@
60 CC = @CC@
61 CXX = @CXX@
62 DLLTOOL = @DLLTOOL@
63 LD = @LD@
64 LEX = @LEX@
65 LIBTOOL = @LIBTOOL@
66 LN_S = @LN_S@
67 MAKEINFO = @MAKEINFO@
68 NM = @NM@
69 OBJDUMP = @OBJDUMP@
70 PACKAGE = @PACKAGE@
71 RANLIB = @RANLIB@
72 SDL_CFLAGS = @SDL_CFLAGS@
73 SDL_CONFIG = @SDL_CONFIG@
74 SDL_LIBS = @SDL_LIBS@
75 VERSION = @VERSION@
76
77 pkgdatadir = $(datadir)/games/@PACKAGE@/images/pipes_cables
78
79 pkgdata_DATA = *.png *.jpg
80 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
81 CONFIG_HEADER = ../../src/config.h
82 CONFIG_CLEAN_FILES =
83 DATA = $(pkgdata_DATA)
84
85 DIST_COMMON = Makefile.am Makefile.in
86
87
88 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
89
90 TAR = tar
91 GZIP_ENV = --best
92 all: all-redirect
93 .SUFFIXES:
94 $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
95 cd $(top_srcdir) && $(AUTOMAKE) --gnu images/pipes_cables/Makefile
96
97 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
98 cd $(top_builddir) \
99 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
100
101
102 install-pkgdataDATA: $(pkgdata_DATA)
103 @$(NORMAL_INSTALL)
104 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
105 @list='$(pkgdata_DATA)'; for p in $$list; do \
106 if test -f $(srcdir)/$$p; then \
107 echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p"; \
108 $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p; \
109 else if test -f $$p; then \
110 echo " $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p"; \
111 $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p; \
112 fi; fi; \
113 done
114
115 uninstall-pkgdataDATA:
116 @$(NORMAL_UNINSTALL)
117 list='$(pkgdata_DATA)'; for p in $$list; do \
118 rm -f $(DESTDIR)$(pkgdatadir)/$$p; \
119 done
120 tags: TAGS
121 TAGS:
122
123
124 distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
125
126 subdir = images/pipes_cables
127
128 distdir: $(DISTFILES)
129 here=`cd $(top_builddir) && pwd`; \
130 top_distdir=`cd $(top_distdir) && pwd`; \
131 distdir=`cd $(distdir) && pwd`; \
132 cd $(top_srcdir) \
133 && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu images/pipes_cables/Makefile
134 @for file in $(DISTFILES); do \
135 d=$(srcdir); \
136 if test -d $$d/$$file; then \
137 cp -pr $$d/$$file $(distdir)/$$file; \
138 else \
139 test -f $(distdir)/$$file \
140 || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
141 || cp -p $$d/$$file $(distdir)/$$file || :; \
142 fi; \
143 done
144 info-am:
145 info: info-am
146 dvi-am:
147 dvi: dvi-am
148 check-am: all-am
149 check: check-am
150 installcheck-am:
151 installcheck: installcheck-am
152 install-exec-am:
153 install-exec: install-exec-am
154
155 install-data-am: install-pkgdataDATA
156 install-data: install-data-am
157
158 install-am: all-am
159 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
160 install: install-am
161 uninstall-am: uninstall-pkgdataDATA
162 uninstall: uninstall-am
163 all-am: Makefile $(DATA)
164 all-redirect: all-am
165 install-strip:
166 $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
167 installdirs:
168 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
169
170
171 mostlyclean-generic:
172
173 clean-generic:
174
175 distclean-generic:
176 -rm -f Makefile $(CONFIG_CLEAN_FILES)
177 -rm -f config.cache config.log stamp-h stamp-h[0-9]*
178
179 maintainer-clean-generic:
180 mostlyclean-am: mostlyclean-generic
181
182 mostlyclean: mostlyclean-am
183
184 clean-am: clean-generic mostlyclean-am
185
186 clean: clean-am
187
188 distclean-am: distclean-generic clean-am
189
190 distclean: distclean-am
191
192 maintainer-clean-am: maintainer-clean-generic distclean-am
193 @echo "This command is intended for maintainers to use;"
194 @echo "it deletes files that may require special tools to rebuild."
195
196 maintainer-clean: maintainer-clean-am
197
198 .PHONY: uninstall-pkgdataDATA install-pkgdataDATA tags distdir info-am \
199 info dvi-am dvi check check-am installcheck-am installcheck \
200 install-exec-am install-exec install-data-am install-data install-am \
201 install uninstall-am uninstall all-redirect all-am all installdirs \
202 mostlyclean-generic distclean-generic clean-generic \
203 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
204
205
206 # Tell versions [3.59,3.63) of GNU make to not export all variables.
207 # Otherwise a system limit (for SysV at least) may be exceeded.
208 .NOEXPORT:
0 pkgdatadir = $(datadir)/games/@PACKAGE@/images/pipes_metal
1
2 pkgdata_DATA= *.png *.jpg
0 # Makefile.in generated automatically by automake 1.4 from Makefile.am
1
2 # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
3 # This Makefile.in is free software; the Free Software Foundation
4 # gives unlimited permission to copy and/or distribute it,
5 # with or without modifications, as long as this notice is preserved.
6
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
9 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 # PARTICULAR PURPOSE.
11
12
13 SHELL = @SHELL@
14
15 srcdir = @srcdir@
16 top_srcdir = @top_srcdir@
17 VPATH = @srcdir@
18 prefix = @prefix@
19 exec_prefix = @exec_prefix@
20
21 bindir = @bindir@
22 sbindir = @sbindir@
23 libexecdir = @libexecdir@
24 datadir = @datadir@
25 sysconfdir = @sysconfdir@
26 sharedstatedir = @sharedstatedir@
27 localstatedir = @localstatedir@
28 libdir = @libdir@
29 infodir = @infodir@
30 mandir = @mandir@
31 includedir = @includedir@
32 oldincludedir = /usr/include
33
34 DESTDIR =
35 pkglibdir = $(libdir)/@PACKAGE@
36 pkgincludedir = $(includedir)/@PACKAGE@
37
38 top_builddir = ../..
39
40 ACLOCAL = @ACLOCAL@
41 AUTOCONF = @AUTOCONF@
42 AUTOMAKE = @AUTOMAKE@
43 AUTOHEADER = @AUTOHEADER@
44
45 INSTALL = @INSTALL@
46 INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
47 INSTALL_DATA = @INSTALL_DATA@
48 INSTALL_SCRIPT = @INSTALL_SCRIPT@
49 transform = @program_transform_name@
50
51 NORMAL_INSTALL = :
52 PRE_INSTALL = :
53 POST_INSTALL = :
54 NORMAL_UNINSTALL = :
55 PRE_UNINSTALL = :
56 POST_UNINSTALL = :
57 host_alias = @host_alias@
58 host_triplet = @host@
59 AS = @AS@
60 CC = @CC@
61 CXX = @CXX@
62 DLLTOOL = @DLLTOOL@
63 LD = @LD@
64 LEX = @LEX@
65 LIBTOOL = @LIBTOOL@
66 LN_S = @LN_S@
67 MAKEINFO = @MAKEINFO@
68 NM = @NM@
69 OBJDUMP = @OBJDUMP@
70 PACKAGE = @PACKAGE@
71 RANLIB = @RANLIB@
72 SDL_CFLAGS = @SDL_CFLAGS@
73 SDL_CONFIG = @SDL_CONFIG@
74 SDL_LIBS = @SDL_LIBS@
75 VERSION = @VERSION@
76
77 pkgdatadir = $(datadir)/games/@PACKAGE@/images/pipes_metal
78
79 pkgdata_DATA = *.png *.jpg
80 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
81 CONFIG_HEADER = ../../src/config.h
82 CONFIG_CLEAN_FILES =
83 DATA = $(pkgdata_DATA)
84
85 DIST_COMMON = Makefile.am Makefile.in
86
87
88 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
89
90 TAR = tar
91 GZIP_ENV = --best
92 all: all-redirect
93 .SUFFIXES:
94 $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
95 cd $(top_srcdir) && $(AUTOMAKE) --gnu images/pipes_metal/Makefile
96
97 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
98 cd $(top_builddir) \
99 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
100
101
102 install-pkgdataDATA: $(pkgdata_DATA)
103 @$(NORMAL_INSTALL)
104 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
105 @list='$(pkgdata_DATA)'; for p in $$list; do \
106 if test -f $(srcdir)/$$p; then \
107 echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p"; \
108 $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p; \
109 else if test -f $$p; then \
110 echo " $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p"; \
111 $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p; \
112 fi; fi; \
113 done
114
115 uninstall-pkgdataDATA:
116 @$(NORMAL_UNINSTALL)
117 list='$(pkgdata_DATA)'; for p in $$list; do \
118 rm -f $(DESTDIR)$(pkgdatadir)/$$p; \
119 done
120 tags: TAGS
121 TAGS:
122
123
124 distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
125
126 subdir = images/pipes_metal
127
128 distdir: $(DISTFILES)
129 here=`cd $(top_builddir) && pwd`; \
130 top_distdir=`cd $(top_distdir) && pwd`; \
131 distdir=`cd $(distdir) && pwd`; \
132 cd $(top_srcdir) \
133 && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu images/pipes_metal/Makefile
134 @for file in $(DISTFILES); do \
135 d=$(srcdir); \
136 if test -d $$d/$$file; then \
137 cp -pr $$d/$$file $(distdir)/$$file; \
138 else \
139 test -f $(distdir)/$$file \
140 || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
141 || cp -p $$d/$$file $(distdir)/$$file || :; \
142 fi; \
143 done
144 info-am:
145 info: info-am
146 dvi-am:
147 dvi: dvi-am
148 check-am: all-am
149 check: check-am
150 installcheck-am:
151 installcheck: installcheck-am
152 install-exec-am:
153 install-exec: install-exec-am
154
155 install-data-am: install-pkgdataDATA
156 install-data: install-data-am
157
158 install-am: all-am
159 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
160 install: install-am
161 uninstall-am: uninstall-pkgdataDATA
162 uninstall: uninstall-am
163 all-am: Makefile $(DATA)
164 all-redirect: all-am
165 install-strip:
166 $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
167 installdirs:
168 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
169
170
171 mostlyclean-generic:
172
173 clean-generic:
174
175 distclean-generic:
176 -rm -f Makefile $(CONFIG_CLEAN_FILES)
177 -rm -f config.cache config.log stamp-h stamp-h[0-9]*
178
179 maintainer-clean-generic:
180 mostlyclean-am: mostlyclean-generic
181
182 mostlyclean: mostlyclean-am
183
184 clean-am: clean-generic mostlyclean-am
185
186 clean: clean-am
187
188 distclean-am: distclean-generic clean-am
189
190 distclean: distclean-am
191
192 maintainer-clean-am: maintainer-clean-generic distclean-am
193 @echo "This command is intended for maintainers to use;"
194 @echo "it deletes files that may require special tools to rebuild."
195
196 maintainer-clean: maintainer-clean-am
197
198 .PHONY: uninstall-pkgdataDATA install-pkgdataDATA tags distdir info-am \
199 info dvi-am dvi check check-am installcheck-am installcheck \
200 install-exec-am install-exec install-data-am install-data install-am \
201 install uninstall-am uninstall all-redirect all-am all installdirs \
202 mostlyclean-generic distclean-generic clean-generic \
203 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
204
205
206 # Tell versions [3.59,3.63) of GNU make to not export all variables.
207 # Otherwise a system limit (for SysV at least) may be exceeded.
208 .NOEXPORT:
0 SUBDIRS = back01 back02 back03 back04 back05
1
2 pkgdatadir = $(datadir)/games/@PACKAGE@/images/pipes_space
3
4 pkgdata_DATA= *.png
0 # Makefile.in generated automatically by automake 1.4 from Makefile.am
1
2 # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
3 # This Makefile.in is free software; the Free Software Foundation
4 # gives unlimited permission to copy and/or distribute it,
5 # with or without modifications, as long as this notice is preserved.
6
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
9 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 # PARTICULAR PURPOSE.
11
12
13 SHELL = @SHELL@
14
15 srcdir = @srcdir@
16 top_srcdir = @top_srcdir@
17 VPATH = @srcdir@
18 prefix = @prefix@
19 exec_prefix = @exec_prefix@
20
21 bindir = @bindir@
22 sbindir = @sbindir@
23 libexecdir = @libexecdir@
24 datadir = @datadir@
25 sysconfdir = @sysconfdir@
26 sharedstatedir = @sharedstatedir@
27 localstatedir = @localstatedir@
28 libdir = @libdir@
29 infodir = @infodir@
30 mandir = @mandir@
31 includedir = @includedir@
32 oldincludedir = /usr/include
33
34 DESTDIR =
35 pkglibdir = $(libdir)/@PACKAGE@
36 pkgincludedir = $(includedir)/@PACKAGE@
37
38 top_builddir = ../..
39
40 ACLOCAL = @ACLOCAL@
41 AUTOCONF = @AUTOCONF@
42 AUTOMAKE = @AUTOMAKE@
43 AUTOHEADER = @AUTOHEADER@
44
45 INSTALL = @INSTALL@
46 INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
47 INSTALL_DATA = @INSTALL_DATA@
48 INSTALL_SCRIPT = @INSTALL_SCRIPT@
49 transform = @program_transform_name@
50
51 NORMAL_INSTALL = :
52 PRE_INSTALL = :
53 POST_INSTALL = :
54 NORMAL_UNINSTALL = :
55 PRE_UNINSTALL = :
56 POST_UNINSTALL = :
57 host_alias = @host_alias@
58 host_triplet = @host@
59 AS = @AS@
60 CC = @CC@
61 CXX = @CXX@
62 DLLTOOL = @DLLTOOL@
63 LD = @LD@
64 LEX = @LEX@
65 LIBTOOL = @LIBTOOL@
66 LN_S = @LN_S@
67 MAKEINFO = @MAKEINFO@
68 NM = @NM@
69 OBJDUMP = @OBJDUMP@
70 PACKAGE = @PACKAGE@
71 RANLIB = @RANLIB@
72 SDL_CFLAGS = @SDL_CFLAGS@
73 SDL_CONFIG = @SDL_CONFIG@
74 SDL_LIBS = @SDL_LIBS@
75 VERSION = @VERSION@
76
77 SUBDIRS = back01 back02 back03 back04 back05
78
79 pkgdatadir = $(datadir)/games/@PACKAGE@/images/pipes_space
80
81 pkgdata_DATA = *.png
82 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
83 CONFIG_HEADER = ../../src/config.h
84 CONFIG_CLEAN_FILES =
85 DATA = $(pkgdata_DATA)
86
87 DIST_COMMON = Makefile.am Makefile.in
88
89
90 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
91
92 TAR = tar
93 GZIP_ENV = --best
94 all: all-redirect
95 .SUFFIXES:
96 $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
97 cd $(top_srcdir) && $(AUTOMAKE) --gnu images/pipes_space/Makefile
98
99 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
100 cd $(top_builddir) \
101 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
102
103
104 install-pkgdataDATA: $(pkgdata_DATA)
105 @$(NORMAL_INSTALL)
106 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
107 @list='$(pkgdata_DATA)'; for p in $$list; do \
108 if test -f $(srcdir)/$$p; then \
109 echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p"; \
110 $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p; \
111 else if test -f $$p; then \
112 echo " $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p"; \
113 $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p; \
114 fi; fi; \
115 done
116
117 uninstall-pkgdataDATA:
118 @$(NORMAL_UNINSTALL)
119 list='$(pkgdata_DATA)'; for p in $$list; do \
120 rm -f $(DESTDIR)$(pkgdatadir)/$$p; \
121 done
122
123 # This directory's subdirectories are mostly independent; you can cd
124 # into them and run `make' without going through this Makefile.
125 # To change the values of `make' variables: instead of editing Makefiles,
126 # (1) if the variable is set in `config.status', edit `config.status'
127 # (which will cause the Makefiles to be regenerated when you run `make');
128 # (2) otherwise, pass the desired values on the `make' command line.
129
130 @SET_MAKE@
131
132 all-recursive install-data-recursive install-exec-recursive \
133 installdirs-recursive install-recursive uninstall-recursive \
134 check-recursive installcheck-recursive info-recursive dvi-recursive:
135 @set fnord $(MAKEFLAGS); amf=$$2; \
136 dot_seen=no; \
137 target=`echo $@ | sed s/-recursive//`; \
138 list='$(SUBDIRS)'; for subdir in $$list; do \
139 echo "Making $$target in $$subdir"; \
140 if test "$$subdir" = "."; then \
141 dot_seen=yes; \
142 local_target="$$target-am"; \
143 else \
144 local_target="$$target"; \
145 fi; \
146 (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
147 || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
148 done; \
149 if test "$$dot_seen" = "no"; then \
150 $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
151 fi; test -z "$$fail"
152
153 mostlyclean-recursive clean-recursive distclean-recursive \
154 maintainer-clean-recursive:
155 @set fnord $(MAKEFLAGS); amf=$$2; \
156 dot_seen=no; \
157 rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \
158 rev="$$subdir $$rev"; \
159 test "$$subdir" = "." && dot_seen=yes; \
160 done; \
161 test "$$dot_seen" = "no" && rev=". $$rev"; \
162 target=`echo $@ | sed s/-recursive//`; \
163 for subdir in $$rev; do \
164 echo "Making $$target in $$subdir"; \
165 if test "$$subdir" = "."; then \
166 local_target="$$target-am"; \
167 else \
168 local_target="$$target"; \
169 fi; \
170 (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
171 || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
172 done && test -z "$$fail"
173 tags-recursive:
174 list='$(SUBDIRS)'; for subdir in $$list; do \
175 test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
176 done
177
178 tags: TAGS
179
180 ID: $(HEADERS) $(SOURCES) $(LISP)
181 list='$(SOURCES) $(HEADERS)'; \
182 unique=`for i in $$list; do echo $$i; done | \
183 awk ' { files[$$0] = 1; } \
184 END { for (i in files) print i; }'`; \
185 here=`pwd` && cd $(srcdir) \
186 && mkid -f$$here/ID $$unique $(LISP)
187
188 TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)
189 tags=; \
190 here=`pwd`; \
191 list='$(SUBDIRS)'; for subdir in $$list; do \
192 if test "$$subdir" = .; then :; else \
193 test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
194 fi; \
195 done; \
196 list='$(SOURCES) $(HEADERS)'; \
197 unique=`for i in $$list; do echo $$i; done | \
198 awk ' { files[$$0] = 1; } \
199 END { for (i in files) print i; }'`; \
200 test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
201 || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS)
202
203 mostlyclean-tags:
204
205 clean-tags:
206
207 distclean-tags:
208 -rm -f TAGS ID
209
210 maintainer-clean-tags:
211
212 distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
213
214 subdir = images/pipes_space
215
216 distdir: $(DISTFILES)
217 here=`cd $(top_builddir) && pwd`; \
218 top_distdir=`cd $(top_distdir) && pwd`; \
219 distdir=`cd $(distdir) && pwd`; \
220 cd $(top_srcdir) \
221 && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu images/pipes_space/Makefile
222 @for file in $(DISTFILES); do \
223 d=$(srcdir); \
224 if test -d $$d/$$file; then \
225 cp -pr $$d/$$file $(distdir)/$$file; \
226 else \
227 test -f $(distdir)/$$file \
228 || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
229 || cp -p $$d/$$file $(distdir)/$$file || :; \
230 fi; \
231 done
232 for subdir in $(SUBDIRS); do \
233 if test "$$subdir" = .; then :; else \
234 test -d $(distdir)/$$subdir \
235 || mkdir $(distdir)/$$subdir \
236 || exit 1; \
237 chmod 777 $(distdir)/$$subdir; \
238 (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \
239 || exit 1; \
240 fi; \
241 done
242 info-am:
243 info: info-recursive
244 dvi-am:
245 dvi: dvi-recursive
246 check-am: all-am
247 check: check-recursive
248 installcheck-am:
249 installcheck: installcheck-recursive
250 install-exec-am:
251 install-exec: install-exec-recursive
252
253 install-data-am: install-pkgdataDATA
254 install-data: install-data-recursive
255
256 install-am: all-am
257 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
258 install: install-recursive
259 uninstall-am: uninstall-pkgdataDATA
260 uninstall: uninstall-recursive
261 all-am: Makefile $(DATA)
262 all-redirect: all-recursive
263 install-strip:
264 $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
265 installdirs: installdirs-recursive
266 installdirs-am:
267 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
268
269
270 mostlyclean-generic:
271
272 clean-generic:
273
274 distclean-generic:
275 -rm -f Makefile $(CONFIG_CLEAN_FILES)
276 -rm -f config.cache config.log stamp-h stamp-h[0-9]*
277
278 maintainer-clean-generic:
279 mostlyclean-am: mostlyclean-tags mostlyclean-generic
280
281 mostlyclean: mostlyclean-recursive
282
283 clean-am: clean-tags clean-generic mostlyclean-am
284
285 clean: clean-recursive
286
287 distclean-am: distclean-tags distclean-generic clean-am
288
289 distclean: distclean-recursive
290
291 maintainer-clean-am: maintainer-clean-tags maintainer-clean-generic \
292 distclean-am
293 @echo "This command is intended for maintainers to use;"
294 @echo "it deletes files that may require special tools to rebuild."
295
296 maintainer-clean: maintainer-clean-recursive
297
298 .PHONY: uninstall-pkgdataDATA install-pkgdataDATA install-data-recursive \
299 uninstall-data-recursive install-exec-recursive \
300 uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \
301 all-recursive check-recursive installcheck-recursive info-recursive \
302 dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \
303 maintainer-clean-recursive tags tags-recursive mostlyclean-tags \
304 distclean-tags clean-tags maintainer-clean-tags distdir info-am info \
305 dvi-am dvi check check-am installcheck-am installcheck install-exec-am \
306 install-exec install-data-am install-data install-am install \
307 uninstall-am uninstall all-redirect all-am all installdirs-am \
308 installdirs mostlyclean-generic distclean-generic clean-generic \
309 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
310
311
312 # Tell versions [3.59,3.63) of GNU make to not export all variables.
313 # Otherwise a system limit (for SysV at least) may be exceeded.
314 .NOEXPORT:
0 pkgdatadir = $(datadir)/games/@PACKAGE@/images/pipes_space/back01
1
2 pkgdata_DATA= *.jpg
0 # Makefile.in generated automatically by automake 1.4 from Makefile.am
1
2 # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
3 # This Makefile.in is free software; the Free Software Foundation
4 # gives unlimited permission to copy and/or distribute it,
5 # with or without modifications, as long as this notice is preserved.
6
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
9 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 # PARTICULAR PURPOSE.
11
12
13 SHELL = @SHELL@
14
15 srcdir = @srcdir@
16 top_srcdir = @top_srcdir@
17 VPATH = @srcdir@
18 prefix = @prefix@
19 exec_prefix = @exec_prefix@
20
21 bindir = @bindir@
22 sbindir = @sbindir@
23 libexecdir = @libexecdir@
24 datadir = @datadir@
25 sysconfdir = @sysconfdir@
26 sharedstatedir = @sharedstatedir@
27 localstatedir = @localstatedir@
28 libdir = @libdir@
29 infodir = @infodir@
30 mandir = @mandir@
31 includedir = @includedir@
32 oldincludedir = /usr/include
33
34 DESTDIR =
35 pkglibdir = $(libdir)/@PACKAGE@
36 pkgincludedir = $(includedir)/@PACKAGE@
37
38 top_builddir = ../../..
39
40 ACLOCAL = @ACLOCAL@
41 AUTOCONF = @AUTOCONF@
42 AUTOMAKE = @AUTOMAKE@
43 AUTOHEADER = @AUTOHEADER@
44
45 INSTALL = @INSTALL@
46 INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
47 INSTALL_DATA = @INSTALL_DATA@
48 INSTALL_SCRIPT = @INSTALL_SCRIPT@
49 transform = @program_transform_name@
50
51 NORMAL_INSTALL = :
52 PRE_INSTALL = :
53 POST_INSTALL = :
54 NORMAL_UNINSTALL = :
55 PRE_UNINSTALL = :
56 POST_UNINSTALL = :
57 host_alias = @host_alias@
58 host_triplet = @host@
59 AS = @AS@
60 CC = @CC@
61 CXX = @CXX@
62 DLLTOOL = @DLLTOOL@
63 LD = @LD@
64 LEX = @LEX@
65 LIBTOOL = @LIBTOOL@
66 LN_S = @LN_S@
67 MAKEINFO = @MAKEINFO@
68 NM = @NM@
69 OBJDUMP = @OBJDUMP@
70 PACKAGE = @PACKAGE@
71 RANLIB = @RANLIB@
72 SDL_CFLAGS = @SDL_CFLAGS@
73 SDL_CONFIG = @SDL_CONFIG@
74 SDL_LIBS = @SDL_LIBS@
75 VERSION = @VERSION@
76
77 pkgdatadir = $(datadir)/games/@PACKAGE@/images/pipes_space/back01
78
79 pkgdata_DATA = *.jpg
80 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
81 CONFIG_HEADER = ../../../src/config.h
82 CONFIG_CLEAN_FILES =
83 DATA = $(pkgdata_DATA)
84
85 DIST_COMMON = Makefile.am Makefile.in
86
87
88 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
89
90 TAR = tar
91 GZIP_ENV = --best
92 all: all-redirect
93 .SUFFIXES:
94 $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
95 cd $(top_srcdir) && $(AUTOMAKE) --gnu images/pipes_space/back01/Makefile
96
97 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
98 cd $(top_builddir) \
99 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
100
101
102 install-pkgdataDATA: $(pkgdata_DATA)
103 @$(NORMAL_INSTALL)
104 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
105 @list='$(pkgdata_DATA)'; for p in $$list; do \
106 if test -f $(srcdir)/$$p; then \
107 echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p"; \
108 $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p; \
109 else if test -f $$p; then \
110 echo " $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p"; \
111 $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p; \
112 fi; fi; \
113 done
114
115 uninstall-pkgdataDATA:
116 @$(NORMAL_UNINSTALL)
117 list='$(pkgdata_DATA)'; for p in $$list; do \
118 rm -f $(DESTDIR)$(pkgdatadir)/$$p; \
119 done
120 tags: TAGS
121 TAGS:
122
123
124 distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
125
126 subdir = images/pipes_space/back01
127
128 distdir: $(DISTFILES)
129 here=`cd $(top_builddir) && pwd`; \
130 top_distdir=`cd $(top_distdir) && pwd`; \
131 distdir=`cd $(distdir) && pwd`; \
132 cd $(top_srcdir) \
133 && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu images/pipes_space/back01/Makefile
134 @for file in $(DISTFILES); do \
135 d=$(srcdir); \
136 if test -d $$d/$$file; then \
137 cp -pr $$d/$$file $(distdir)/$$file; \
138 else \
139 test -f $(distdir)/$$file \
140 || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
141 || cp -p $$d/$$file $(distdir)/$$file || :; \
142 fi; \
143 done
144 info-am:
145 info: info-am
146 dvi-am:
147 dvi: dvi-am
148 check-am: all-am
149 check: check-am
150 installcheck-am:
151 installcheck: installcheck-am
152 install-exec-am:
153 install-exec: install-exec-am
154
155 install-data-am: install-pkgdataDATA
156 install-data: install-data-am
157
158 install-am: all-am
159 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
160 install: install-am
161 uninstall-am: uninstall-pkgdataDATA
162 uninstall: uninstall-am
163 all-am: Makefile $(DATA)
164 all-redirect: all-am
165 install-strip:
166 $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
167 installdirs:
168 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
169
170
171 mostlyclean-generic:
172
173 clean-generic:
174
175 distclean-generic:
176 -rm -f Makefile $(CONFIG_CLEAN_FILES)
177 -rm -f config.cache config.log stamp-h stamp-h[0-9]*
178
179 maintainer-clean-generic:
180 mostlyclean-am: mostlyclean-generic
181
182 mostlyclean: mostlyclean-am
183
184 clean-am: clean-generic mostlyclean-am
185
186 clean: clean-am
187
188 distclean-am: distclean-generic clean-am
189
190 distclean: distclean-am
191
192 maintainer-clean-am: maintainer-clean-generic distclean-am
193 @echo "This command is intended for maintainers to use;"
194 @echo "it deletes files that may require special tools to rebuild."
195
196 maintainer-clean: maintainer-clean-am
197
198 .PHONY: uninstall-pkgdataDATA install-pkgdataDATA tags distdir info-am \
199 info dvi-am dvi check check-am installcheck-am installcheck \
200 install-exec-am install-exec install-data-am install-data install-am \
201 install uninstall-am uninstall all-redirect all-am all installdirs \
202 mostlyclean-generic distclean-generic clean-generic \
203 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
204
205
206 # Tell versions [3.59,3.63) of GNU make to not export all variables.
207 # Otherwise a system limit (for SysV at least) may be exceeded.
208 .NOEXPORT:
0 pkgdatadir = $(datadir)/games/@PACKAGE@/images/pipes_space/back02
1
2 pkgdata_DATA= *.jpg
0 # Makefile.in generated automatically by automake 1.4 from Makefile.am
1
2 # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
3 # This Makefile.in is free software; the Free Software Foundation
4 # gives unlimited permission to copy and/or distribute it,
5 # with or without modifications, as long as this notice is preserved.
6
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
9 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 # PARTICULAR PURPOSE.
11
12
13 SHELL = @SHELL@
14
15 srcdir = @srcdir@
16 top_srcdir = @top_srcdir@
17 VPATH = @srcdir@
18 prefix = @prefix@
19 exec_prefix = @exec_prefix@
20
21 bindir = @bindir@
22 sbindir = @sbindir@
23 libexecdir = @libexecdir@
24 datadir = @datadir@
25 sysconfdir = @sysconfdir@
26 sharedstatedir = @sharedstatedir@
27 localstatedir = @localstatedir@
28 libdir = @libdir@
29 infodir = @infodir@
30 mandir = @mandir@
31 includedir = @includedir@
32 oldincludedir = /usr/include
33
34 DESTDIR =
35 pkglibdir = $(libdir)/@PACKAGE@
36 pkgincludedir = $(includedir)/@PACKAGE@
37
38 top_builddir = ../../..
39
40 ACLOCAL = @ACLOCAL@
41 AUTOCONF = @AUTOCONF@
42 AUTOMAKE = @AUTOMAKE@
43 AUTOHEADER = @AUTOHEADER@
44
45 INSTALL = @INSTALL@
46 INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
47 INSTALL_DATA = @INSTALL_DATA@
48 INSTALL_SCRIPT = @INSTALL_SCRIPT@
49 transform = @program_transform_name@
50
51 NORMAL_INSTALL = :
52 PRE_INSTALL = :
53 POST_INSTALL = :
54 NORMAL_UNINSTALL = :
55 PRE_UNINSTALL = :
56 POST_UNINSTALL = :
57 host_alias = @host_alias@
58 host_triplet = @host@
59 AS = @AS@
60 CC = @CC@
61 CXX = @CXX@
62 DLLTOOL = @DLLTOOL@
63 LD = @LD@
64 LEX = @LEX@
65 LIBTOOL = @LIBTOOL@
66 LN_S = @LN_S@
67 MAKEINFO = @MAKEINFO@
68 NM = @NM@
69 OBJDUMP = @OBJDUMP@
70 PACKAGE = @PACKAGE@
71 RANLIB = @RANLIB@
72 SDL_CFLAGS = @SDL_CFLAGS@
73 SDL_CONFIG = @SDL_CONFIG@
74 SDL_LIBS = @SDL_LIBS@
75 VERSION = @VERSION@
76
77 pkgdatadir = $(datadir)/games/@PACKAGE@/images/pipes_space/back02
78
79 pkgdata_DATA = *.jpg
80 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
81 CONFIG_HEADER = ../../../src/config.h
82 CONFIG_CLEAN_FILES =
83 DATA = $(pkgdata_DATA)
84
85 DIST_COMMON = Makefile.am Makefile.in
86
87
88 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
89
90 TAR = tar
91 GZIP_ENV = --best
92 all: all-redirect
93 .SUFFIXES:
94 $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
95 cd $(top_srcdir) && $(AUTOMAKE) --gnu images/pipes_space/back02/Makefile
96
97 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
98 cd $(top_builddir) \
99 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
100
101
102 install-pkgdataDATA: $(pkgdata_DATA)
103 @$(NORMAL_INSTALL)
104 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
105 @list='$(pkgdata_DATA)'; for p in $$list; do \
106 if test -f $(srcdir)/$$p; then \
107 echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p"; \
108 $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p; \
109 else if test -f $$p; then \
110 echo " $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p"; \
111 $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p; \
112 fi; fi; \
113 done
114
115 uninstall-pkgdataDATA:
116 @$(NORMAL_UNINSTALL)
117 list='$(pkgdata_DATA)'; for p in $$list; do \
118 rm -f $(DESTDIR)$(pkgdatadir)/$$p; \
119 done
120 tags: TAGS
121 TAGS:
122
123
124 distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
125
126 subdir = images/pipes_space/back02
127
128 distdir: $(DISTFILES)
129 here=`cd $(top_builddir) && pwd`; \
130 top_distdir=`cd $(top_distdir) && pwd`; \
131 distdir=`cd $(distdir) && pwd`; \
132 cd $(top_srcdir) \
133 && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu images/pipes_space/back02/Makefile
134 @for file in $(DISTFILES); do \
135 d=$(srcdir); \
136 if test -d $$d/$$file; then \
137 cp -pr $$d/$$file $(distdir)/$$file; \
138 else \
139 test -f $(distdir)/$$file \
140 || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
141 || cp -p $$d/$$file $(distdir)/$$file || :; \
142 fi; \
143 done
144 info-am:
145 info: info-am
146 dvi-am:
147 dvi: dvi-am
148 check-am: all-am
149 check: check-am
150 installcheck-am:
151 installcheck: installcheck-am
152 install-exec-am:
153 install-exec: install-exec-am
154
155 install-data-am: install-pkgdataDATA
156 install-data: install-data-am
157
158 install-am: all-am
159 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
160 install: install-am
161 uninstall-am: uninstall-pkgdataDATA
162 uninstall: uninstall-am
163 all-am: Makefile $(DATA)
164 all-redirect: all-am
165 install-strip:
166 $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
167 installdirs:
168 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
169
170
171 mostlyclean-generic:
172
173 clean-generic:
174
175 distclean-generic:
176 -rm -f Makefile $(CONFIG_CLEAN_FILES)
177 -rm -f config.cache config.log stamp-h stamp-h[0-9]*
178
179 maintainer-clean-generic:
180 mostlyclean-am: mostlyclean-generic
181
182 mostlyclean: mostlyclean-am
183
184 clean-am: clean-generic mostlyclean-am
185
186 clean: clean-am
187
188 distclean-am: distclean-generic clean-am
189
190 distclean: distclean-am
191
192 maintainer-clean-am: maintainer-clean-generic distclean-am
193 @echo "This command is intended for maintainers to use;"
194 @echo "it deletes files that may require special tools to rebuild."
195
196 maintainer-clean: maintainer-clean-am
197
198 .PHONY: uninstall-pkgdataDATA install-pkgdataDATA tags distdir info-am \
199 info dvi-am dvi check check-am installcheck-am installcheck \
200 install-exec-am install-exec install-data-am install-data install-am \
201 install uninstall-am uninstall all-redirect all-am all installdirs \
202 mostlyclean-generic distclean-generic clean-generic \
203 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
204
205
206 # Tell versions [3.59,3.63) of GNU make to not export all variables.
207 # Otherwise a system limit (for SysV at least) may be exceeded.
208 .NOEXPORT:
0 pkgdatadir = $(datadir)/games/@PACKAGE@/images/pipes_space/back03
1
2 pkgdata_DATA= *.jpg
0 # Makefile.in generated automatically by automake 1.4 from Makefile.am
1
2 # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
3 # This Makefile.in is free software; the Free Software Foundation
4 # gives unlimited permission to copy and/or distribute it,
5 # with or without modifications, as long as this notice is preserved.
6
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
9 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 # PARTICULAR PURPOSE.
11
12
13 SHELL = @SHELL@
14
15 srcdir = @srcdir@
16 top_srcdir = @top_srcdir@
17 VPATH = @srcdir@
18 prefix = @prefix@
19 exec_prefix = @exec_prefix@
20
21 bindir = @bindir@
22 sbindir = @sbindir@
23 libexecdir = @libexecdir@
24 datadir = @datadir@
25 sysconfdir = @sysconfdir@
26 sharedstatedir = @sharedstatedir@
27 localstatedir = @localstatedir@
28 libdir = @libdir@
29 infodir = @infodir@
30 mandir = @mandir@
31 includedir = @includedir@
32 oldincludedir = /usr/include
33
34 DESTDIR =
35 pkglibdir = $(libdir)/@PACKAGE@
36 pkgincludedir = $(includedir)/@PACKAGE@
37
38 top_builddir = ../../..
39
40 ACLOCAL = @ACLOCAL@
41 AUTOCONF = @AUTOCONF@
42 AUTOMAKE = @AUTOMAKE@
43 AUTOHEADER = @AUTOHEADER@
44
45 INSTALL = @INSTALL@
46 INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
47 INSTALL_DATA = @INSTALL_DATA@
48 INSTALL_SCRIPT = @INSTALL_SCRIPT@
49 transform = @program_transform_name@
50
51 NORMAL_INSTALL = :
52 PRE_INSTALL = :
53 POST_INSTALL = :
54 NORMAL_UNINSTALL = :
55 PRE_UNINSTALL = :
56 POST_UNINSTALL = :
57 host_alias = @host_alias@
58 host_triplet = @host@
59 AS = @AS@
60 CC = @CC@
61 CXX = @CXX@
62 DLLTOOL = @DLLTOOL@
63 LD = @LD@
64 LEX = @LEX@
65 LIBTOOL = @LIBTOOL@
66 LN_S = @LN_S@
67 MAKEINFO = @MAKEINFO@
68 NM = @NM@
69 OBJDUMP = @OBJDUMP@
70 PACKAGE = @PACKAGE@
71 RANLIB = @RANLIB@
72 SDL_CFLAGS = @SDL_CFLAGS@
73 SDL_CONFIG = @SDL_CONFIG@
74 SDL_LIBS = @SDL_LIBS@
75 VERSION = @VERSION@
76
77 pkgdatadir = $(datadir)/games/@PACKAGE@/images/pipes_space/back03
78
79 pkgdata_DATA = *.jpg
80 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
81 CONFIG_HEADER = ../../../src/config.h
82 CONFIG_CLEAN_FILES =
83 DATA = $(pkgdata_DATA)
84
85 DIST_COMMON = Makefile.am Makefile.in
86
87
88 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
89
90 TAR = tar
91 GZIP_ENV = --best
92 all: all-redirect
93 .SUFFIXES:
94 $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
95 cd $(top_srcdir) && $(AUTOMAKE) --gnu images/pipes_space/back03/Makefile
96
97 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
98 cd $(top_builddir) \
99 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
100
101
102 install-pkgdataDATA: $(pkgdata_DATA)
103 @$(NORMAL_INSTALL)
104 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
105 @list='$(pkgdata_DATA)'; for p in $$list; do \
106 if test -f $(srcdir)/$$p; then \
107 echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p"; \
108 $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p; \
109 else if test -f $$p; then \
110 echo " $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p"; \
111 $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p; \
112 fi; fi; \
113 done
114
115 uninstall-pkgdataDATA:
116 @$(NORMAL_UNINSTALL)
117 list='$(pkgdata_DATA)'; for p in $$list; do \
118 rm -f $(DESTDIR)$(pkgdatadir)/$$p; \
119 done
120 tags: TAGS
121 TAGS:
122
123
124 distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
125
126 subdir = images/pipes_space/back03
127
128 distdir: $(DISTFILES)
129 here=`cd $(top_builddir) && pwd`; \
130 top_distdir=`cd $(top_distdir) && pwd`; \
131 distdir=`cd $(distdir) && pwd`; \
132 cd $(top_srcdir) \
133 && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu images/pipes_space/back03/Makefile
134 @for file in $(DISTFILES); do \
135 d=$(srcdir); \
136 if test -d $$d/$$file; then \
137 cp -pr $$d/$$file $(distdir)/$$file; \
138 else \
139 test -f $(distdir)/$$file \
140 || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
141 || cp -p $$d/$$file $(distdir)/$$file || :; \
142 fi; \
143 done
144 info-am:
145 info: info-am
146 dvi-am:
147 dvi: dvi-am
148 check-am: all-am
149 check: check-am
150 installcheck-am:
151 installcheck: installcheck-am
152 install-exec-am:
153 install-exec: install-exec-am
154
155 install-data-am: install-pkgdataDATA
156 install-data: install-data-am
157
158 install-am: all-am
159 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
160 install: install-am
161 uninstall-am: uninstall-pkgdataDATA
162 uninstall: uninstall-am
163 all-am: Makefile $(DATA)
164 all-redirect: all-am
165 install-strip:
166 $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
167 installdirs:
168 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
169
170
171 mostlyclean-generic:
172
173 clean-generic:
174
175 distclean-generic:
176 -rm -f Makefile $(CONFIG_CLEAN_FILES)
177 -rm -f config.cache config.log stamp-h stamp-h[0-9]*
178
179 maintainer-clean-generic:
180 mostlyclean-am: mostlyclean-generic
181
182 mostlyclean: mostlyclean-am
183
184 clean-am: clean-generic mostlyclean-am
185
186 clean: clean-am
187
188 distclean-am: distclean-generic clean-am
189
190 distclean: distclean-am
191
192 maintainer-clean-am: maintainer-clean-generic distclean-am
193 @echo "This command is intended for maintainers to use;"
194 @echo "it deletes files that may require special tools to rebuild."
195
196 maintainer-clean: maintainer-clean-am
197
198 .PHONY: uninstall-pkgdataDATA install-pkgdataDATA tags distdir info-am \
199 info dvi-am dvi check check-am installcheck-am installcheck \
200 install-exec-am install-exec install-data-am install-data install-am \
201 install uninstall-am uninstall all-redirect all-am all installdirs \
202 mostlyclean-generic distclean-generic clean-generic \
203 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
204
205
206 # Tell versions [3.59,3.63) of GNU make to not export all variables.
207 # Otherwise a system limit (for SysV at least) may be exceeded.
208 .NOEXPORT:
0 pkgdatadir = $(datadir)/games/@PACKAGE@/images/pipes_space/back04
1
2 pkgdata_DATA= *.jpg
0 # Makefile.in generated automatically by automake 1.4 from Makefile.am
1
2 # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
3 # This Makefile.in is free software; the Free Software Foundation
4 # gives unlimited permission to copy and/or distribute it,
5 # with or without modifications, as long as this notice is preserved.
6
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
9 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 # PARTICULAR PURPOSE.
11
12
13 SHELL = @SHELL@
14
15 srcdir = @srcdir@
16 top_srcdir = @top_srcdir@
17 VPATH = @srcdir@
18 prefix = @prefix@
19 exec_prefix = @exec_prefix@
20
21 bindir = @bindir@
22 sbindir = @sbindir@
23 libexecdir = @libexecdir@
24 datadir = @datadir@
25 sysconfdir = @sysconfdir@
26 sharedstatedir = @sharedstatedir@
27 localstatedir = @localstatedir@
28 libdir = @libdir@
29 infodir = @infodir@
30 mandir = @mandir@
31 includedir = @includedir@
32 oldincludedir = /usr/include
33
34 DESTDIR =
35 pkglibdir = $(libdir)/@PACKAGE@
36 pkgincludedir = $(includedir)/@PACKAGE@
37
38 top_builddir = ../../..
39
40 ACLOCAL = @ACLOCAL@
41 AUTOCONF = @AUTOCONF@
42 AUTOMAKE = @AUTOMAKE@
43 AUTOHEADER = @AUTOHEADER@
44
45 INSTALL = @INSTALL@
46 INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
47 INSTALL_DATA = @INSTALL_DATA@
48 INSTALL_SCRIPT = @INSTALL_SCRIPT@
49 transform = @program_transform_name@
50
51 NORMAL_INSTALL = :
52 PRE_INSTALL = :
53 POST_INSTALL = :
54 NORMAL_UNINSTALL = :
55 PRE_UNINSTALL = :
56 POST_UNINSTALL = :
57 host_alias = @host_alias@
58 host_triplet = @host@
59 AS = @AS@
60 CC = @CC@
61 CXX = @CXX@
62 DLLTOOL = @DLLTOOL@
63 LD = @LD@
64 LEX = @LEX@
65 LIBTOOL = @LIBTOOL@
66 LN_S = @LN_S@
67 MAKEINFO = @MAKEINFO@
68 NM = @NM@
69 OBJDUMP = @OBJDUMP@
70 PACKAGE = @PACKAGE@
71 RANLIB = @RANLIB@
72 SDL_CFLAGS = @SDL_CFLAGS@
73 SDL_CONFIG = @SDL_CONFIG@
74 SDL_LIBS = @SDL_LIBS@
75 VERSION = @VERSION@
76
77 pkgdatadir = $(datadir)/games/@PACKAGE@/images/pipes_space/back04
78
79 pkgdata_DATA = *.jpg
80 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
81 CONFIG_HEADER = ../../../src/config.h
82 CONFIG_CLEAN_FILES =
83 DATA = $(pkgdata_DATA)
84
85 DIST_COMMON = Makefile.am Makefile.in
86
87
88 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
89
90 TAR = tar
91 GZIP_ENV = --best
92 all: all-redirect
93 .SUFFIXES:
94 $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
95 cd $(top_srcdir) && $(AUTOMAKE) --gnu images/pipes_space/back04/Makefile
96
97 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
98 cd $(top_builddir) \
99 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
100
101
102 install-pkgdataDATA: $(pkgdata_DATA)
103 @$(NORMAL_INSTALL)
104 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
105 @list='$(pkgdata_DATA)'; for p in $$list; do \
106 if test -f $(srcdir)/$$p; then \
107 echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p"; \
108 $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p; \
109 else if test -f $$p; then \
110 echo " $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p"; \
111 $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p; \
112 fi; fi; \
113 done
114
115 uninstall-pkgdataDATA:
116 @$(NORMAL_UNINSTALL)
117 list='$(pkgdata_DATA)'; for p in $$list; do \
118 rm -f $(DESTDIR)$(pkgdatadir)/$$p; \
119 done
120 tags: TAGS
121 TAGS:
122
123
124 distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
125
126 subdir = images/pipes_space/back04
127
128 distdir: $(DISTFILES)
129 here=`cd $(top_builddir) && pwd`; \
130 top_distdir=`cd $(top_distdir) && pwd`; \
131 distdir=`cd $(distdir) && pwd`; \
132 cd $(top_srcdir) \
133 && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu images/pipes_space/back04/Makefile
134 @for file in $(DISTFILES); do \
135 d=$(srcdir); \
136 if test -d $$d/$$file; then \
137 cp -pr $$d/$$file $(distdir)/$$file; \
138 else \
139 test -f $(distdir)/$$file \
140 || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
141 || cp -p $$d/$$file $(distdir)/$$file || :; \
142 fi; \
143 done
144 info-am:
145 info: info-am
146 dvi-am:
147 dvi: dvi-am
148 check-am: all-am
149 check: check-am
150 installcheck-am:
151 installcheck: installcheck-am
152 install-exec-am:
153 install-exec: install-exec-am
154
155 install-data-am: install-pkgdataDATA
156 install-data: install-data-am
157
158 install-am: all-am
159 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
160 install: install-am
161 uninstall-am: uninstall-pkgdataDATA
162 uninstall: uninstall-am
163 all-am: Makefile $(DATA)
164 all-redirect: all-am
165 install-strip:
166 $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
167 installdirs:
168 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
169
170
171 mostlyclean-generic:
172
173 clean-generic:
174
175 distclean-generic:
176 -rm -f Makefile $(CONFIG_CLEAN_FILES)
177 -rm -f config.cache config.log stamp-h stamp-h[0-9]*
178
179 maintainer-clean-generic:
180 mostlyclean-am: mostlyclean-generic
181
182 mostlyclean: mostlyclean-am
183
184 clean-am: clean-generic mostlyclean-am
185
186 clean: clean-am
187
188 distclean-am: distclean-generic clean-am
189
190 distclean: distclean-am
191
192 maintainer-clean-am: maintainer-clean-generic distclean-am
193 @echo "This command is intended for maintainers to use;"
194 @echo "it deletes files that may require special tools to rebuild."
195
196 maintainer-clean: maintainer-clean-am
197
198 .PHONY: uninstall-pkgdataDATA install-pkgdataDATA tags distdir info-am \
199 info dvi-am dvi check check-am installcheck-am installcheck \
200 install-exec-am install-exec install-data-am install-data install-am \
201 install uninstall-am uninstall all-redirect all-am all installdirs \
202 mostlyclean-generic distclean-generic clean-generic \
203 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
204
205
206 # Tell versions [3.59,3.63) of GNU make to not export all variables.
207 # Otherwise a system limit (for SysV at least) may be exceeded.
208 .NOEXPORT:
0 pkgdatadir = $(datadir)/games/@PACKAGE@/images/pipes_space/back05
1
2 pkgdata_DATA= *.jpg
0 # Makefile.in generated automatically by automake 1.4 from Makefile.am
1
2 # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
3 # This Makefile.in is free software; the Free Software Foundation
4 # gives unlimited permission to copy and/or distribute it,
5 # with or without modifications, as long as this notice is preserved.
6
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
9 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 # PARTICULAR PURPOSE.
11
12
13 SHELL = @SHELL@
14
15 srcdir = @srcdir@
16 top_srcdir = @top_srcdir@
17 VPATH = @srcdir@
18 prefix = @prefix@
19 exec_prefix = @exec_prefix@
20
21 bindir = @bindir@
22 sbindir = @sbindir@
23 libexecdir = @libexecdir@
24 datadir = @datadir@
25 sysconfdir = @sysconfdir@
26 sharedstatedir = @sharedstatedir@
27 localstatedir = @localstatedir@
28 libdir = @libdir@
29 infodir = @infodir@
30 mandir = @mandir@
31 includedir = @includedir@
32 oldincludedir = /usr/include
33
34 DESTDIR =
35 pkglibdir = $(libdir)/@PACKAGE@
36 pkgincludedir = $(includedir)/@PACKAGE@
37
38 top_builddir = ../../..
39
40 ACLOCAL = @ACLOCAL@
41 AUTOCONF = @AUTOCONF@
42 AUTOMAKE = @AUTOMAKE@
43 AUTOHEADER = @AUTOHEADER@
44
45 INSTALL = @INSTALL@
46 INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
47 INSTALL_DATA = @INSTALL_DATA@
48 INSTALL_SCRIPT = @INSTALL_SCRIPT@
49 transform = @program_transform_name@
50
51 NORMAL_INSTALL = :
52 PRE_INSTALL = :
53 POST_INSTALL = :
54 NORMAL_UNINSTALL = :
55 PRE_UNINSTALL = :
56 POST_UNINSTALL = :
57 host_alias = @host_alias@
58 host_triplet = @host@
59 AS = @AS@
60 CC = @CC@
61 CXX = @CXX@
62 DLLTOOL = @DLLTOOL@
63 LD = @LD@
64 LEX = @LEX@
65 LIBTOOL = @LIBTOOL@
66 LN_S = @LN_S@
67 MAKEINFO = @MAKEINFO@
68 NM = @NM@
69 OBJDUMP = @OBJDUMP@
70 PACKAGE = @PACKAGE@
71 RANLIB = @RANLIB@
72 SDL_CFLAGS = @SDL_CFLAGS@
73 SDL_CONFIG = @SDL_CONFIG@
74 SDL_LIBS = @SDL_LIBS@
75 VERSION = @VERSION@
76
77 pkgdatadir = $(datadir)/games/@PACKAGE@/images/pipes_space/back05
78
79 pkgdata_DATA = *.jpg
80 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
81 CONFIG_HEADER = ../../../src/config.h
82 CONFIG_CLEAN_FILES =
83 DATA = $(pkgdata_DATA)
84
85 DIST_COMMON = Makefile.am Makefile.in
86
87
88 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
89
90 TAR = tar
91 GZIP_ENV = --best
92 all: all-redirect
93 .SUFFIXES:
94 $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
95 cd $(top_srcdir) && $(AUTOMAKE) --gnu images/pipes_space/back05/Makefile
96
97 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
98 cd $(top_builddir) \
99 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
100
101
102 install-pkgdataDATA: $(pkgdata_DATA)
103 @$(NORMAL_INSTALL)
104 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
105 @list='$(pkgdata_DATA)'; for p in $$list; do \
106 if test -f $(srcdir)/$$p; then \
107 echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p"; \
108 $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p; \
109 else if test -f $$p; then \
110 echo " $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p"; \
111 $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p; \
112 fi; fi; \
113 done
114
115 uninstall-pkgdataDATA:
116 @$(NORMAL_UNINSTALL)
117 list='$(pkgdata_DATA)'; for p in $$list; do \
118 rm -f $(DESTDIR)$(pkgdatadir)/$$p; \
119 done
120 tags: TAGS
121 TAGS:
122
123
124 distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
125
126 subdir = images/pipes_space/back05
127
128 distdir: $(DISTFILES)
129 here=`cd $(top_builddir) && pwd`; \
130 top_distdir=`cd $(top_distdir) && pwd`; \
131 distdir=`cd $(distdir) && pwd`; \
132 cd $(top_srcdir) \
133 && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu images/pipes_space/back05/Makefile
134 @for file in $(DISTFILES); do \
135 d=$(srcdir); \
136 if test -d $$d/$$file; then \
137 cp -pr $$d/$$file $(distdir)/$$file; \
138 else \
139 test -f $(distdir)/$$file \
140 || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
141 || cp -p $$d/$$file $(distdir)/$$file || :; \
142 fi; \
143 done
144 info-am:
145 info: info-am
146 dvi-am:
147 dvi: dvi-am
148 check-am: all-am
149 check: check-am
150 installcheck-am:
151 installcheck: installcheck-am
152 install-exec-am:
153 install-exec: install-exec-am
154
155 install-data-am: install-pkgdataDATA
156 install-data: install-data-am
157
158 install-am: all-am
159 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
160 install: install-am
161 uninstall-am: uninstall-pkgdataDATA
162 uninstall: uninstall-am
163 all-am: Makefile $(DATA)
164 all-redirect: all-am
165 install-strip:
166 $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
167 installdirs:
168 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
169
170
171 mostlyclean-generic:
172
173 clean-generic:
174
175 distclean-generic:
176 -rm -f Makefile $(CONFIG_CLEAN_FILES)
177 -rm -f config.cache config.log stamp-h stamp-h[0-9]*
178
179 maintainer-clean-generic:
180 mostlyclean-am: mostlyclean-generic
181
182 mostlyclean: mostlyclean-am
183
184 clean-am: clean-generic mostlyclean-am
185
186 clean: clean-am
187
188 distclean-am: distclean-generic clean-am
189
190 distclean: distclean-am
191
192 maintainer-clean-am: maintainer-clean-generic distclean-am
193 @echo "This command is intended for maintainers to use;"
194 @echo "it deletes files that may require special tools to rebuild."
195
196 maintainer-clean: maintainer-clean-am
197
198 .PHONY: uninstall-pkgdataDATA install-pkgdataDATA tags distdir info-am \
199 info dvi-am dvi check check-am installcheck-am installcheck \
200 install-exec-am install-exec install-data-am install-data install-am \
201 install uninstall-am uninstall all-redirect all-am all installdirs \
202 mostlyclean-generic distclean-generic clean-generic \
203 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
204
205
206 # Tell versions [3.59,3.63) of GNU make to not export all variables.
207 # Otherwise a system limit (for SysV at least) may be exceeded.
208 .NOEXPORT:
0 pkgdatadir = $(datadir)/games/@PACKAGE@/images/pipes_toys
1
2 pkgdata_DATA= *.png *.jpg
0 # Makefile.in generated automatically by automake 1.4 from Makefile.am
1
2 # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
3 # This Makefile.in is free software; the Free Software Foundation
4 # gives unlimited permission to copy and/or distribute it,
5 # with or without modifications, as long as this notice is preserved.
6
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
9 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 # PARTICULAR PURPOSE.
11
12
13 SHELL = @SHELL@
14
15 srcdir = @srcdir@
16 top_srcdir = @top_srcdir@
17 VPATH = @srcdir@
18 prefix = @prefix@
19 exec_prefix = @exec_prefix@
20
21 bindir = @bindir@
22 sbindir = @sbindir@
23 libexecdir = @libexecdir@
24 datadir = @datadir@
25 sysconfdir = @sysconfdir@
26 sharedstatedir = @sharedstatedir@
27 localstatedir = @localstatedir@
28 libdir = @libdir@
29 infodir = @infodir@
30 mandir = @mandir@
31 includedir = @includedir@
32 oldincludedir = /usr/include
33
34 DESTDIR =
35 pkglibdir = $(libdir)/@PACKAGE@
36 pkgincludedir = $(includedir)/@PACKAGE@
37
38 top_builddir = ../..
39
40 ACLOCAL = @ACLOCAL@
41 AUTOCONF = @AUTOCONF@
42 AUTOMAKE = @AUTOMAKE@
43 AUTOHEADER = @AUTOHEADER@
44
45 INSTALL = @INSTALL@
46 INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
47 INSTALL_DATA = @INSTALL_DATA@
48 INSTALL_SCRIPT = @INSTALL_SCRIPT@
49 transform = @program_transform_name@
50
51 NORMAL_INSTALL = :
52 PRE_INSTALL = :
53 POST_INSTALL = :
54 NORMAL_UNINSTALL = :
55 PRE_UNINSTALL = :
56 POST_UNINSTALL = :
57 host_alias = @host_alias@
58 host_triplet = @host@
59 AS = @AS@
60 CC = @CC@
61 CXX = @CXX@
62 DLLTOOL = @DLLTOOL@
63 LD = @LD@
64 LEX = @LEX@
65 LIBTOOL = @LIBTOOL@
66 LN_S = @LN_S@
67 MAKEINFO = @MAKEINFO@
68 NM = @NM@
69 OBJDUMP = @OBJDUMP@
70 PACKAGE = @PACKAGE@
71 RANLIB = @RANLIB@
72 SDL_CFLAGS = @SDL_CFLAGS@
73 SDL_CONFIG = @SDL_CONFIG@
74 SDL_LIBS = @SDL_LIBS@
75 VERSION = @VERSION@
76
77 pkgdatadir = $(datadir)/games/@PACKAGE@/images/pipes_toys
78
79 pkgdata_DATA = *.png *.jpg
80 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
81 CONFIG_HEADER = ../../src/config.h
82 CONFIG_CLEAN_FILES =
83 DATA = $(pkgdata_DATA)
84
85 DIST_COMMON = Makefile.am Makefile.in
86
87
88 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
89
90 TAR = tar
91 GZIP_ENV = --best
92 all: all-redirect
93 .SUFFIXES:
94 $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
95 cd $(top_srcdir) && $(AUTOMAKE) --gnu images/pipes_toys/Makefile
96
97 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
98 cd $(top_builddir) \
99 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
100
101
102 install-pkgdataDATA: $(pkgdata_DATA)
103 @$(NORMAL_INSTALL)
104 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
105 @list='$(pkgdata_DATA)'; for p in $$list; do \
106 if test -f $(srcdir)/$$p; then \
107 echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p"; \
108 $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p; \
109 else if test -f $$p; then \
110 echo " $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p"; \
111 $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p; \
112 fi; fi; \
113 done
114
115 uninstall-pkgdataDATA:
116 @$(NORMAL_UNINSTALL)
117 list='$(pkgdata_DATA)'; for p in $$list; do \
118 rm -f $(DESTDIR)$(pkgdatadir)/$$p; \
119 done
120 tags: TAGS
121 TAGS:
122
123
124 distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
125
126 subdir = images/pipes_toys
127
128 distdir: $(DISTFILES)
129 here=`cd $(top_builddir) && pwd`; \
130 top_distdir=`cd $(top_distdir) && pwd`; \
131 distdir=`cd $(distdir) && pwd`; \
132 cd $(top_srcdir) \
133 && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu images/pipes_toys/Makefile
134 @for file in $(DISTFILES); do \
135 d=$(srcdir); \
136 if test -d $$d/$$file; then \
137 cp -pr $$d/$$file $(distdir)/$$file; \
138 else \
139 test -f $(distdir)/$$file \
140 || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
141 || cp -p $$d/$$file $(distdir)/$$file || :; \
142 fi; \
143 done
144 info-am:
145 info: info-am
146 dvi-am:
147 dvi: dvi-am
148 check-am: all-am
149 check: check-am
150 installcheck-am:
151 installcheck: installcheck-am
152 install-exec-am:
153 install-exec: install-exec-am
154
155 install-data-am: install-pkgdataDATA
156 install-data: install-data-am
157
158 install-am: all-am
159 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
160 install: install-am
161 uninstall-am: uninstall-pkgdataDATA
162 uninstall: uninstall-am
163 all-am: Makefile $(DATA)
164 all-redirect: all-am
165 install-strip:
166 $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
167 installdirs:
168 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
169
170
171 mostlyclean-generic:
172
173 clean-generic:
174
175 distclean-generic:
176 -rm -f Makefile $(CONFIG_CLEAN_FILES)
177 -rm -f config.cache config.log stamp-h stamp-h[0-9]*
178
179 maintainer-clean-generic:
180 mostlyclean-am: mostlyclean-generic
181
182 mostlyclean: mostlyclean-am
183
184 clean-am: clean-generic mostlyclean-am
185
186 clean: clean-am
187
188 distclean-am: distclean-generic clean-am
189
190 distclean: distclean-am
191
192 maintainer-clean-am: maintainer-clean-generic distclean-am
193 @echo "This command is intended for maintainers to use;"
194 @echo "it deletes files that may require special tools to rebuild."
195
196 maintainer-clean: maintainer-clean-am
197
198 .PHONY: uninstall-pkgdataDATA install-pkgdataDATA tags distdir info-am \
199 info dvi-am dvi check check-am installcheck-am installcheck \
200 install-exec-am install-exec install-data-am install-data install-am \
201 install uninstall-am uninstall all-redirect all-am all installdirs \
202 mostlyclean-generic distclean-generic clean-generic \
203 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
204
205
206 # Tell versions [3.59,3.63) of GNU make to not export all variables.
207 # Otherwise a system limit (for SysV at least) may be exceeded.
208 .NOEXPORT:
0 pkgdatadir = $(datadir)/games/@PACKAGE@/images/pipes_wire
1
2 pkgdata_DATA= *.png
0 # Makefile.in generated automatically by automake 1.4 from Makefile.am
1
2 # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
3 # This Makefile.in is free software; the Free Software Foundation
4 # gives unlimited permission to copy and/or distribute it,
5 # with or without modifications, as long as this notice is preserved.
6
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
9 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 # PARTICULAR PURPOSE.
11
12
13 SHELL = @SHELL@
14
15 srcdir = @srcdir@
16 top_srcdir = @top_srcdir@
17 VPATH = @srcdir@
18 prefix = @prefix@
19 exec_prefix = @exec_prefix@
20
21 bindir = @bindir@
22 sbindir = @sbindir@
23 libexecdir = @libexecdir@
24 datadir = @datadir@
25 sysconfdir = @sysconfdir@
26 sharedstatedir = @sharedstatedir@
27 localstatedir = @localstatedir@
28 libdir = @libdir@
29 infodir = @infodir@
30 mandir = @mandir@
31 includedir = @includedir@
32 oldincludedir = /usr/include
33
34 DESTDIR =
35 pkglibdir = $(libdir)/@PACKAGE@
36 pkgincludedir = $(includedir)/@PACKAGE@
37
38 top_builddir = ../..
39
40 ACLOCAL = @ACLOCAL@
41 AUTOCONF = @AUTOCONF@
42 AUTOMAKE = @AUTOMAKE@
43 AUTOHEADER = @AUTOHEADER@
44
45 INSTALL = @INSTALL@
46 INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
47 INSTALL_DATA = @INSTALL_DATA@
48 INSTALL_SCRIPT = @INSTALL_SCRIPT@
49 transform = @program_transform_name@
50
51 NORMAL_INSTALL = :
52 PRE_INSTALL = :
53 POST_INSTALL = :
54 NORMAL_UNINSTALL = :
55 PRE_UNINSTALL = :
56 POST_UNINSTALL = :
57 host_alias = @host_alias@
58 host_triplet = @host@
59 AS = @AS@
60 CC = @CC@
61 CXX = @CXX@
62 DLLTOOL = @DLLTOOL@
63 LD = @LD@
64 LEX = @LEX@
65 LIBTOOL = @LIBTOOL@
66 LN_S = @LN_S@
67 MAKEINFO = @MAKEINFO@
68 NM = @NM@
69 OBJDUMP = @OBJDUMP@
70 PACKAGE = @PACKAGE@
71 RANLIB = @RANLIB@
72 SDL_CFLAGS = @SDL_CFLAGS@
73 SDL_CONFIG = @SDL_CONFIG@
74 SDL_LIBS = @SDL_LIBS@
75 VERSION = @VERSION@
76
77 pkgdatadir = $(datadir)/games/@PACKAGE@/images/pipes_wire
78
79 pkgdata_DATA = *.png
80 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
81 CONFIG_HEADER = ../../src/config.h
82 CONFIG_CLEAN_FILES =
83 DATA = $(pkgdata_DATA)
84
85 DIST_COMMON = Makefile.am Makefile.in
86
87
88 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
89
90 TAR = tar
91 GZIP_ENV = --best
92 all: all-redirect
93 .SUFFIXES:
94 $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
95 cd $(top_srcdir) && $(AUTOMAKE) --gnu images/pipes_wire/Makefile
96
97 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
98 cd $(top_builddir) \
99 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
100
101
102 install-pkgdataDATA: $(pkgdata_DATA)
103 @$(NORMAL_INSTALL)
104 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
105 @list='$(pkgdata_DATA)'; for p in $$list; do \
106 if test -f $(srcdir)/$$p; then \
107 echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p"; \
108 $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p; \
109 else if test -f $$p; then \
110 echo " $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p"; \
111 $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p; \
112 fi; fi; \
113 done
114
115 uninstall-pkgdataDATA:
116 @$(NORMAL_UNINSTALL)
117 list='$(pkgdata_DATA)'; for p in $$list; do \
118 rm -f $(DESTDIR)$(pkgdatadir)/$$p; \
119 done
120 tags: TAGS
121 TAGS:
122
123
124 distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
125
126 subdir = images/pipes_wire
127
128 distdir: $(DISTFILES)
129 here=`cd $(top_builddir) && pwd`; \
130 top_distdir=`cd $(top_distdir) && pwd`; \
131 distdir=`cd $(distdir) && pwd`; \
132 cd $(top_srcdir) \
133 && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu images/pipes_wire/Makefile
134 @for file in $(DISTFILES); do \
135 d=$(srcdir); \
136 if test -d $$d/$$file; then \
137 cp -pr $$d/$$file $(distdir)/$$file; \
138 else \
139 test -f $(distdir)/$$file \
140 || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
141 || cp -p $$d/$$file $(distdir)/$$file || :; \
142 fi; \
143 done
144 info-am:
145 info: info-am
146 dvi-am:
147 dvi: dvi-am
148 check-am: all-am
149 check: check-am
150 installcheck-am:
151 installcheck: installcheck-am
152 install-exec-am:
153 install-exec: install-exec-am
154
155 install-data-am: install-pkgdataDATA
156 install-data: install-data-am
157
158 install-am: all-am
159 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
160 install: install-am
161 uninstall-am: uninstall-pkgdataDATA
162 uninstall: uninstall-am
163 all-am: Makefile $(DATA)
164 all-redirect: all-am
165 install-strip:
166 $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
167 installdirs:
168 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
169
170
171 mostlyclean-generic:
172
173 clean-generic:
174
175 distclean-generic:
176 -rm -f Makefile $(CONFIG_CLEAN_FILES)
177 -rm -f config.cache config.log stamp-h stamp-h[0-9]*
178
179 maintainer-clean-generic:
180 mostlyclean-am: mostlyclean-generic
181
182 mostlyclean: mostlyclean-am
183
184 clean-am: clean-generic mostlyclean-am
185
186 clean: clean-am
187
188 distclean-am: distclean-generic clean-am
189
190 distclean: distclean-am
191
192 maintainer-clean-am: maintainer-clean-generic distclean-am
193 @echo "This command is intended for maintainers to use;"
194 @echo "it deletes files that may require special tools to rebuild."
195
196 maintainer-clean: maintainer-clean-am
197
198 .PHONY: uninstall-pkgdataDATA install-pkgdataDATA tags distdir info-am \
199 info dvi-am dvi check check-am installcheck-am installcheck \
200 install-exec-am install-exec install-data-am install-data install-am \
201 install uninstall-am uninstall all-redirect all-am all installdirs \
202 mostlyclean-generic distclean-generic clean-generic \
203 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
204
205
206 # Tell versions [3.59,3.63) of GNU make to not export all variables.
207 # Otherwise a system limit (for SysV at least) may be exceeded.
208 .NOEXPORT:
Binary diff not shown
Binary diff not shown
0 #!/bin/sh
1 #
2 # install - install a program, script, or datafile
3 # This comes from X11R5 (mit/util/scripts/install.sh).
4 #
5 # Copyright 1991 by the Massachusetts Institute of Technology
6 #
7 # Permission to use, copy, modify, distribute, and sell this software and its
8 # documentation for any purpose is hereby granted without fee, provided that
9 # the above copyright notice appear in all copies and that both that
10 # copyright notice and this permission notice appear in supporting
11 # documentation, and that the name of M.I.T. not be used in advertising or
12 # publicity pertaining to distribution of the software without specific,
13 # written prior permission. M.I.T. makes no representations about the
14 # suitability of this software for any purpose. It is provided "as is"
15 # without express or implied warranty.
16 #
17 # Calling this script install-sh is preferred over install.sh, to prevent
18 # `make' implicit rules from creating a file called install from it
19 # when there is no Makefile.
20 #
21 # This script is compatible with the BSD install script, but was written
22 # from scratch. It can only install one file at a time, a restriction
23 # shared with many OS's install programs.
24
25
26 # set DOITPROG to echo to test this script
27
28 # Don't use :- since 4.3BSD and earlier shells don't like it.
29 doit="${DOITPROG-}"
30
31
32 # put in absolute paths if you don't have them in your path; or use env. vars.
33
34 mvprog="${MVPROG-mv}"
35 cpprog="${CPPROG-cp}"
36 chmodprog="${CHMODPROG-chmod}"
37 chownprog="${CHOWNPROG-chown}"
38 chgrpprog="${CHGRPPROG-chgrp}"
39 stripprog="${STRIPPROG-strip}"
40 rmprog="${RMPROG-rm}"
41 mkdirprog="${MKDIRPROG-mkdir}"
42
43 transformbasename=""
44 transform_arg=""
45 instcmd="$mvprog"
46 chmodcmd="$chmodprog 0755"
47 chowncmd=""
48 chgrpcmd=""
49 stripcmd=""
50 rmcmd="$rmprog -f"
51 mvcmd="$mvprog"
52 src=""
53 dst=""
54 dir_arg=""
55
56 while [ x"$1" != x ]; do
57 case $1 in
58 -c) instcmd="$cpprog"
59 shift
60 continue;;
61
62 -d) dir_arg=true
63 shift
64 continue;;
65
66 -m) chmodcmd="$chmodprog $2"
67 shift
68 shift
69 continue;;
70
71 -o) chowncmd="$chownprog $2"
72 shift
73 shift
74 continue;;
75
76 -g) chgrpcmd="$chgrpprog $2"
77 shift
78 shift
79 continue;;
80
81 -s) stripcmd="$stripprog"
82 shift
83 continue;;
84
85 -t=*) transformarg=`echo $1 | sed 's/-t=//'`
86 shift
87 continue;;
88
89 -b=*) transformbasename=`echo $1 | sed 's/-b=//'`
90 shift
91 continue;;
92
93 *) if [ x"$src" = x ]
94 then
95 src=$1
96 else
97 # this colon is to work around a 386BSD /bin/sh bug
98 :
99 dst=$1
100 fi
101 shift
102 continue;;
103 esac
104 done
105
106 if [ x"$src" = x ]
107 then
108 echo "install: no input file specified"
109 exit 1
110 else
111 true
112 fi
113
114 if [ x"$dir_arg" != x ]; then
115 dst=$src
116 src=""
117
118 if [ -d $dst ]; then
119 instcmd=:
120 else
121 instcmd=mkdir
122 fi
123 else
124
125 # Waiting for this to be detected by the "$instcmd $src $dsttmp" command
126 # might cause directories to be created, which would be especially bad
127 # if $src (and thus $dsttmp) contains '*'.
128
129 if [ -f $src -o -d $src ]
130 then
131 true
132 else
133 echo "install: $src does not exist"
134 exit 1
135 fi
136
137 if [ x"$dst" = x ]
138 then
139 echo "install: no destination specified"
140 exit 1
141 else
142 true
143 fi
144
145 # If destination is a directory, append the input filename; if your system
146 # does not like double slashes in filenames, you may need to add some logic
147
148 if [ -d $dst ]
149 then
150 dst="$dst"/`basename $src`
151 else
152 true
153 fi
154 fi
155
156 ## this sed command emulates the dirname command
157 dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
158
159 # Make sure that the destination directory exists.
160 # this part is taken from Noah Friedman's mkinstalldirs script
161
162 # Skip lots of stat calls in the usual case.
163 if [ ! -d "$dstdir" ]; then
164 defaultIFS='
165 '
166 IFS="${IFS-${defaultIFS}}"
167
168 oIFS="${IFS}"
169 # Some sh's can't handle IFS=/ for some reason.
170 IFS='%'
171 set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'`
172 IFS="${oIFS}"
173
174 pathcomp=''
175
176 while [ $# -ne 0 ] ; do
177 pathcomp="${pathcomp}${1}"
178 shift
179
180 if [ ! -d "${pathcomp}" ] ;
181 then
182 $mkdirprog "${pathcomp}"
183 else
184 true
185 fi
186
187 pathcomp="${pathcomp}/"
188 done
189 fi
190
191 if [ x"$dir_arg" != x ]
192 then
193 $doit $instcmd $dst &&
194
195 if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else true ; fi &&
196 if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else true ; fi &&
197 if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else true ; fi &&
198 if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else true ; fi
199 else
200
201 # If we're going to rename the final executable, determine the name now.
202
203 if [ x"$transformarg" = x ]
204 then
205 dstfile=`basename $dst`
206 else
207 dstfile=`basename $dst $transformbasename |
208 sed $transformarg`$transformbasename
209 fi
210
211 # don't allow the sed command to completely eliminate the filename
212
213 if [ x"$dstfile" = x ]
214 then
215 dstfile=`basename $dst`
216 else
217 true
218 fi
219
220 # Make a temp file name in the proper directory.
221
222 dsttmp=$dstdir/#inst.$$#
223
224 # Move or copy the file name to the temp name
225
226 $doit $instcmd $src $dsttmp &&
227
228 trap "rm -f ${dsttmp}" 0 &&
229
230 # and set any options; do chmod last to preserve setuid bits
231
232 # If any of these fail, we abort the whole thing. If we want to
233 # ignore errors from any of these, just make sure not to ignore
234 # errors from the above "$doit $instcmd $src $dsttmp" command.
235
236 if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else true;fi &&
237 if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else true;fi &&
238 if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else true;fi &&
239 if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else true;fi &&
240
241 # Now rename the file to the real destination.
242
243 $doit $rmcmd -f $dstdir/$dstfile &&
244 $doit $mvcmd $dsttmp $dstdir/$dstfile
245
246 fi &&
247
248
249 exit 0
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=13 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 required=10
5 start_delay=1200 # between 0..2000
6 graph_dir="pipes_metal" #first directory to search for graphics
7 graph_dir="flow_green"
8 graph_dir="arrows_yellow"
9 graph_dir="default"
10 restrict_coef=0 #defines the % of restricted connections
11 fixed_coef=0 #defines the % of fixed pipes
12 background=mosaic #defines the type of the background
13 entry{ #entry attributes block
14 row=1
15 column=1
16 side=east
17 }
18 exit{ #exit attributes block
19 row=3
20 column=6
21 side=west
22 }
23 }
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=14 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=1000 # between 0..2000
5 graph_dir="pipes_toys" #first directory to search for graphics
6 graph_dir="flow_light"
7 graph_dir="arrows_yellow"
8 graph_dir="default"
9 restrict_coef=10 #defines the % of restricted connections
10 fixed_coef=6 #defines the % of fixed pipes
11 background=mosaic #defines the type of the background
12 required=24
13 entry{ #entry attributes block
14 row=6
15 column=0
16 side=north
17 }
18 exit{ #exit attributes block
19 row=3
20 column=4
21 side=south
22 }
23 pipe{
24 row=0
25 column=0
26 type=elbow_se
27 fixed=yes
28 restricted_output=east
29 }
30 pipe{
31 row=1
32 column=2
33 type=elbow_se
34 fixed=yes
35 restricted_output=east
36 }
37 pipe{
38 row=0
39 column=6
40 type=elbow_sw
41 fixed=yes
42 restricted_output=south
43 bonus=super
44 }
45 pipe{
46 row=5
47 column=6
48 type=elbow_nw
49 fixed=yes
50 restricted_output=west
51 bonus=super
52 }
53 pipe{
54 row=5
55 column=2
56 type=elbow_ne
57 fixed=yes
58 restricted_output=north
59 bonus=ultra
60 }
61 pipe{
62 row=1
63 column=5
64 type=elbow_sw
65 fixed=yes
66 restricted_output=south
67 bonus=hyper
68 }
69 pipe{
70 row=4
71 column=5
72 type=elbow_nw
73 fixed=yes
74 }
75
76
77
78
79
80
81 }
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=13 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=500 # between 0..2000
5 graph_dir="pipes_space/back01"#first directory to search for graphics
6 graph_dir="pipes_space"#first directory to search for graphics
7 graph_dir="flow_blue"
8 graph_dir="arrows_grey"
9 graph_dir="default"
10 restrict_coef=10 #defines the % of restricted connections
11 fixed_coef=7 #defines the % of fixed pipes
12 background=wallpaper #defines the type of the background
13 required=18
14 entry{ #entry attributes block
15 row=2
16 column=1
17 side=west
18 }
19 exit{ #exit attributes block
20 row=7
21 column=7
22 side=east
23 }
24 pipe{
25 row=3
26 column=4
27 type=cross
28 fixed=yes
29 restricted_output=south
30 restricted_output=east
31 bonus=hyper
32 }
33 }
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=13 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=700 # between 0..2000
5 graph_dir="pipes_space/back02"#first directory to search for graphics
6 graph_dir="pipes_space"#first directory to search for graphics
7 graph_dir="flow_blue"
8 graph_dir="arrows_grey"
9 graph_dir="default"
10 restrict_coef=12 #defines the % of restricted connections
11 fixed_coef=8 #defines the % of fixed pipes
12 background=wallpaper #defines the type of the background
13 required=28
14 entry{ #entry attributes block
15 row=2
16 column=1
17 side=west
18 }
19 exit{ #exit attributes block
20 row=7
21 column=7
22 side=east
23 }
24 pipe{
25 row=6
26 column=3
27 type=horizontal
28 fixed=yes
29 restricted_output=east
30 }
31 pipe{
32 row=7
33 column=4
34 type=horizontal
35 fixed=yes
36 restricted_output=west
37 }
38 pipe{
39 row=6
40 column=1
41 type=cross
42 fixed=yes
43 restricted_output=south
44 }
45 pipe{
46 row=6
47 column=2
48 type=cross
49 fixed=yes
50 bonus=life
51 restricted_output=east
52 }
53 pipe{
54 row=1
55 column=7
56 type=cross
57 fixed=yes
58 bonus=hyper
59 restricted_output=west
60 }
61 pipe{
62 row=1
63 column=6
64 type=cross
65 fixed=yes
66 restricted_output=north
67 }
68 }
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=13 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=700 # between 0..2000
5 graph_dir="pipes_space/back03"#first directory to search for graphics
6 graph_dir="pipes_space"#first directory to search for graphics
7 graph_dir="flow_blue"
8 graph_dir="arrows_grey"
9 graph_dir="default"
10 restrict_coef=13 #defines the % of restricted connections
11 fixed_coef=10 #defines the % of fixed pipes
12 background=wallpaper #defines the type of the background
13 required=22
14 entry{ #entry attributes block
15 row=7
16 column=0
17 side=north
18 }
19 exit{ #exit attributes block
20 row=0
21 column=8
22 side=west
23 }
24 pipe{
25 row=2
26 column=2
27 type=horizontal
28 fixed=yes
29 }
30 pipe{
31 row=5
32 column=2
33 type=horizontal
34 fixed=yes
35 }
36 pipe{
37 row=2
38 column=3
39 type=cross
40 fixed=yes
41 }
42 pipe{
43 row=3
44 column=3
45 type=vertical
46 fixed=yes
47 }
48 pipe{
49 row=4
50 column=3
51 type=vertical
52 fixed=yes
53 }
54 pipe{
55 row=5
56 column=3
57 type=cross
58 fixed=yes
59 bonus=life
60 }
61 pipe{
62 row=6
63 column=3
64 type=vertical
65 fixed=yes
66 }
67 pipe{
68 row=2
69 column=4
70 type=horizontal
71 fixed=yes
72 }
73 pipe{
74 row=5
75 column=4
76 type=horizontal
77 fixed=yes
78 }
79 pipe{
80 row=2
81 column=5
82 type=cross
83 fixed=yes
84 bonus=hyper
85 }
86 pipe{
87 row=3
88 column=5
89 type=vertical
90 fixed=yes
91 }
92 pipe{
93 row=4
94 column=5
95 type=vertical
96 fixed=yes
97 }
98 pipe{
99 row=5
100 column=5
101 type=cross
102 fixed=yes
103 }
104 pipe{
105 row=6
106 column=5
107 type=vertical
108 fixed=yes
109 }
110 pipe{
111 row=2
112 column=6
113 type=horizontal
114 fixed=yes
115 }
116 pipe{
117 row=5
118 column=6
119 type=horizontal
120 fixed=yes
121 }
122
123
124
125
126
127
128
129
130
131
132
133
134
135 }
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=14 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=700 # between 0..2000
5 graph_dir="pipes_space/back04"#first directory to search for graphics
6 graph_dir="pipes_space"#first directory to search for graphics
7 graph_dir="flow_blue"
8 graph_dir="arrows_grey"
9 graph_dir="default"
10 restrict_coef=14 #defines the % of restricted connections
11 fixed_coef=12 #defines the % of fixed pipes
12 background=wallpaper #defines the type of the background
13 required=19
14 entry{ #entry attributes block
15 row=4
16 column=4
17 side=north
18 }
19 exit{ #exit attributes block
20 row=5
21 column=5
22 side=south
23 }
24 pipe{
25 row=0
26 column=0
27 type=elbow_se
28 fixed=yes
29 bonus=super
30 }
31 pipe{
32 row=7
33 column=8
34 type=elbow_nw
35 fixed=yes
36 }
37 }
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=13 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=700 # between 0..2000
5 graph_dir="pipes_space/back05"#first directory to search for graphics
6 graph_dir="pipes_space" #first directory to search for graphics
7 graph_dir="flow_blue"
8 graph_dir="arrows_grey"
9 graph_dir="default"
10 restrict_coef=15 #defines the % of restricted connections
11 fixed_coef=13 #defines the % of fixed pipes
12 background=wallpaper #defines the type of the background
13 required=27
14 entry{ #entry attributes block
15 row=4
16 column=4
17 side=north
18 }
19 exit{ #exit attributes block
20 row=5
21 column=5
22 side=south
23 }
24 pipe{
25 row=0
26 column=0
27 type=elbow_se
28 fixed=yes
29 bonus=super
30 }
31 pipe{
32 row=7
33 column=8
34 type=elbow_nw
35 fixed=yes
36 bonus=super
37 }
38 }
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=13 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=700 # between 0..2000
5 graph_dir="pipes_cables" #first directory to search for graphics
6 graph_dir="flow_green"
7 graph_dir="arrows_yellow"
8 graph_dir="default"
9 restrict_coef=15 #defines the % of restricted connections
10 fixed_coef=13 #defines the % of fixed pipes
11 background=wallpaper #defines the type of the background
12 required=27
13 entry{ #entry attributes block
14 row=4
15 column=4
16 side=north
17 }
18 exit{ #exit attributes block
19 row=5
20 column=5
21 side=south
22 }
23 pipe{
24 row=0
25 column=0
26 type=elbow_se
27 fixed=yes
28 bonus=super
29 }
30 pipe{
31 row=7
32 column=8
33 type=elbow_nw
34 fixed=yes
35 bonus=super
36 }
37 }
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=13 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=700 # between 0..2000
5 graph_dir="pipes_cables" #first directory to search for graphics
6 graph_dir="flow_green"
7 graph_dir="arrows_yellow"
8 graph_dir="default"
9 restrict_coef=15 #defines the % of restricted connections
10 fixed_coef=13 #defines the % of fixed pipes
11 background=wallpaper #defines the type of the background
12 required=30
13 entry{ #entry attributes block
14 row=7
15 column=2
16 side=west
17 }
18 exit{ #exit attributes block
19 row=7
20 column=5
21 side=east
22 }
23 pipe{
24 row=7
25 column=3
26 type=elbow_ne
27 fixed=yes
28 }
29 pipe{
30 row=7
31 column=4
32 type=elbow_nw
33 fixed=yes
34 }
35 pipe{
36 row=6
37 column=3
38 type=vertical
39 fixed=yes
40 }
41 pipe{
42 row=6
43 column=4
44 type=vertical
45 fixed=yes
46 }
47 pipe{
48 row=5
49 column=3
50 type=cross
51 fixed=yes
52 }
53 pipe{
54 row=5
55 column=4
56 type=cross
57 fixed=yes
58 }
59 pipe{
60 row=4
61 column=3
62 type=elbow_sw
63 fixed=yes
64 }
65 pipe{
66 row=4
67 column=4
68 type=elbow_se
69 fixed=yes
70 }
71 pipe{
72 row=4
73 column=2
74 type=horizontal
75 fixed=yes
76 }
77 pipe{
78 row=4
79 column=5
80 type=horizontal
81 fixed=yes
82 }
83 pipe{
84 row=4
85 column=1
86 type=elbow_ne
87 fixed=yes
88 }
89 pipe{
90 row=4
91 column=6
92 type=elbow_nw
93 fixed=yes
94 }
95 pipe{
96 row=3
97 column=1
98 type=elbow_se
99 fixed=yes
100 }
101 pipe{
102 row=3
103 column=6
104 type=elbow_sw
105 fixed=yes
106 }
107 pipe{
108 row=3
109 column=2
110 type=horizontal
111 fixed=yes
112 }
113 pipe{
114 row=3
115 column=5
116 type=horizontal
117 fixed=yes
118 }
119 pipe{
120 row=3
121 column=3
122 type=elbow_nw
123 fixed=yes
124 }
125 pipe{
126 row=3
127 column=4
128 type=elbow_ne
129 fixed=yes
130 }
131 pipe{
132 row=2
133 column=3
134 type=cross
135 fixed=yes
136 }
137 pipe{
138 row=2
139 column=4
140 type=cross
141 fixed=yes
142 }
143 pipe{
144 row=1
145 column=3
146 type=cross
147 fixed=yes
148 bonus=ultra
149 restricted_output=west
150 }
151 pipe{
152 row=1
153 column=4
154 type=cross
155 fixed=yes
156 bonus=ultra
157 restricted_output=west
158 }
159 pipe{
160 row=0
161 column=3
162 type=elbow_se
163 fixed=yes
164 }
165 pipe{
166 row=0
167 column=4
168 type=elbow_sw
169 fixed=yes
170 }
171 }
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=13 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=700 # between 0..2000
5 graph_dir="pipes_cables" #first directory to search for graphics
6 graph_dir="flow_green"
7 graph_dir="arrows_yellow"
8 graph_dir="default"
9 restrict_coef=15 #defines the % of restricted connections
10 fixed_coef=13 #defines the % of fixed pipes
11 background=wallpaper #defines the type of the background
12 required=30
13 entry{ #entry attributes block
14 row=2
15 column=4
16 side=east
17 }
18 exit{ #exit attributes block
19 row=7
20 column=5
21 side=east
22 }
23 pipe{
24 row=0
25 column=2
26 type=elbow_sw
27 fixed=yes
28 }
29 pipe{
30 row=0
31 column=1
32 type=elbow_se
33 fixed=yes
34 }
35 pipe{
36 row=1
37 column=1
38 type=cross
39 fixed=yes
40 }
41 pipe{
42 row=2
43 column=1
44 type=elbow_nw
45 fixed=yes
46 }
47 pipe{
48 row=1
49 column=0
50 type=elbow_se
51 fixed=yes
52 }
53 pipe{
54 row=1
55 column=2
56 type=elbow_nw
57 fixed=yes
58 }
59 pipe{
60 row=2
61 column=0
62 type=elbow_ne
63 fixed=yes
64 }
65 pipe{
66 row=3
67 column=2
68 type=bowl_h
69 restricted_output=west
70 fixed=yes
71 }
72 pipe{
73 row=4
74 column=2
75 type=elbow_se
76 fixed=yes
77 }
78 pipe{
79 row=5
80 column=2
81 type=elbow_ne
82 fixed=yes
83 }
84 pipe{
85 row=4
86 column=3
87 type=horizontal
88 fixed=yes
89 }
90 pipe{
91 row=5
92 column=3
93 type=horizontal
94 fixed=yes
95 }
96 pipe{
97 row=4
98 column=4
99 type=horizontal
100 fixed=yes
101 }
102 pipe{
103 row=5
104 column=4
105 type=horizontal
106 fixed=yes
107 }
108 pipe{
109 row=5
110 column=5
111 type=horizontal
112 fixed=yes
113 }
114 pipe{
115 row=4
116 column=5
117 type=elbow_nw
118 fixed=yes
119 }
120 pipe{
121 row=3
122 column=5
123 type=vertical
124 fixed=yes
125 }
126 pipe{
127 row=5
128 column=6
129 type=elbow_nw
130 fixed=yes
131 }
132 pipe{
133 row=4
134 column=6
135 type=elbow_se
136 fixed=yes
137 }
138 pipe{
139 row=3
140 column=6
141 type=elbow_ne
142 fixed=yes
143 }
144 pipe{
145 row=2
146 column=5
147 type=cross
148 fixed=yes
149 }
150 pipe{
151 row=2
152 column=6
153 type=cross
154 fixed=yes
155 }
156 pipe{
157 row=1
158 column=5
159 type=elbow_se
160 fixed=yes
161 }
162 pipe{
163 row=1
164 column=6
165 type=elbow_sw
166 fixed=yes
167 }
168 pipe{
169 row=3
170 column=7
171 type=horizontal
172 fixed=yes
173 }
174 pipe{
175 row=4
176 column=7
177 type=horizontal
178 fixed=yes
179 }
180 pipe{
181 row=3
182 column=8
183 type=elbow_sw
184 fixed=yes
185 }
186 pipe{
187 row=4
188 column=8
189 type=elbow_nw
190 fixed=yes
191 }
192 pipe{
193 row=7
194 column=3
195 type=horizontal
196 bonus=hyper
197 fixed=yes
198 }
199 pipe{
200 row=6
201 column=5
202 type=horizontal
203 bonus=hyper
204 fixed=yes
205 }
206 pipe{
207 row=6
208 column=0
209 type=bowl_v
210 fixed=yes
211 }
212 }āŽ
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=13 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=700 # between 0..2000
5 graph_dir="pipes_cables" #first directory to search for graphics
6 graph_dir="flow_green"
7 graph_dir="arrows_yellow"
8 graph_dir="default"
9 restrict_coef=15 #defines the % of restricted connections
10 fixed_coef=13 #defines the % of fixed pipes
11 background=wallpaper #defines the type of the background
12 required=35
13 entry{ #entry attributes block
14 row=5
15 column=2
16 side=south
17 }
18 exit{ #exit attributes block
19 row=5
20 column=0
21 side=south
22 }
23 pipe{
24 row=0
25 column=0
26 type=elbow_se
27 fixed=yes
28 }
29 pipe{
30 row=0
31 column=1
32 type=elbow_sw
33 fixed=yes
34 }
35 pipe{
36 row=1
37 column=1
38 type=vertical
39 fixed=yes
40 }
41 pipe{
42 row=1
43 column=0
44 type=vertical
45 fixed=yes
46 }
47 pipe{
48 row=2
49 column=1
50 type=vertical
51 fixed=yes
52 }
53 pipe{
54 row=3
55 column=2
56 type=elbow_sw
57 fixed=yes
58 }
59 pipe{
60 row=4
61 column=2
62 type=elbow_nw
63 fixed=yes
64 }
65 pipe{
66 row=4
67 column=1
68 type=horizontal
69 fixed=yes
70 }
71 pipe{
72 row=4
73 column=0
74 type=elbow_ne
75 fixed=yes
76 }
77 pipe{
78 row=3
79 column=0
80 type=vertical
81 fixed=yes
82 }
83 pipe{
84 row=2
85 column=0
86 type=vertical
87 fixed=yes
88 }
89 pipe{
90 row=2
91 column=1
92 type=vertical
93 fixed=yes
94 }
95 pipe{
96 row=3
97 column=1
98 type=elbow_ne
99 fixed=yes
100 }
101 pipe{
102 row=6
103 column=2
104 type=cross
105 restricted_output=west
106 fixed=yes
107 }
108 pipe{
109 row=7
110 column=3
111 type=horizontal
112 fixed=yes
113 }
114
115 pipe{
116 row=7
117 column=2
118 type=elbow_ne
119 fixed=yes
120 }
121 pipe{
122 row=0
123 column=5
124 type=vertical
125 fixed=yes
126 }
127 pipe{
128 row=1
129 column=4
130 type=elbow_se
131 fixed=yes
132 }
133 pipe{
134 row=1
135 column=5
136 type=elbow_nw
137 fixed=yes
138 }
139 pipe{
140 row=2
141 column=4
142 type=cross
143 fixed=yes
144 }
145 pipe{
146 row=2
147 column=6
148 type=cross
149 fixed=yes
150 }
151
152 pipe{
153 row=3
154 column=4
155 type=elbow_ne
156 fixed=yes
157 }
158 pipe{
159 row=4
160 column=4
161 type=elbow_se
162 fixed=yes
163 }
164 pipe{
165 row=3
166 column=5
167 type=elbow_sw
168 fixed=yes
169 }
170 pipe{
171 row=4
172 column=5
173 type=elbow_nw
174 fixed=yes
175 }
176
177 pipe{
178 row=5
179 column=4
180 type=vertical
181 fixed=yes
182 }
183 pipe{
184 row=6
185 column=4
186 type=vertical
187 fixed=yes
188 }
189 pipe{
190 row=7
191 column=4
192 type=cross
193 fixed=yes
194 }
195 pipe{
196 row=0
197 column=8
198 type=elbow_sw
199 bonus=hyper
200 fixed=yes
201 }
202 pipe{
203 row=3
204 column=8
205 type=horizontal
206 fixed=yes
207 }
208 pipe{
209 row=4
210 column=8
211 type=horizontal
212 fixed=yes
213 }
214 pipe{
215 row=3
216 column=7
217 type=elbow_se
218 fixed=yes
219 }
220 pipe{
221 row=4
222 column=7
223 type=elbow_ne
224 fixed=yes
225 }
226 pipe{
227 row=0
228 column=2
229 type=elbow_se
230 bonus=ultra
231 fixed=yes
232 }
233
234
235
236
237 }
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=3 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=1200 # between 0..2000
5 graph_dir="pipes_metal" #first directory to search for graphics
6 graph_dir="flow_green"
7 graph_dir="arrows_yellow"
8 graph_dir="default"
9 restrict_coef=0 #defines the % of restricted connections
10 fixed_coef=0 #defines the % of fixed pipes
11 required=12
12 background=mosaic #defines the type of the background
13 entry{ #entry attributes block
14 row=6
15 column=2
16 side=north
17 }
18 exit{ #exit attributes block
19 row=1
20 column=6
21 side=south
22 }
23 }
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=11 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=1800 # between 0..2000
5 graph_dir="pipes_cables" #first directory to search for graphics
6 graph_dir="flow_green"
7 graph_dir="arrows_yellow"
8 graph_dir="default"
9 restrict_coef=15 #defines the % of restricted connections
10 fixed_coef=10 #defines the % of fixed pipes
11 background=wallpaper #defines the type of the background
12 required=58
13 entry{ #entry attributes block
14 row=7
15 column=0
16 side=north
17 }
18 exit{ #exit attributes block
19 row=3
20 column=4
21 side=south
22 }
23 pipe{
24 row=1
25 column=1
26 type=vertical
27 fixed=yes
28 restricted_output=south
29 }
30 pipe{
31 row=2
32 column=1
33 type=vertical
34 fixed=yes
35 }
36 pipe{
37 row=3
38 column=1
39 type=elbow_ne
40 fixed=yes
41 }
42 pipe{
43 row=4
44 column=1
45 type=elbow_se
46 fixed=yes
47 }
48 pipe{
49 row=5
50 column=1
51 type=vertical
52 fixed=yes
53 }
54 pipe{
55 row=6
56 column=1
57 type=vertical
58 fixed=yes
59 }
60 pipe{
61 row=7
62 column=1
63 type=elbow_ne
64 fixed=yes
65 }
66 pipe{
67 row=0
68 column=2
69 type=elbow_se
70 fixed=yes
71 }
72 pipe{
73 row=6
74 column=2
75 type=elbow_ne
76 fixed=yes
77 }
78 pipe{
79 row=3
80 column=2
81 type=elbow_sw
82 fixed=yes
83 }
84 pipe{
85 row=4
86 column=2
87 type=elbow_nw
88 fixed=yes
89 }
90 pipe{
91 row=6
92 column=3
93 type=horizontal
94 fixed=yes
95 }
96 pipe{
97 row=6
98 column=4
99 type=horizontal
100 fixed=yes
101 }
102 pipe{
103 row=6
104 column=5
105 type=horizontal
106 fixed=yes
107 }
108 pipe{
109 row=6
110 column=6
111 type=horizontal
112 fixed=yes
113 }
114 pipe{
115 row=5
116 column=8
117 type=elbow_nw
118 fixed=yes
119 }
120 pipe{
121 row=4
122 column=4
123 type=vertical
124 fixed=yes
125 bonus=life
126 }
127 pipe{
128 row=5
129 column=4
130 type=elbow_ne
131 fixed=yes
132 }
133 pipe{
134 row=1
135 column=4
136 type=elbow_se
137 fixed=yes
138 }
139 pipe{
140 row=2
141 column=4
142 type=elbow_ne
143 fixed=yes
144 }
145 pipe{
146 row=2
147 column=8
148 type=elbow_sw
149 fixed=yes
150 }
151 pipe{
152 row=2
153 column=5
154 type=horizontal
155 fixed=yes
156 }
157 pipe{
158 row=2
159 column=6
160 type=horizontal
161 fixed=yes
162 }
163 pipe{
164 row=2
165 column=7
166 type=horizontal
167 fixed=yes
168 }
169 }āŽ
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=18 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=1000 # between 0..2000
5 graph_dir="pipes_wire" #first directory to search for graphics
6 graph_dir="flow_blue"
7 graph_dir="arrows_grey"
8 graph_dir="default"
9 restrict_coef=15 #defines the % of restricted connections
10 fixed_coef=50 #defines the % of fixed pipes
11 background=mosaic #defines the type of the background
12 required=22
13 entry{ #entry attributes block
14 row=2
15 column=4
16 side=east
17 }
18 exit{ #exit attributes block
19 row=7
20 column=5
21 side=east
22 }
23 }
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=9 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=1000 # between 0..2000
5 graph_dir="pipes_wire" #first directory to search for graphics
6 graph_dir="flow_blue"
7 graph_dir="arrows_grey"
8 graph_dir="default"
9 restrict_coef=15 #defines the % of restricted connections
10 fixed_coef=25 #defines the % of fixed pipes
11 background=mosaic #defines the type of the background
12 required=20
13 entry{ #entry attributes block
14 row=0
15 column=0
16 side=east
17 }
18 exit{ #exit attributes block
19 row=7
20 column=8
21 side=north
22 }
23 pipe{
24 row=1
25 column=1
26 type=cross
27 fixed=yes
28 restricted_output=north
29 restricted_output=west
30 }
31 pipe{
32 row=1
33 column=3
34 type=cross
35 fixed=yes
36 restricted_output=north
37 restricted_output=west
38 }
39 pipe{
40 row=1
41 column=5
42 type=cross
43 fixed=yes
44 restricted_output=north
45 restricted_output=west
46 }
47 pipe{
48 row=1
49 column=7
50 type=cross
51 fixed=yes
52 bonus=life
53 restricted_output=north
54 restricted_output=west
55 }
56 pipe{
57 row=2
58 column=0
59 type=cross
60 fixed=yes
61 restricted_output=south
62 restricted_output=east
63 }
64 pipe{
65 row=2
66 column=2
67 type=cross
68 fixed=yes
69 restricted_output=south
70 restricted_output=east
71 }
72 pipe{
73 row=2
74 column=4
75 type=cross
76 fixed=yes
77 restricted_output=south
78 restricted_output=east
79 }
80 pipe{
81 row=2
82 column=6
83 type=cross
84 fixed=yes
85 restricted_output=south
86 restricted_output=east
87 }
88 pipe{
89 row=2
90 column=8
91 type=cross
92 fixed=yes
93 restricted_output=south
94 restricted_output=east
95 }
96 pipe{
97 row=3
98 column=1
99 type=cross
100 fixed=yes
101 restricted_output=north
102 restricted_output=west
103 }
104 pipe{
105 row=3
106 column=3
107 type=cross
108 fixed=yes
109 restricted_output=north
110 restricted_output=west
111 }
112 pipe{
113 row=3
114 column=5
115 type=cross
116 fixed=yes
117 restricted_output=north
118 restricted_output=west
119 }
120 pipe{
121 row=3
122 column=7
123 type=cross
124 fixed=yes
125 restricted_output=north
126 restricted_output=west
127 }
128 pipe{
129 row=4
130 column=0
131 type=cross
132 fixed=yes
133 restricted_output=south
134 restricted_output=east
135 }
136 pipe{
137 row=4
138 column=2
139 type=cross
140 fixed=yes
141 restricted_output=south
142 restricted_output=east
143 }
144 pipe{
145 row=4
146 column=4
147 type=cross
148 fixed=yes
149 restricted_output=south
150 restricted_output=east
151 }
152 pipe{
153 row=4
154 column=6
155 type=cross
156 fixed=yes
157 restricted_output=south
158 restricted_output=east
159 }
160 pipe{
161 row=4
162 column=8
163 type=cross
164 fixed=yes
165 restricted_output=south
166 restricted_output=east
167 }
168 pipe{
169 row=5
170 column=1
171 type=cross
172 fixed=yes
173 bonus=hyper
174 restricted_output=north
175 restricted_output=west
176 }
177 pipe{
178 row=5
179 column=3
180 type=cross
181 fixed=yes
182 restricted_output=north
183 restricted_output=west
184 }
185 pipe{
186 row=5
187 column=5
188 type=cross
189 fixed=yes
190 restricted_output=north
191 restricted_output=west
192 }
193 pipe{
194 row=5
195 column=7
196 type=cross
197 fixed=yes
198 restricted_output=north
199 restricted_output=west
200 }
201 pipe{
202 row=6
203 column=0
204 type=cross
205 fixed=yes
206 restricted_output=south
207 restricted_output=east
208 }
209 pipe{
210 row=6
211 column=2
212 type=cross
213 fixed=yes
214 restricted_output=south
215 restricted_output=east
216 }
217 pipe{
218 row=6
219 column=4
220 type=cross
221 fixed=yes
222 restricted_output=south
223 restricted_output=east
224 }
225 pipe{
226 row=6
227 column=6
228 type=cross
229 fixed=yes
230 restricted_output=south
231 restricted_output=east
232 }
233 pipe{
234 row=6
235 column=8
236 type=cross
237 fixed=yes
238 restricted_output=south
239 restricted_output=east
240 }
241 }
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=12 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=1000 # between 0..2000
5 graph_dir="pipes_wire" #first directory to search for graphics
6 graph_dir="flow_blue"
7 graph_dir="arrows_grey"
8 graph_dir="default"
9 restrict_coef=15 #defines the % of restricted connections
10 fixed_coef=30 #defines the % of fixed pipes
11 background=mosaic #defines the type of the background
12 required=30
13 entry{ #entry attributes block
14 row=1
15 column=6
16 side=south
17 }
18 exit{ #exit attributes block
19 row=7
20 column=6
21 side=west
22 }
23 pipe{
24 row=4
25 column=4
26 type=cross
27 fixed=yes
28 }
29 pipe{
30 row=0
31 column=3
32 type=vertical
33 fixed=yes
34 }
35 pipe{
36 row=1
37 column=3
38 type=vertical
39 fixed=yes
40 }
41 pipe{
42 row=2
43 column=3
44 type=vertical
45 fixed=yes
46 }
47 pipe{
48 row=3
49 column=3
50 type=cross
51 fixed=yes
52 }
53 pipe{
54 row=4
55 column=3
56 type=cross
57 fixed=yes
58 }
59 pipe{
60 row=5
61 column=3
62 type=cross
63 fixed=yes
64 }
65 pipe{
66 row=6
67 column=3
68 type=vertical
69 fixed=yes
70 }
71 pipe{
72 row=7
73 column=3
74 type=vertical
75 fixed=yes
76 }
77 pipe{
78 row=5
79 column=4
80 type=elbow_nw
81 fixed=yes
82 }
83 pipe{
84 row=3
85 column=0
86 type=cross
87 fixed=yes
88 restricted_output=north
89 }
90 pipe{
91 row=3
92 column=1
93 type=horizontal
94 fixed=yes
95 }
96 pipe{
97 row=3
98 column=2
99 type=cross
100 fixed=yes
101 restricted_output=south
102 }
103 pipe{
104 row=3
105 column=4
106 type=cross
107 fixed=yes
108 }
109 pipe{
110 row=3
111 column=5
112 type=horizontal
113 fixed=yes
114 }
115 pipe{
116 row=3
117 column=6
118 type=horizontal
119 fixed=yes
120 }
121 pipe{
122 row=3
123 column=7
124 type=horizontal
125 fixed=yes
126 }
127 pipe{
128 row=3
129 column=8
130 type=horizontal
131 fixed=yes
132 }
133 pipe{
134 row=0
135 column=1
136 type=bowl_h
137 fixed=yes
138 bonus=hyper
139 }
140
141 }āŽ
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=12 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=1000 # between 0..2000
5 graph_dir="pipes_wire" #first directory to search for graphics
6 graph_dir="flow_blue"
7 graph_dir="arrows_grey"
8 graph_dir="default"
9 restrict_coef=15 #defines the % of restricted connections
10 fixed_coef=35 #defines the % of fixed pipes
11 background=mosaic #defines the type of the background
12 required=35
13 entry{ #entry attributes block
14 row=0
15 column=5
16 side=south
17 }
18 exit{ #exit attributes block
19 row=7
20 column=8
21 side=west
22 }
23 pipe{
24 row=0
25 column=3
26 type=vertical
27 fixed=yes
28 }
29 pipe{
30 row=0
31 column=4
32 type=vertical
33 fixed=yes
34 }
35 pipe{
36 row=1
37 column=3
38 type=vertical
39 fixed=yes
40 }
41 pipe{
42 row=1
43 column=4
44 type=vertical
45 fixed=yes
46 }
47 pipe{
48 row=2
49 column=3
50 type=elbow_ne
51 fixed=yes
52 }
53 pipe{
54 row=2
55 column=4
56 type=elbow_nw
57 fixed=yes
58 }
59 pipe{
60 row=6
61 column=3
62 type=elbow_se
63 fixed=yes
64 }
65 pipe{
66 row=6
67 column=4
68 type=elbow_sw
69 fixed=yes
70 }
71 pipe{
72 row=7
73 column=3
74 type=cross
75 fixed=yes
76 }
77 pipe{
78 row=7
79 column=4
80 type=cross
81 fixed=yes
82 }
83 pipe{
84 row=4
85 column=8
86 type=elbow_nw
87 fixed=yes
88 }
89 pipe{
90 row=4
91 column=7
92 type=horizontal
93 fixed=yes
94 }
95 pipe{
96 row=4
97 column=6
98 type=horizontal
99 fixed=yes
100 }
101
102
103
104 pipe{
105 row=3
106 column=8
107 type=cross
108 fixed=yes
109 }
110 pipe{
111 row=5
112 column=8
113 type=horizontal
114 fixed=yes
115 }
116 pipe{
117 row=3
118 column=7
119 type=horizontal
120 fixed=yes
121 }
122 pipe{
123 row=5
124 column=7
125 type=horizontal
126 fixed=yes
127 }
128 pipe{
129 row=3
130 column=6
131 type=horizontal
132 fixed=yes
133 }
134 pipe{
135 row=5
136 column=6
137 type=horizontal
138 fixed=yes
139 }
140 pipe{
141 row=3
142 column=5
143 type=elbow_se
144 fixed=yes
145 }
146 pipe{
147 row=5
148 column=5
149 type=elbow_ne
150 fixed=yes
151 }
152 pipe{
153 row=4
154 column=5
155 type=cross
156 fixed=yes
157 }
158
159
160
161 pipe{
162 row=1
163 column=1
164 type=bowl_v
165 fixed=yes
166 bonus=life
167 }
168 pipe{
169 row=6
170 column=1
171 type=bowl_v
172 fixed=yes
173 bonus=life
174 }
175 }
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=13 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=1500 # between 0..2000
5 graph_dir="pipes_wire" #first directory to search for graphics
6 graph_dir="flow_blue"
7 graph_dir="arrows_grey"
8 graph_dir="default"
9 restrict_coef=0 #defines the % of restricted connections
10 fixed_coef=100 #defines the % of fixed pipes
11 background=mosaic #defines the type of the background
12 required=50
13 entry{ #entry attributes block
14 row=0
15 column=0
16 side=east
17 }
18 exit{ #exit attributes block
19 row=7
20 column=8
21 side=west
22 }
23 }āŽ
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=3 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=1200 # between 0..2000
5 graph_dir="pipes_metal" #first directory to search for graphics
6 graph_dir="flow_green"
7 graph_dir="arrows_yellow"
8 graph_dir="default"
9 restrict_coef=0 #defines the % of restricted connections
10 fixed_coef=0 #defines the % of fixed pipes
11 required=12
12 background=mosaic #defines the type of the background
13 entry{ #entry attributes block
14 row=6
15 column=4
16 side=north
17 }
18 exit{ #exit attributes block
19 row=1
20 column=4
21 side=south
22 }
23 pipe{ #pipe attributes block
24 row=3
25 column=3
26 type=horizontal
27 fixed=yes
28 }
29 pipe{ #pipe attributes block
30 row=3
31 column=4
32 type=horizontal
33 fixed=yes
34 bonus=super
35 }
36 pipe{ #pipe attributes block
37 row=3
38 column=5
39 type=horizontal
40 fixed=yes
41 }
42 }
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=3 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=1000 # between 0..2000
5 graph_dir="pipes_metal" #first directory to search for graphics
6 graph_dir="flow_green"
7 graph_dir="arrows_yellow"
8 graph_dir="default"
9 restrict_coef=0 #defines the % of restricted connections
10 fixed_coef=0 #defines the % of fixed pipes
11 required=15
12 background=mosaic #defines the type of the background
13 entry{ #entry attributes block
14 row=1
15 column=1
16 side=south
17 }
18 exit{ #exit attributes block
19 row=7
20 column=8
21 side=west
22 }
23 pipe{ #pipe attributes block
24 row=1
25 column=2
26 type=elbow_se
27 fixed=yes
28 }
29 pipe{ #pipe attributes block
30 row=1
31 column=3
32 type=elbow_sw
33 fixed=yes
34 }
35 pipe{ #pipe attributes block
36 row=2
37 column=2
38 type=vertical
39 fixed=yes
40 }
41 pipe{ #pipe attributes block
42 row=2
43 column=3
44 type=elbow_ne
45 fixed=yes
46 }
47 pipe{ #pipe attributes block
48 row=2
49 column=4
50 type=elbow_sw
51 fixed=yes
52 }
53 pipe{ #pipe attributes block
54 row=3
55 column=2
56 type=elbow_ne
57 fixed=yes
58 }
59 pipe{ #pipe attributes block
60 row=3
61 column=3
62 type=elbow_sw
63 fixed=yes
64 }
65 pipe{ #pipe attributes block
66 row=3
67 column=4
68 type=elbow_ne
69 fixed=yes
70 }
71 pipe{ #pipe attributes block
72 row=4
73 column=3
74 type=elbow_ne
75 fixed=yes
76 }
77 pipe{ #pipe attributes block
78 row=3
79 column=5
80 type=elbow_sw
81 fixed=yes
82 }
83 pipe{ #pipe attributes block
84 row=4
85 column=4
86 type=elbow_sw
87 fixed=yes
88 }
89 pipe{ #pipe attributes block
90 row=4
91 column=5
92 type=elbow_ne
93 fixed=yes
94 }
95 pipe{ #pipe attributes block
96 row=4
97 column=6
98 type=elbow_sw
99 fixed=yes
100 }
101 pipe{ #pipe attributes block
102 row=5
103 column=4
104 type=elbow_ne
105 fixed=yes
106 }
107 pipe{ #pipe attributes block
108 row=5
109 column=5
110 type=elbow_sw
111 fixed=yes
112 }
113 pipe{ #pipe attributes block
114 row=5
115 column=6
116 type=elbow_ne
117 fixed=yes
118 }
119 pipe{ #pipe attributes block
120 row=5
121 column=7
122 type=elbow_sw
123 fixed=yes
124 }
125 pipe{ #pipe attributes block
126 row=6
127 column=5
128 type=elbow_ne
129 fixed=yes
130 }
131 pipe{ #pipe attributes block
132 row=6
133 column=6
134 type=horizontal
135 fixed=yes
136 }
137 pipe{ #pipe attributes block
138 row=6
139 column=7
140 type=elbow_nw
141 fixed=yes
142 }
143 }
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=3 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=1200 # between 0..2000
5 graph_dir="pipes_metal" #first directory to search for graphics
6 graph_dir="flow_green"
7 graph_dir="arrows_yellow"
8 graph_dir="default"
9 restrict_coef=0 #defines the % of restricted connections
10 fixed_coef=0 #defines the % of fixed pipes
11 required=16
12 background=mosaic #defines the type of the background
13 entry{ #entry attributes block
14 row=7
15 column=1
16 side=east
17 }
18 exit{ #exit attributes block
19 row=1
20 column=4
21 side=west
22 }
23 pipe{ #pipe attributes block
24 row=5
25 column=2
26 type=elbow_se
27 fixed=yes
28 }
29 pipe{ #pipe attributes block
30 row=5
31 column=3
32 type=elbow_sw
33 fixed=yes
34 }
35 pipe{ #pipe attributes block
36 row=6
37 column=2
38 type=elbow_ne
39 fixed=yes
40 }
41 pipe{ #pipe attributes block
42 row=6
43 column=3
44 type=elbow_nw
45 fixed=yes
46 }
47 pipe{ #pipe attributes block
48 row=5
49 column=5
50 type=elbow_se
51 fixed=yes
52 }
53 pipe{ #pipe attributes block
54 row=5
55 column=6
56 type=elbow_sw
57 fixed=yes
58 }
59 pipe{ #pipe attributes block
60 row=6
61 column=5
62 type=elbow_ne
63 fixed=yes
64 }
65 pipe{ #pipe attributes block
66 row=6
67 column=6
68 type=elbow_nw
69 fixed=yes
70 }
71
72
73 pipe{ #pipe attributes block
74 row=1
75 column=1
76 type=elbow_se
77 fixed=yes
78 }
79 pipe{ #pipe attributes block
80 row=1
81 column=2
82 type=elbow_sw
83 fixed=yes
84 }
85 pipe{ #pipe attributes block
86 row=2
87 column=1
88 type=elbow_ne
89 fixed=yes
90 }
91 pipe{ #pipe attributes block
92 row=2
93 column=2
94 type=cross
95 fixed=yes
96 }
97 pipe{ #pipe attributes block
98 row=2
99 column=3
100 type=elbow_sw
101 fixed=yes
102 }
103
104 pipe{ #pipe attributes block
105 row=3
106 column=3
107 type=elbow_nw
108 fixed=yes
109 }
110 pipe{ #pipe attributes block
111 row=3
112 column=2
113 type=elbow_ne
114 fixed=yes
115 }
116 pipe{ #pipe attributes block
117 row=0
118 column=5
119 type=elbow_se
120 fixed=yes
121 }
122 pipe{ #pipe attributes block
123 row=0
124 column=6
125 type=elbow_sw
126 fixed=yes
127 }
128 pipe{ #pipe attributes block
129 row=1
130 column=5
131 type=elbow_ne
132 fixed=yes
133 }
134 pipe{ #pipe attributes block
135 row=1
136 column=6
137 type=elbow_nw
138 fixed=yes
139 }
140 pipe{ #pipe attributes block
141 row=4
142 column=0
143 type=elbow_sw
144 fixed=yes
145 }
146 pipe{ #pipe attributes block
147 row=5
148 column=0
149 type=elbow_nw
150 fixed=yes
151 }
152
153 }
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=4 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=900 # between 0..2000
5 graph_dir="pipes_toys" #first directory to search for graphics
6 graph_dir="flow_light"
7 graph_dir="arrows_yellow"
8 graph_dir="default"
9 restrict_coef=0 #defines the % of restricted connections
10 fixed_coef=0 #defines the % of fixed pipes
11 background=mosaic #defines the type of the background
12 required=20
13 entry{ #entry attributes block
14 row=1
15 column=2
16 side=east
17 }
18 exit{ #exit attributes block
19 row=7
20 column=6
21 side=west
22 }
23 pipe{ #pipe attributes block
24 row=3
25 column=4
26 type=cross
27 fixed=yes
28 bonus=super
29 restricted_output=south
30 }
31 pipe{ #pipe attributes block
32 row=3
33 column=5
34 type=elbow_nw
35 fixed=yes
36 }
37 pipe{ #pipe attributes block
38 row=2
39 column=5
40 type=elbow_sw
41 fixed=yes
42 }
43 pipe{ #pipe attributes block
44 row=2
45 column=4
46 type=elbow_se
47 fixed=yes
48 }
49 pipe{ #pipe attributes block
50 row=0
51 column=1
52 type=elbow_se
53 fixed=yes
54 }
55 pipe{ #pipe attributes block
56 row=1
57 column=1
58 type=vertical
59 fixed=yes
60 }
61 pipe{ #pipe attributes block
62 row=2
63 column=1
64 type=elbow_ne
65 fixed=yes
66 }
67 pipe{ #pipe attributes block
68 row=0
69 column=2
70 type=horizontal
71 fixed=yes
72 }
73 pipe{ #pipe attributes block
74 row=0
75 column=3
76 type=elbow_sw
77 fixed=yes
78 }
79 pipe{ #pipe attributes block
80 row=2
81 column=2
82 type=horizontal
83 fixed=yes
84 }
85 pipe{ #pipe attributes block
86 row=2
87 column=3
88 type=elbow_nw
89 fixed=yes
90 }
91 pipe{ #pipe attributes block
92 row=1
93 column=3
94 type=cross
95 fixed=yes
96 }
97
98
99
100
101
102
103
104
105
106 }
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=7 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=1200 # between 0..2000
5 graph_dir="pipes_toys" #first directory to search for graphics
6 graph_dir="flow_light"
7 graph_dir="arrows_yellow"
8 graph_dir="default"
9 restrict_coef=1 #defines the % of restricted connections
10 fixed_coef=2 #defines the % of fixed pipes
11 background=mosaic #defines the type of the background
12 required=20
13 entry{ #entry attributes block
14 row=0
15 column=0
16 side=east
17 }
18 exit{ #exit attributes block
19 row=7
20 column=8
21 side=west
22 }
23 pipe{ #pipe attributes block
24 row=1
25 column=1
26 type=elbow_se
27 fixed=yes
28 }
29 pipe{ #pipe attributes block
30 row=1
31 column=2
32 type=horizontal
33 fixed=yes
34 }
35 pipe{ #pipe attributes block
36 row=1
37 column=3
38 type=horizontal
39 fixed=yes
40 }
41 pipe{ #pipe attributes block
42 row=1
43 column=4
44 type=horizontal
45 fixed=yes
46 }
47 pipe{ #pipe attributes block
48 row=1
49 column=5
50 type=horizontal
51 fixed=yes
52 }
53 pipe{ #pipe attributes block
54 row=1
55 column=6
56 type=elbow_sw
57 fixed=yes
58 }
59 pipe{ #pipe attributes block
60 row=2
61 column=6
62 type=vertical
63 fixed=yes
64 }
65 pipe{ #pipe attributes block
66 row=3
67 column=6
68 type=vertical
69 fixed=yes
70 }
71 pipe{ #pipe attributes block
72 row=4
73 column=6
74 type=elbow_nw
75 fixed=yes
76 }
77 pipe{ #pipe attributes block
78 row=4
79 column=5
80 type=horizontal
81 fixed=yes
82 }
83 pipe{ #pipe attributes block
84 row=4
85 column=2
86 type=horizontal
87 fixed=yes
88 }
89 pipe{ #pipe attributes block
90 row=4
91 column=1
92 type=elbow_ne
93 fixed=yes
94 }
95 pipe{ #pipe attributes block
96 row=3
97 column=1
98 type=vertical
99 fixed=yes
100 }
101 pipe{ #pipe attributes block
102 row=2
103 column=1
104 type=vertical
105 fixed=yes
106 }
107 pipe{ #pipe attributes block
108 row=3
109 column=3
110 type=cross
111 fixed=yes
112 bonus=super
113 restricted_output=north
114 }
115 pipe{ #pipe attributes block
116 row=3
117 column=4
118 type=cross
119 fixed=yes
120 restricted_output=south
121 bonus=super
122 }
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137 }
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=10 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=1000 # between 0..2000
5 graph_dir="pipes_toys" #first directory to search for graphics
6 graph_dir="flow_light"
7 graph_dir="arrows_yellow"
8 graph_dir="default"
9 restrict_coef=2 #defines the % of restricted connections
10 fixed_coef=3 #defines the % of fixed pipes
11 background=mosaic #defines the type of the background
12 required=18
13 entry{ #entry attributes block
14 row=7
15 column=0
16 side=north
17 }
18 exit{ #exit attributes block
19 row=0
20 column=8
21 side=west
22 }
23 pipe{
24 row=4
25 column=0
26 type=vertical
27 fixed=yes
28 restricted_output=north
29 bonus=ultra
30 }
31 pipe{
32 row=4
33 column=1
34 type=vertical
35 fixed=yes
36 restricted_output=south
37 }
38 pipe{
39 row=4
40 column=2
41 type=vertical
42 fixed=yes
43 restricted_output=north
44 bonus=ultra
45 }
46 pipe{
47 row=4
48 column=3
49 type=vertical
50 fixed=yes
51 restricted_output=south
52 }
53 pipe{
54 row=4
55 column=4
56 type=vertical
57 fixed=yes
58 restricted_output=north
59 bonus=ultra
60 }
61 pipe{
62 row=4
63 column=5
64 type=vertical
65 fixed=yes
66 restricted_output=south
67 }
68 pipe{
69 row=4
70 column=6
71 type=vertical
72 fixed=yes
73 restricted_output=north
74 bonus=ultra
75 }
76 pipe{
77 row=4
78 column=7
79 type=vertical
80 fixed=yes
81 restricted_output=south
82 }
83 pipe{
84 row=4
85 column=8
86 type=vertical
87 fixed=yes
88 restricted_output=north
89 bonus=ultra
90 }
91 }
0 #The level structure must begin with the word "pipenightdreams"
1 pipenightdreams{
2 speed=11 #defines the speed of the flow, must be >=1
3 level=1 #not used
4 start_delay=1000 # between 0..2000
5 graph_dir="pipes_toys" #first directory to search for graphics
6 graph_dir="flow_light"
7 graph_dir="arrows_yellow"
8 graph_dir="default"
9 restrict_coef=4 #defines the % of restricted connections
10 fixed_coef=5 #defines the % of fixed pipes
11 background=mosaic #defines the type of the background
12 require=25
13 entry{ #entry attributes block
14 row=6
15 column=0
16 side=north
17 }
18 exit{ #exit attributes block
19 row=4
20 column=4
21 side=south
22 }
23 pipe{
24 row=2
25 column=0
26 type=cross
27 fixed=yes
28 }
29 pipe{
30 row=3
31 column=0
32 type=cross
33 fixed=yes
34 }
35 pipe{
36 row=4
37 column=0
38 type=vertical
39 fixed=yes
40 }
41 pipe{
42 row=2
43 column=1
44 type=horizontal
45 fixed=yes
46 }
47 pipe{
48 row=3
49 column=1
50 type=horizontal
51 fixed=yes
52 }
53 pipe{
54 row=2
55 column=2
56 type=elbow_sw
57 fixed=yes
58 }
59 pipe{
60 row=3
61 column=2
62 type=elbow_nw
63 fixed=yes
64 }
65 pipe{
66 row=2
67 column=3
68 type=cross
69 fixed=yes
70 bonus=super
71 }
72 pipe{
73 row=3
74 column=3
75 type=vertical
76 fixed=yes
77 }
78 pipe{
79 row=4
80 column=3
81 type=vertical
82 fixed=yes
83 }
84 pipe{
85 row=2
86 column=4
87 type=elbow_sw
88 fixed=yes
89 }
90 pipe{
91 row=3
92 column=4
93 type=elbow_ne
94 fixed=yes
95 }
96 pipe{
97 row=3
98 column=5
99 type=cross
100 fixed=yes
101 }
102 pipe{
103 row=4
104 column=5
105 type=vertical
106 fixed=yes
107 }
108 pipe{
109 row=2
110 column=5
111 type=vertical
112 fixed=yes
113 }
114 pipe{
115 row=2
116 column=6
117 type=cross
118 fixed=yes
119 }
120 pipe{
121 row=3
122 column=6
123 type=vertical
124 fixed=yes
125 }
126 pipe{
127 row=4
128 column=6
129 type=cross
130 fixed=yes
131 bonus=super
132 }
133 pipe{
134 row=2
135 column=7
136 type=horizontal
137 fixed=yes
138 }
139 pipe{
140 row=4
141 column=7
142 type=horizontal
143 fixed=yes
144 }
145 pipe{
146 row=2
147 column=8
148 type=elbow_sw
149 fixed=yes
150 }
151 pipe{
152 row=3
153 column=8
154 type=vertical
155 fixed=yes
156 }
157 pipe{
158 row=4
159 column=8
160 type=elbow_nw
161 fixed=yes
162 }
163 }
0 pkgdatadir = $(datadir)/games/@PACKAGE@/levels
1
2 pkgdata_DATA= *.level
0 # Makefile.in generated automatically by automake 1.4 from Makefile.am
1
2 # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
3 # This Makefile.in is free software; the Free Software Foundation
4 # gives unlimited permission to copy and/or distribute it,
5 # with or without modifications, as long as this notice is preserved.
6
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
9 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 # PARTICULAR PURPOSE.
11
12
13 SHELL = @SHELL@
14
15 srcdir = @srcdir@
16 top_srcdir = @top_srcdir@
17 VPATH = @srcdir@
18 prefix = @prefix@
19 exec_prefix = @exec_prefix@
20
21 bindir = @bindir@
22 sbindir = @sbindir@
23 libexecdir = @libexecdir@
24 datadir = @datadir@
25 sysconfdir = @sysconfdir@
26 sharedstatedir = @sharedstatedir@
27 localstatedir = @localstatedir@
28 libdir = @libdir@
29 infodir = @infodir@
30 mandir = @mandir@
31 includedir = @includedir@
32 oldincludedir = /usr/include
33
34 DESTDIR =
35 pkglibdir = $(libdir)/@PACKAGE@
36 pkgincludedir = $(includedir)/@PACKAGE@
37
38 top_builddir = ..
39
40 ACLOCAL = @ACLOCAL@
41 AUTOCONF = @AUTOCONF@
42 AUTOMAKE = @AUTOMAKE@
43 AUTOHEADER = @AUTOHEADER@
44
45 INSTALL = @INSTALL@
46 INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
47 INSTALL_DATA = @INSTALL_DATA@
48 INSTALL_SCRIPT = @INSTALL_SCRIPT@
49 transform = @program_transform_name@
50
51 NORMAL_INSTALL = :
52 PRE_INSTALL = :
53 POST_INSTALL = :
54 NORMAL_UNINSTALL = :
55 PRE_UNINSTALL = :
56 POST_UNINSTALL = :
57 host_alias = @host_alias@
58 host_triplet = @host@
59 AS = @AS@
60 CC = @CC@
61 CXX = @CXX@
62 DLLTOOL = @DLLTOOL@
63 LD = @LD@
64 LEX = @LEX@
65 LIBTOOL = @LIBTOOL@
66 LN_S = @LN_S@
67 MAKEINFO = @MAKEINFO@
68 NM = @NM@
69 OBJDUMP = @OBJDUMP@
70 PACKAGE = @PACKAGE@
71 RANLIB = @RANLIB@
72 SDL_CFLAGS = @SDL_CFLAGS@
73 SDL_CONFIG = @SDL_CONFIG@
74 SDL_LIBS = @SDL_LIBS@
75 VERSION = @VERSION@
76
77 pkgdatadir = $(datadir)/games/@PACKAGE@/levels
78
79 pkgdata_DATA = *.level
80 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
81 CONFIG_HEADER = ../src/config.h
82 CONFIG_CLEAN_FILES =
83 DATA = $(pkgdata_DATA)
84
85 DIST_COMMON = Makefile.am Makefile.in
86
87
88 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
89
90 TAR = tar
91 GZIP_ENV = --best
92 all: all-redirect
93 .SUFFIXES:
94 $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
95 cd $(top_srcdir) && $(AUTOMAKE) --gnu levels/Makefile
96
97 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
98 cd $(top_builddir) \
99 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
100
101
102 install-pkgdataDATA: $(pkgdata_DATA)
103 @$(NORMAL_INSTALL)
104 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
105 @list='$(pkgdata_DATA)'; for p in $$list; do \
106 if test -f $(srcdir)/$$p; then \
107 echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p"; \
108 $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkgdatadir)/$$p; \
109 else if test -f $$p; then \
110 echo " $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p"; \
111 $(INSTALL_DATA) $$p $(DESTDIR)$(pkgdatadir)/$$p; \
112 fi; fi; \
113 done
114
115 uninstall-pkgdataDATA:
116 @$(NORMAL_UNINSTALL)
117 list='$(pkgdata_DATA)'; for p in $$list; do \
118 rm -f $(DESTDIR)$(pkgdatadir)/$$p; \
119 done
120 tags: TAGS
121 TAGS:
122
123
124 distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
125
126 subdir = levels
127
128 distdir: $(DISTFILES)
129 here=`cd $(top_builddir) && pwd`; \
130 top_distdir=`cd $(top_distdir) && pwd`; \
131 distdir=`cd $(distdir) && pwd`; \
132 cd $(top_srcdir) \
133 && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu levels/Makefile
134 @for file in $(DISTFILES); do \
135 d=$(srcdir); \
136 if test -d $$d/$$file; then \
137 cp -pr $$d/$$file $(distdir)/$$file; \
138 else \
139 test -f $(distdir)/$$file \
140 || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
141 || cp -p $$d/$$file $(distdir)/$$file || :; \
142 fi; \
143 done
144 info-am:
145 info: info-am
146 dvi-am:
147 dvi: dvi-am
148 check-am: all-am
149 check: check-am
150 installcheck-am:
151 installcheck: installcheck-am
152 install-exec-am:
153 install-exec: install-exec-am
154
155 install-data-am: install-pkgdataDATA
156 install-data: install-data-am
157
158 install-am: all-am
159 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
160 install: install-am
161 uninstall-am: uninstall-pkgdataDATA
162 uninstall: uninstall-am
163 all-am: Makefile $(DATA)
164 all-redirect: all-am
165 install-strip:
166 $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
167 installdirs:
168 $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
169
170
171 mostlyclean-generic:
172
173 clean-generic:
174
175 distclean-generic:
176 -rm -f Makefile $(CONFIG_CLEAN_FILES)
177 -rm -f config.cache config.log stamp-h stamp-h[0-9]*
178
179 maintainer-clean-generic:
180 mostlyclean-am: mostlyclean-generic
181
182 mostlyclean: mostlyclean-am
183
184 clean-am: clean-generic mostlyclean-am
185
186 clean: clean-am
187
188 distclean-am: distclean-generic clean-am
189
190 distclean: distclean-am
191
192 maintainer-clean-am: maintainer-clean-generic distclean-am
193 @echo "This command is intended for maintainers to use;"
194 @echo "it deletes files that may require special tools to rebuild."
195
196 maintainer-clean: maintainer-clean-am
197
198 .PHONY: uninstall-pkgdataDATA install-pkgdataDATA tags distdir info-am \
199 info dvi-am dvi check check-am installcheck-am installcheck \
200 install-exec-am install-exec install-data-am install-data install-am \
201 install uninstall-am uninstall all-redirect all-am all installdirs \
202 mostlyclean-generic distclean-generic clean-generic \
203 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
204
205
206 # Tell versions [3.59,3.63) of GNU make to not export all variables.
207 # Otherwise a system limit (for SysV at least) may be exceeded.
208 .NOEXPORT:
0 #! /bin/sh
1
2 # libtool - Provide generalized library-building support services.
3 # Generated automatically by ltconfig (GNU libtool 1.3c (1.620 1999/10/07 15:40:07))
4 # NOTE: Changes made to this file will be lost: look at ltconfig or ltmain.sh.
5 #
6 # Copyright (C) 1996-1999 Free Software Foundation, Inc.
7 # Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
8 #
9 # This program is free software; you can redistribute it and/or modify
10 # it under the terms of the GNU General Public License as published by
11 # the Free Software Foundation; either version 2 of the License, or
12 # (at your option) any later version.
13 #
14 # This program is distributed in the hope that it will be useful, but
15 # WITHOUT ANY WARRANTY; without even the implied warranty of
16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 # General Public License for more details.
18 #
19 # You should have received a copy of the GNU General Public License
20 # along with this program; if not, write to the Free Software
21 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
22 #
23 # As a special exception to the GNU General Public License, if you
24 # distribute this file as part of a program that contains a
25 # configuration script generated by Autoconf, you may include it under
26 # the same distribution terms that you use for the rest of that program.
27
28 # Sed that helps us avoid accidentally triggering echo(1) options like -n.
29 Xsed="sed -e s/^X//"
30
31 # The HP-UX ksh and POSIX shell print the target directory to stdout
32 # if CDPATH is set.
33 if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
34
35 ### BEGIN LIBTOOL CONFIG
36 # Libtool was configured as follows, on host walde:
37 #
38 # CC="gcc" CFLAGS="-g -O2" CPPFLAGS="" \
39 # LD="/usr/i486-suse-linux/bin/ld" LDFLAGS="" LIBS="" \
40 # NM="/usr/bin/nm -B" RANLIB="ranlib" LN_S="ln -s" \
41 # DLLTOOL="" OBJDUMP="" AS="" \
42 # ./ltconfig --cache-file=./config.cache --with-gcc --with-gnu-ld --no-verify --build=i586-pc-linux-gnu ./ltmain.sh i586-pc-linux-gnu
43 #
44 # Compiler and other test output produced by ltconfig, useful for
45 # debugging ltconfig, is in ./config.log if it exists.
46
47 # The version of ltconfig that generated this script.
48 LTCONFIG_VERSION="1.3c"
49
50 # Shell to use when invoking shell scripts.
51 SHELL="/bin/sh"
52
53 # Whether or not to build shared libraries.
54 build_libtool_libs=yes
55
56 # Whether or not to build static libraries.
57 build_old_libs=yes
58
59 # Whether or not to optimize for fast installation.
60 fast_install=yes
61
62 # The host system.
63 host_alias=i586-pc-linux-gnu
64 host=i586-pc-linux-gnu
65
66 # An echo program that does not interpret backslashes.
67 echo="echo"
68
69 # The archiver.
70 AR="ar"
71
72 # The default C compiler.
73 CC="gcc"
74
75 # The linker used to build libraries.
76 LD="/usr/i486-suse-linux/bin/ld"
77
78 # Whether we need hard or soft links.
79 LN_S="ln -s"
80
81 # A BSD-compatible nm program.
82 NM="/usr/bin/nm -B"
83
84 # Used on cygwin: DLL creation program.
85 DLLTOOL=""
86
87 # Used on cygwin: object dumper.
88 OBJDUMP=""
89
90 # Used on cygwin: assembler.
91 AS=""
92
93 # The name of the directory that contains temporary libtool files.
94 objdir=.libs
95
96 # How to create reloadable object files.
97 reload_flag=" -r"
98 reload_cmds="\$LD\$reload_flag -o \$output\$reload_objs"
99
100 # How to pass a linker flag through the compiler.
101 wl="-Wl,"
102
103 # Object file suffix (normally "o").
104 objext="o"
105
106 # Old archive suffix (normally "a").
107 libext="a"
108
109 # Executable file suffix (normally "").
110 exeext=""
111
112 # Additional compiler flags for building library objects.
113 pic_flag=" -fPIC"
114 pic_mode=default
115
116 # Does compiler simultaneously support -c and -o options?
117 compiler_c_o="yes"
118
119 # Can we write directly to a .lo ?
120 compiler_o_lo="yes"
121
122 # Must we lock files when doing compilation ?
123 need_locks="no"
124
125 # Do we need the lib prefix for modules?
126 need_lib_prefix=no
127
128 # Do we need a version for libraries?
129 need_version=no
130
131 # Whether dlopen is supported.
132 dlopen=unknown
133
134 # Whether dlopen of programs is supported.
135 dlopen_self=unknown
136
137 # Whether dlopen of statically linked programs is supported.
138 dlopen_self_static=unknown
139
140 # Compiler flag to prevent dynamic linking.
141 link_static_flag="-static"
142
143 # Compiler flag to turn off builtin functions.
144 no_builtin_flag=" -fno-builtin -fno-rtti -fno-exceptions"
145
146 # Compiler flag to allow reflexive dlopens.
147 export_dynamic_flag_spec="\${wl}--export-dynamic"
148
149 # Compiler flag to generate shared objects directly from archives.
150 whole_archive_flag_spec="\${wl}--whole-archive\$convenience \${wl}--no-whole-archive"
151
152 # Compiler flag to generate thread-safe objects.
153 thread_safe_flag_spec=""
154
155 # Library versioning type.
156 version_type=linux
157
158 # Format of library name prefix.
159 libname_spec="lib\$name"
160
161 # List of archive names. First name is the real one, the rest are links.
162 # The last name is the one that the linker finds with -lNAME.
163 library_names_spec="\${libname}\${release}.so\$versuffix \${libname}\${release}.so\$major \$libname.so"
164
165 # The coded name of the library, if different from the real name.
166 soname_spec="\${libname}\${release}.so\$major"
167
168 # Commands used to build and install an old-style archive.
169 RANLIB="ranlib"
170 old_archive_cmds="\$AR cru \$oldlib\$oldobjs"
171 old_postinstall_cmds="chmod 644 \$oldlib"
172 old_postuninstall_cmds=""
173
174 # Create an old-style archive from a shared archive.
175 old_archive_from_new_cmds=""
176
177 # Create a temporary old-style archive to link instead of a shared archive.
178 old_archive_from_expsyms_cmds=""
179
180 # Commands used to build and install a shared archive.
181 archive_cmds="\$CC -shared \$libobjs \$deplibs \$compiler_flags \${wl}-soname \$wl\$soname -o \$lib"
182 archive_expsym_cmds="\$CC -shared \$libobjs \$deplibs \$compiler_flags \${wl}-soname \$wl\$soname \${wl}-retain-symbols-file \$wl\$export_symbols -o \$lib"
183 postinstall_cmds=""
184 postuninstall_cmds=""
185
186 # Commands to strip libraries.
187 old_striplib="strip --strip-debug"
188 striplib="strip --strip-unneeded"
189
190 # Method to check whether dependent libraries are shared objects.
191 deplibs_check_method="pass_all"
192
193 # Command to use when deplibs_check_method == file_magic.
194 file_magic_cmd="file"
195
196 # Flag that allows shared libraries with undefined symbols to be built.
197 allow_undefined_flag=""
198
199 # Flag that forces no undefined symbols.
200 no_undefined_flag=""
201
202 # Commands used to finish a libtool library installation in a directory.
203 finish_cmds="PATH=\\\"\\\$PATH:/sbin\\\" ldconfig -n \$libdir"
204
205 # Same as above, but a single script fragment to be evaled but not shown.
206 finish_eval=""
207
208 # Take the output of nm and produce a listing of raw symbols and C names.
209 global_symbol_pipe="sed -n -e 's/^.*[ ]\\([ABCDGISTW]\\)[ ][ ]*\\(\\)\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2\\3 \\3/p'"
210
211 # Transform the output of nm in a proper C declaration
212 global_symbol_to_cdecl="sed -n -e 's/^. .* \\(.*\\)\$/extern char \\1;/p'"
213
214 # This is the shared library runtime path variable.
215 runpath_var=LD_RUN_PATH
216
217 # This is the shared library path variable.
218 shlibpath_var=LD_LIBRARY_PATH
219
220 # Is shlibpath searched before the hard-coded library search path?
221 shlibpath_overrides_runpath=no
222
223 # How to hardcode a shared library path into an executable.
224 hardcode_action=immediate
225
226 # Whether we should hardcode library paths into libraries.
227 hardcode_into_libs=no
228
229 # Flag to hardcode $libdir into a binary during linking.
230 # This must work even if $libdir does not exist.
231 hardcode_libdir_flag_spec="\${wl}--rpath \${wl}\$libdir"
232
233 # Whether we need a single -rpath flag with a separated argument.
234 hardcode_libdir_separator=""
235
236 # Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
237 # resulting binary.
238 hardcode_direct=no
239
240 # Set to yes if using the -LDIR flag during linking hardcodes DIR into the
241 # resulting binary.
242 hardcode_minus_L=no
243
244 # Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
245 # the resulting binary.
246 hardcode_shlibpath_var=unsupported
247
248 # Whether libtool must link a program against all its dependency libraries.
249 link_all_deplibs=unknown
250
251 # Compile-time system search path for libraries
252 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
253
254 # Run-time system search path for libraries
255 sys_lib_dlsearch_path_spec="/lib /usr/lib"
256
257 # Fix the shell variable $srcfile for the compiler.
258 fix_srcfile_path=""
259
260 # Set to yes if exported symbols are required.
261 always_export_symbols=no
262
263 # The commands to list exported symbols.
264 export_symbols_cmds="\$NM \$libobjs \$convenience | \$global_symbol_pipe | sed 's/.* //' | sort | uniq > \$export_symbols"
265
266 # The commands to extract the exported symbol list from a shared archive.
267 extract_expsyms_cmds=""
268
269 # Symbols that should not be listed in the preloaded symbols.
270 exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
271
272 # Symbols that must always be exported.
273 include_expsyms=""
274
275 ### END LIBTOOL CONFIG
276
277 # ltmain.sh - Provide generalized library-building support services.
278 # NOTE: Changing this file will not affect anything until you rerun ltconfig.
279 #
280 # Copyright (C) 1996-1999 Free Software Foundation, Inc.
281 # Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
282 #
283 # This program is free software; you can redistribute it and/or modify
284 # it under the terms of the GNU General Public License as published by
285 # the Free Software Foundation; either version 2 of the License, or
286 # (at your option) any later version.
287 #
288 # This program is distributed in the hope that it will be useful, but
289 # WITHOUT ANY WARRANTY; without even the implied warranty of
290 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
291 # General Public License for more details.
292 #
293 # You should have received a copy of the GNU General Public License
294 # along with this program; if not, write to the Free Software
295 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
296 #
297 # As a special exception to the GNU General Public License, if you
298 # distribute this file as part of a program that contains a
299 # configuration script generated by Autoconf, you may include it under
300 # the same distribution terms that you use for the rest of that program.
301
302 # Check that we have a working $echo.
303 if test "X$1" = X--no-reexec; then
304 # Discard the --no-reexec flag, and continue.
305 shift
306 elif test "X$1" = X--fallback-echo; then
307 # Avoid inline document here, it may be left over
308 :
309 elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
310 # Yippee, $echo works!
311 :
312 else
313 # Restart under the correct shell, and then maybe $echo will work.
314 exec $SHELL "$0" --no-reexec ${1+"$@"}
315 fi
316
317 if test "X$1" = X--fallback-echo; then
318 # used as fallback echo
319 shift
320 cat <<EOF
321 $*
322 EOF
323 exit 0
324 fi
325
326 # The name of this program.
327 progname=`$echo "$0" | sed 's%^.*/%%'`
328 modename="$progname"
329
330 # Constants.
331 PROGRAM=ltmain.sh
332 PACKAGE=libtool
333 VERSION=1.3c
334 TIMESTAMP=" (1.620 1999/10/07 15:40:07)"
335
336 default_mode=
337 help="Try \`$progname --help' for more information."
338 magic="%%%MAGIC variable%%%"
339 mkdir="mkdir"
340 mv="mv -f"
341 rm="rm -f"
342
343 # Sed substitution that helps us do robust quoting. It backslashifies
344 # metacharacters that are still active within double-quoted strings.
345 Xsed='sed -e 1s/^X//'
346 sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g'
347 SP2NL='tr \040 \012'
348 NL2SP='tr \015\012 \040\040'
349
350 # NLS nuisances.
351 # Only set LANG and LC_ALL to C if already set.
352 # These must not be set unconditionally because not all systems understand
353 # e.g. LANG=C (notably SCO).
354 # We save the old values to restore during execute mode.
355 if test "${LC_ALL+set}" = set; then
356 save_LC_ALL="$LC_ALL"; LC_ALL=C; export LC_ALL
357 fi
358 if test "${LANG+set}" = set; then
359 save_LANG="$LANG"; LANG=C; export LANG
360 fi
361
362 if test "$LTCONFIG_VERSION" != "$VERSION"; then
363 echo "$modename: ltconfig version \`$LTCONFIG_VERSION' does not match $PROGRAM version \`$VERSION'" 1>&2
364 echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
365 exit 1
366 fi
367
368 if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
369 echo "$modename: not configured to build any kind of library" 1>&2
370 echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
371 exit 1
372 fi
373
374 # Global variables.
375 mode=$default_mode
376 nonopt=
377 prev=
378 prevopt=
379 run=
380 show="$echo"
381 show_help=
382 execute_dlfiles=
383 lo2o="s/\\.lo\$/.${objext}/"
384 o2lo="s/\\.${objext}\$/.lo/"
385
386 # Parse our command line options once, thoroughly.
387 while test $# -gt 0
388 do
389 arg="$1"
390 shift
391
392 case "$arg" in
393 -*=*) optarg=`$echo "X$arg" | $Xsed -e 's/[-_a-zA-Z0-9]*=//'` ;;
394 *) optarg= ;;
395 esac
396
397 # If the previous option needs an argument, assign it.
398 if test -n "$prev"; then
399 case "$prev" in
400 execute_dlfiles)
401 eval "$prev=\"\$$prev \$arg\""
402 ;;
403 *)
404 eval "$prev=\$arg"
405 ;;
406 esac
407
408 prev=
409 prevopt=
410 continue
411 fi
412
413 # Have we seen a non-optional argument yet?
414 case "$arg" in
415 --help)
416 show_help=yes
417 ;;
418
419 --version)
420 echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP"
421 exit 0
422 ;;
423
424 --config)
425 sed -e '1,/^### BEGIN LIBTOOL CONFIG/d' -e '/^### END LIBTOOL CONFIG/,$d' $0
426 exit 0
427 ;;
428
429 --debug)
430 echo "$progname: enabling shell trace mode"
431 set -x
432 ;;
433
434 --dry-run | -n)
435 run=:
436 ;;
437
438 --features)
439 echo "host: $host"
440 if test "$build_libtool_libs" = yes; then
441 echo "enable shared libraries"
442 else
443 echo "disable shared libraries"
444 fi
445 if test "$build_old_libs" = yes; then
446 echo "enable static libraries"
447 else
448 echo "disable static libraries"
449 fi
450 exit 0
451 ;;
452
453 --finish) mode="finish" ;;
454
455 --mode) prevopt="--mode" prev=mode ;;
456 --mode=*) mode="$optarg" ;;
457
458 --quiet | --silent)
459 show=:
460 ;;
461
462 -dlopen)
463 prevopt="-dlopen"
464 prev=execute_dlfiles
465 ;;
466
467 -*)
468 $echo "$modename: unrecognized option \`$arg'" 1>&2
469 $echo "$help" 1>&2
470 exit 1
471 ;;
472
473 *)
474 nonopt="$arg"
475 break
476 ;;
477 esac
478 done
479
480 if test -n "$prevopt"; then
481 $echo "$modename: option \`$prevopt' requires an argument" 1>&2
482 $echo "$help" 1>&2
483 exit 1
484 fi
485
486 if test -z "$show_help"; then
487
488 # Infer the operation mode.
489 if test -z "$mode"; then
490 case "$nonopt" in
491 *cc | *++ | gcc* | *-gcc*)
492 mode=link
493 for arg
494 do
495 case "$arg" in
496 -c)
497 mode=compile
498 break
499 ;;
500 esac
501 done
502 ;;
503 *db | *dbx | *strace | *truss)
504 mode=execute
505 ;;
506 *install*|cp|mv)
507 mode=install
508 ;;
509 *rm)
510 mode=uninstall
511 ;;
512 *)
513 # If we have no mode, but dlfiles were specified, then do execute mode.
514 test -n "$execute_dlfiles" && mode=execute
515
516 # Just use the default operation mode.
517 if test -z "$mode"; then
518 if test -n "$nonopt"; then
519 $echo "$modename: warning: cannot infer operation mode from \`$nonopt'" 1>&2
520 else
521 $echo "$modename: warning: cannot infer operation mode without MODE-ARGS" 1>&2
522 fi
523 fi
524 ;;
525 esac
526 fi
527
528 # Only execute mode is allowed to have -dlopen flags.
529 if test -n "$execute_dlfiles" && test "$mode" != execute; then
530 $echo "$modename: unrecognized option \`-dlopen'" 1>&2
531 $echo "$help" 1>&2
532 exit 1
533 fi
534
535 # Change the help message to a mode-specific one.
536 generic_help="$help"
537 help="Try \`$modename --help --mode=$mode' for more information."
538
539 # These modes are in order of execution frequency so that they run quickly.
540 case "$mode" in
541 # libtool compile mode
542 compile)
543 modename="$modename: compile"
544 # Get the compilation command and the source file.
545 base_compile=
546 lastarg=
547 srcfile="$nonopt"
548 suppress_output=
549
550 user_target=no
551 for arg
552 do
553 # Accept any command-line options.
554 case "$arg" in
555 -o)
556 if test "$user_target" != "no"; then
557 $echo "$modename: you cannot specify \`-o' more than once" 1>&2
558 exit 1
559 fi
560 user_target=next
561 ;;
562
563 -static)
564 build_old_libs=yes
565 continue
566 ;;
567 esac
568
569 case "$user_target" in
570 next)
571 # The next one is the -o target name
572 user_target=yes
573 continue
574 ;;
575 yes)
576 # We got the output file
577 user_target=set
578 libobj="$arg"
579 continue
580 ;;
581 esac
582
583 # Accept the current argument as the source file.
584 lastarg="$srcfile"
585 srcfile="$arg"
586
587 # Aesthetically quote the previous argument.
588
589 # Backslashify any backslashes, double quotes, and dollar signs.
590 # These are the only characters that are still specially
591 # interpreted inside of double-quoted scrings.
592 lastarg=`$echo "X$lastarg" | $Xsed -e "$sed_quote_subst"`
593
594 # Double-quote args containing other shell metacharacters.
595 # Many Bourne shells cannot handle close brackets correctly in scan
596 # sets, so we specify it separately.
597 case "$lastarg" in
598 *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
599 lastarg="\"$lastarg\""
600 ;;
601 esac
602
603 # Add the previous argument to base_compile.
604 if test -z "$base_compile"; then
605 base_compile="$lastarg"
606 else
607 base_compile="$base_compile $lastarg"
608 fi
609 done
610
611 case "$user_target" in
612 set)
613 ;;
614 no)
615 # Get the name of the library object.
616 libobj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%'`
617 ;;
618 *)
619 $echo "$modename: you must specify a target with \`-o'" 1>&2
620 exit 1
621 ;;
622 esac
623
624 # Recognize several different file suffixes.
625 # If the user specifies -o file.o, it is replaced with file.lo
626 xform='[cCFSfmso]'
627 case "$libobj" in
628 *.ada) xform=ada ;;
629 *.adb) xform=adb ;;
630 *.ads) xform=ads ;;
631 *.asm) xform=asm ;;
632 *.c++) xform=c++ ;;
633 *.cc) xform=cc ;;
634 *.cpp) xform=cpp ;;
635 *.cxx) xform=cxx ;;
636 *.f90) xform=f90 ;;
637 *.for) xform=for ;;
638 esac
639
640 libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"`
641
642 case "$libobj" in
643 *.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;;
644 *)
645 $echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2
646 exit 1
647 ;;
648 esac
649
650 if test -z "$base_compile"; then
651 $echo "$modename: you must specify a compilation command" 1>&2
652 $echo "$help" 1>&2
653 exit 1
654 fi
655
656 # Delete any leftover library objects.
657 if test "$build_old_libs" = yes; then
658 removelist="$obj $libobj"
659 else
660 removelist="$libobj"
661 fi
662
663 $run $rm $removelist
664 trap "$run $rm $removelist; exit 1" 1 2 15
665
666 # Calculate the filename of the output object if compiler does
667 # not support -o with -c
668 if test "$compiler_c_o" = no; then
669 output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\..*$%%'`.${objext}
670 lockfile="$output_obj.lock"
671 removelist="$removelist $output_obj $lockfile"
672 trap "$run $rm $removelist; exit 1" 1 2 15
673 else
674 need_locks=no
675 lockfile=
676 fi
677
678 # Lock this critical section if it is needed
679 # We use this script file to make the link, it avoids creating a new file
680 if test "$need_locks" = yes; then
681 until ln "$0" "$lockfile" 2>/dev/null; do
682 $show "Waiting for $lockfile to be removed"
683 sleep 2
684 done
685 elif test "$need_locks" = warn; then
686 if test -f "$lockfile"; then
687 echo "\
688 *** ERROR, $lockfile exists and contains:
689 `cat $lockfile 2>/dev/null`
690
691 This indicates that another process is trying to use the same
692 temporary object file, and libtool could not work around it because
693 your compiler does not support \`-c' and \`-o' together. If you
694 repeat this compilation, it may succeed, by chance, but you had better
695 avoid parallel builds (make -j) in this platform, or get a better
696 compiler."
697
698 $run $rm $removelist
699 exit 1
700 fi
701 echo $srcfile > "$lockfile"
702 fi
703
704 if test -n "$fix_srcfile_path"; then
705 eval srcfile=\"$fix_srcfile_path\"
706 fi
707
708 # Only build a PIC object if we are building libtool libraries.
709 if test "$build_libtool_libs" = yes; then
710 # Without this assignment, base_compile gets emptied.
711 fbsd_hideous_sh_bug=$base_compile
712
713 if test "$pic_mode" != no; then
714 # All platforms use -DPIC, to notify preprocessed assembler code.
715 command="$base_compile $pic_flag -DPIC $srcfile"
716 else
717 # Don't build PIC code
718 command="$base_compile $srcfile"
719 fi
720 if test "$build_old_libs" = yes; then
721 lo_libobj="$libobj"
722 dir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'`
723 if test "X$dir" = "X$libobj"; then
724 dir="$objdir"
725 else
726 dir="$dir/$objdir"
727 fi
728 libobj="$dir/"`$echo "X$libobj" | $Xsed -e 's%^.*/%%'`
729
730 if test -d "$dir"; then
731 $show "$rm $libobj"
732 $run $rm $libobj
733 else
734 $show "$mkdir $dir"
735 $run $mkdir $dir
736 status=$?
737 if test $status -ne 0 && test ! -d $dir; then
738 exit $status
739 fi
740 fi
741 fi
742 if test "$compiler_o_lo" = yes; then
743 output_obj="$libobj"
744 command="$command -o $output_obj"
745 elif test "$compiler_c_o" = yes; then
746 output_obj="$obj"
747 command="$command -o $output_obj"
748 fi
749
750 $run $rm "$output_obj"
751 $show "$command"
752 if $run eval "$command"; then :
753 else
754 test -n "$output_obj" && $run $rm $removelist
755 exit 1
756 fi
757
758 if test "$need_locks" = warn &&
759 test x"`cat $lockfile 2>/dev/null`" != x"$srcfile"; then
760 echo "\
761 *** ERROR, $lockfile contains:
762 `cat $lockfile 2>/dev/null`
763
764 but it should contain:
765 $srcfile
766
767 This indicates that another process is trying to use the same
768 temporary object file, and libtool could not work around it because
769 your compiler does not support \`-c' and \`-o' together. If you
770 repeat this compilation, it may succeed, by chance, but you had better
771 avoid parallel builds (make -j) in this platform, or get a better
772 compiler."
773
774 $run $rm $removelist
775 exit 1
776 fi
777
778 # Just move the object if needed, then go on to compile the next one
779 if test x"$output_obj" != x"$libobj"; then
780 $show "$mv $output_obj $libobj"
781 if $run $mv $output_obj $libobj; then :
782 else
783 error=$?
784 $run $rm $removelist
785 exit $error
786 fi
787 fi
788
789 # If we have no pic_flag, then copy the object into place and finish.
790 if (test -z "$pic_flag" || test "$pic_mode" != default) &&
791 test "$build_old_libs" = yes; then
792 # Rename the .lo from within objdir to obj
793 if test -f $obj; then
794 $show $rm $obj
795 $run $rm $obj
796 fi
797
798 $show "$mv $libobj $obj"
799 if $run $mv $libobj $obj; then :
800 else
801 error=$?
802 $run $rm $removelist
803 exit $error
804 fi
805
806 xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'`
807 if test "X$xdir" = "X$obj"; then
808 xdir="."
809 else
810 xdir="$xdir"
811 fi
812 baseobj=`$echo "X$obj" | $Xsed -e "s%.*/%%"`
813 libobj=`$echo "X$baseobj" | $Xsed -e "$o2lo"`
814 # Now arrange that obj and lo_libobj become the same file
815 $show "(cd $xdir && $LN_S $baseobj $libobj)"
816 if $run eval '(cd $xdir && $LN_S $baseobj $libobj)'; then
817 exit 0
818 else
819 error=$?
820 $run $rm $removelist
821 exit $error
822 fi
823 fi
824
825 # Allow error messages only from the first compilation.
826 suppress_output=' >/dev/null 2>&1'
827 fi
828
829 # Only build a position-dependent object if we build old libraries.
830 if test "$build_old_libs" = yes; then
831 if test "$pic_mode" != yes; then
832 # Don't build PIC code
833 command="$base_compile $srcfile"
834 else
835 # All platforms use -DPIC, to notify preprocessed assembler code.
836 command="$base_compile $pic_flag -DPIC $srcfile"
837 fi
838 if test "$compiler_c_o" = yes; then
839 command="$command -o $obj"
840 output_obj="$obj"
841 fi
842
843 # Suppress compiler output if we already did a PIC compilation.
844 command="$command$suppress_output"
845 $run $rm "$output_obj"
846 $show "$command"
847 if $run eval "$command"; then :
848 else
849 $run $rm $removelist
850 exit 1
851 fi
852
853 if test "$need_locks" = warn &&
854 test x"`cat $lockfile 2>/dev/null`" != x"$srcfile"; then
855 echo "\
856 *** ERROR, $lockfile contains:
857 `cat $lockfile 2>/dev/null`
858
859 but it should contain:
860 $srcfile
861
862 This indicates that another process is trying to use the same
863 temporary object file, and libtool could not work around it because
864 your compiler does not support \`-c' and \`-o' together. If you
865 repeat this compilation, it may succeed, by chance, but you had better
866 avoid parallel builds (make -j) in this platform, or get a better
867 compiler."
868
869 $run $rm $removelist
870 exit 1
871 fi
872
873 # Just move the object if needed
874 if test x"$output_obj" != x"$obj"; then
875 $show "$mv $output_obj $obj"
876 if $run $mv $output_obj $obj; then :
877 else
878 error=$?
879 $run $rm $removelist
880 exit $error
881 fi
882 fi
883
884 # Create an invalid libtool object if no PIC, so that we do not
885 # accidentally link it into a program.
886 if test "$build_libtool_libs" != yes; then
887 $show "echo timestamp > $libobj"
888 $run eval "echo timestamp > \$libobj" || exit $?
889 else
890 # Move the .lo from within objdir
891 $show "$mv $libobj $lo_libobj"
892 if $run $mv $libobj $lo_libobj; then :
893 else
894 error=$?
895 $run $rm $removelist
896 exit $error
897 fi
898 fi
899 fi
900
901 # Unlock the critical section if it was locked
902 if test "$need_locks" != no; then
903 $rm "$lockfile"
904 fi
905
906 exit 0
907 ;;
908
909 # libtool link mode
910 link | relink)
911 modename="$modename: link"
912 relink=no
913 test "$mode" = "relink" && relink=yes
914 case "$host" in
915 *-*-cygwin* | *-*-mingw* | *-*-os2*)
916 # It is impossible to link a dll without this setting, and
917 # we shouldn't force the makefile maintainer to figure out
918 # which system we are compiling for in order to pass an extra
919 # flag for every libtool invokation.
920 # allow_undefined=no
921
922 # FIXME: Unfortunately, there are problems with the above when trying
923 # to make a dll which has undefined symbols, in which case not
924 # even a static library is built. For now, we need to specify
925 # -no-undefined on the libtool link line when we can be certain
926 # that all symbols are satisfied, otherwise we get a static library.
927 allow_undefined=yes
928 ;;
929 *)
930 allow_undefined=yes
931 ;;
932 esac
933 libtool_args="$nonopt"
934 compile_command="$nonopt"
935 finalize_command="$nonopt"
936
937 compile_rpath=
938 finalize_rpath=
939 compile_shlibpath=
940 finalize_shlibpath=
941 convenience=
942 old_convenience=
943 deplibs=
944 old_deplibs=
945 compiler_flags=
946 linker_flags=
947 dllsearchpath=
948 lib_search_path=`pwd`
949
950 avoid_version=no
951 dlfiles=
952 dlprefiles=
953 dlself=no
954 export_dynamic=no
955 export_symbols=
956 export_symbols_regex=
957 generated=
958 libobjs=
959 ltlibs=
960 module=no
961 no_install=no
962 objs=
963 prefer_static_libs=no
964 preload=no
965 prev=
966 prevarg=
967 release=
968 rpath=
969 xrpath=
970 perm_rpath=
971 temp_rpath=
972 thread_safe=no
973 vinfo=
974
975 # We need to know -static, to get the right output filenames.
976 for arg
977 do
978 case "$arg" in
979 -all-static | -static)
980 if test "X$arg" = "X-all-static"; then
981 if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then
982 $echo "$modename: warning: complete static linking is impossible in this configuration" 1>&2
983 fi
984 if test -n "$link_static_flag"; then
985 dlopen_self=$dlopen_self_static
986 fi
987 else
988 if test -z "$pic_flag" && test -n "$link_static_flag"; then
989 dlopen_self=$dlopen_self_static
990 fi
991 fi
992 build_libtool_libs=no
993 build_old_libs=yes
994 prefer_static_libs=yes
995 break
996 ;;
997 esac
998 done
999
1000 # See if our shared archives depend on static archives.
1001 test -n "$old_archive_from_new_cmds" && build_old_libs=yes
1002
1003 # Go through the arguments, transforming them on the way.
1004 while test $# -gt 0; do
1005 arg="$1"
1006 shift
1007 libtool_args="$libtool_args $arg"
1008
1009 # If the previous option needs an argument, assign it.
1010 if test -n "$prev"; then
1011 case "$prev" in
1012 output)
1013 compile_command="$compile_command @OUTPUT@"
1014 finalize_command="$finalize_command @OUTPUT@"
1015 ;;
1016 esac
1017
1018 case "$prev" in
1019 dlfiles|dlprefiles)
1020 if test "$preload" = no; then
1021 # Add the symbol object into the linking commands.
1022 compile_command="$compile_command @SYMFILE@"
1023 finalize_command="$finalize_command @SYMFILE@"
1024 preload=yes
1025 fi
1026 case "$arg" in
1027 *.la | *.lo) ;; # We handle these cases below.
1028 force)
1029 if test "$dlself" = no; then
1030 dlself=needless
1031 export_dynamic=yes
1032 fi
1033 prev=
1034 continue
1035 ;;
1036 self)
1037 if test "$prev" = dlprefiles; then
1038 dlself=yes
1039 elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then
1040 dlself=yes
1041 else
1042 dlself=needless
1043 export_dynamic=yes
1044 fi
1045 prev=
1046 continue
1047 ;;
1048 *)
1049 if test "$prev" = dlfiles; then
1050 dlfiles="$dlfiles $arg"
1051 else
1052 dlprefiles="$dlprefiles $arg"
1053 fi
1054 prev=
1055 ;;
1056 esac
1057 ;;
1058 expsyms)
1059 export_symbols="$arg"
1060 if test ! -f "$arg"; then
1061 $echo "$modename: symbol file \`$arg' does not exist"
1062 exit 1
1063 fi
1064 prev=
1065 continue
1066 ;;
1067 expsyms_regex)
1068 export_symbols_regex="$arg"
1069 prev=
1070 continue
1071 ;;
1072 release)
1073 release="-$arg"
1074 prev=
1075 continue
1076 ;;
1077 rpath | xrpath)
1078 # We need an absolute path.
1079 case "$arg" in
1080 [\\/]* | [A-Za-z]:[\\/]*) ;;
1081 *)
1082 $echo "$modename: only absolute run-paths are allowed" 1>&2
1083 exit 1
1084 ;;
1085 esac
1086 if test "$prev" = rpath; then
1087 case "$rpath " in
1088 *" $arg "*) ;;
1089 *) rpath="$rpath $arg" ;;
1090 esac
1091 else
1092 case "$xrpath " in
1093 *" $arg "*) ;;
1094 *) xrpath="$xrpath $arg" ;;
1095 esac
1096 fi
1097 prev=
1098 continue
1099 ;;
1100 xcompiler)
1101 arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
1102 case "$arg" in
1103 *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
1104 arg="\"$arg\""
1105 ;;
1106 esac
1107 compiler_flags="$compiler_flags $arg"
1108 prev=
1109 continue
1110 ;;
1111 xlinker)
1112 arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
1113 case "$arg" in
1114 *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
1115 arg="\"$arg\""
1116 ;;
1117 esac
1118 linker_flags="$linker_flags $arg"
1119 compiler_flags="$compiler_flags $wl$arg"
1120 prev=
1121 continue
1122 ;;
1123 *)
1124 eval "$prev=\"\$arg\""
1125 prev=
1126 continue
1127 ;;
1128 esac
1129 fi
1130
1131 prevarg="$arg"
1132
1133 case "$arg" in
1134 -all-static)
1135 if test -n "$link_static_flag"; then
1136 compile_command="$compile_command $link_static_flag"
1137 finalize_command="$finalize_command $link_static_flag"
1138 fi
1139 continue
1140 ;;
1141
1142 -allow-undefined)
1143 # FIXME: remove this flag sometime in the future.
1144 $echo "$modename: \`-allow-undefined' is deprecated because it is the default" 1>&2
1145 continue
1146 ;;
1147
1148 -avoid-version)
1149 avoid_version=yes
1150 continue
1151 ;;
1152
1153 -dlopen)
1154 prev=dlfiles
1155 continue
1156 ;;
1157
1158 -dlpreopen)
1159 prev=dlprefiles
1160 continue
1161 ;;
1162
1163 -export-dynamic)
1164 export_dynamic=yes
1165 continue
1166 ;;
1167
1168 -export-symbols | -export-symbols-regex)
1169 if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
1170 $echo "$modename: not more than one -exported-symbols argument allowed"
1171 exit 1
1172 fi
1173 if test "X$arg" = "X-export-symbols"; then
1174 prev=expsyms
1175 else
1176 prev=expsyms_regex
1177 fi
1178 continue
1179 ;;
1180
1181 -L*)
1182 dir=`$echo "X$arg" | $Xsed -e 's/^-L//'`
1183 # We need an absolute path.
1184 case "$dir" in
1185 [\\/]* | [A-Za-z]:[\\/]*) ;;
1186 *)
1187 absdir=`cd "$dir" && pwd`
1188 if test -z "$absdir"; then
1189 $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2
1190 exit 1
1191 fi
1192 dir="$absdir"
1193 ;;
1194 esac
1195 case "$deplibs " in
1196 *" -L$dir "*) ;;
1197 *)
1198 deplibs="$deplibs -L$dir"
1199 lib_search_path="$lib_search_path $dir"
1200 ;;
1201 esac
1202 case "$host" in
1203 *-*-cygwin* | *-*-mingw* | *-*-os2*)
1204 case ":$dllsearchpath:" in
1205 *":$dir:"*) ;;
1206 *) dllsearchpath="$dllsearchpath:$dir";;
1207 esac
1208 ;;
1209 esac
1210 continue
1211 ;;
1212
1213 -l*)
1214 if test "$arg" = "-lc"; then
1215 case "$host" in
1216 *-*-cygwin* | *-*-mingw* | *-*-os2* | *-*-beos*)
1217 # These systems don't actually have c library (as such)
1218 continue
1219 ;;
1220 esac
1221 elif test "$arg" = "-lm"; then
1222 case "$host" in
1223 *-*-cygwin* | *-*-beos*)
1224 # These systems don't actually have math library (as such)
1225 continue
1226 ;;
1227 esac
1228 fi
1229 deplibs="$deplibs $arg"
1230 continue
1231 ;;
1232
1233 -module)
1234 module=yes
1235 continue
1236 ;;
1237
1238 -no-fast-install)
1239 fast_install=no
1240 continue
1241 ;;
1242
1243 -no-install)
1244 case "$host" in
1245 *-*-cygwin* | *-*-mingw* | *-*-os2*)
1246 # The PATH hackery in wrapper scripts is required on Windows
1247 # in order for the loader to find any dlls it needs.
1248 $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2
1249 $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2
1250 fast_install=no
1251 ;;
1252 *)
1253 no_install=yes
1254 ;;
1255 esac
1256 continue
1257 ;;
1258
1259 -no-undefined)
1260 allow_undefined=no
1261 continue
1262 ;;
1263
1264 -o) prev=output ;;
1265
1266 -release)
1267 prev=release
1268 continue
1269 ;;
1270
1271 -rpath)
1272 prev=rpath
1273 continue
1274 ;;
1275
1276 -R)
1277 prev=xrpath
1278 continue
1279 ;;
1280
1281 -R*)
1282 dir=`$echo "X$arg" | $Xsed -e 's/^-R//'`
1283 # We need an absolute path.
1284 case "$dir" in
1285 [\\/]* | [A-Za-z]:[\\/]*) ;;
1286 *)
1287 $echo "$modename: only absolute run-paths are allowed" 1>&2
1288 exit 1
1289 ;;
1290 esac
1291 case "$xrpath " in
1292 *" $dir "*) ;;
1293 *) xrpath="$xrpath $dir" ;;
1294 esac
1295 continue
1296 ;;
1297
1298 -static)
1299 # If we have no pic_flag, then this is the same as -all-static.
1300 if test -z "$pic_flag" && test -n "$link_static_flag"; then
1301 compile_command="$compile_command $link_static_flag"
1302 finalize_command="$finalize_command $link_static_flag"
1303 fi
1304 continue
1305 ;;
1306
1307 -thread-safe)
1308 thread_safe=yes
1309 continue
1310 ;;
1311
1312 -version-info)
1313 prev=vinfo
1314 continue
1315 ;;
1316
1317 -Wc,*)
1318 arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
1319 case "$arg" in
1320 *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
1321 arg="\"$arg\""
1322 ;;
1323 esac
1324 flag=`$echo "X$arg" | $Xsed -e 's/^-Wc,//'`
1325 compiler_flags="$compiler_flags $flag"
1326 ;;
1327
1328 -Wl,*)
1329 arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
1330 case "$arg" in
1331 *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
1332 arg="\"$arg\""
1333 ;;
1334 esac
1335 flag=`$echo "X$arg" | $Xsed -e 's/^-Wl,//'`
1336 linker_flags="$linker_flags $flag"
1337 compiler_flags="$compiler_flags $wl$flag"
1338 ;;
1339
1340 -Xcompiler)
1341 prev=xcompiler
1342 continue
1343 ;;
1344
1345 -Xlinker)
1346 prev=xlinker
1347 continue
1348 ;;
1349
1350 # Some other compiler flag.
1351 -* | +*)
1352 # Unknown arguments in both finalize_command and compile_command need
1353 # to be aesthetically quoted because they are evaled later.
1354 arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
1355 case "$arg" in
1356 *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
1357 arg="\"$arg\""
1358 ;;
1359 esac
1360 ;;
1361
1362 *.o | *.obj)
1363 # A standard object.
1364 objs="$objs $arg"
1365 ;;
1366
1367 *.lo)
1368 # A library object.
1369 if test "$prev" = dlfiles; then
1370 dlfiles="$dlfiles $arg"
1371 if test "$build_libtool_libs" = yes && test "$dlopen" = yes; then
1372 prev=
1373 continue
1374 else
1375 # If libtool objects are unsupported, then we need to preload.
1376 prev=dlprefiles
1377 fi
1378 fi
1379
1380 if test "$prev" = dlprefiles; then
1381 # Preload the old-style object.
1382 dlprefiles="$dlprefiles "`$echo "X$arg" | $Xsed -e "$lo2o"`
1383 prev=
1384 fi
1385 libobjs="$libobjs $arg"
1386 ;;
1387
1388 *.a | *.lib)
1389 # An archive.
1390 deplibs="$deplibs $arg"
1391 old_deplibs="$old_deplibs $arg"
1392 continue
1393 ;;
1394
1395 *.la)
1396 # A libtool-controlled library.
1397
1398 dlname=
1399 libdir=
1400 library_names=
1401 old_library=
1402
1403 # Check to see that this really is a libtool archive.
1404 if (sed -e '2q' $arg | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
1405 else
1406 $echo "$modename: \`$arg' is not a valid libtool archive" 1>&2
1407 exit 1
1408 fi
1409
1410 # If the library was installed with an old release of libtool,
1411 # it will not redefine variable installed.
1412 installed=yes
1413
1414 # Read the .la file
1415 # If there is no directory component, then add one.
1416 case "$arg" in
1417 */* | *\\*) . $arg ;;
1418 *) . ./$arg ;;
1419 esac
1420
1421 # Get the name of the library we link against.
1422 linklib=
1423 for l in $old_library $library_names; do
1424 linklib="$l"
1425 done
1426
1427 if test -z "$linklib"; then
1428 $echo "$modename: cannot find name of link library for \`$arg'" 1>&2
1429 exit 1
1430 fi
1431
1432 if test "X$installed" = Xyes; then
1433 dir="$libdir"
1434 else
1435 dir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'`
1436 if test "X$dir" = "X$arg"; then
1437 dir="$objdir"
1438 else
1439 dir="$dir/$objdir"
1440 fi
1441 fi
1442
1443 # This library was specified with -dlopen.
1444 if test "$prev" = dlfiles; then
1445 dlfiles="$dlfiles $arg"
1446 if test -z "$dlname" || test "$dlopen" != yes || test "$build_libtool_libs" = no; then
1447 # If there is no dlname, no dlopen support or we're linking statically,
1448 # we need to preload.
1449 prev=dlprefiles
1450 else
1451 # We should not create a dependency on this library
1452 prev=
1453 continue
1454 fi
1455 fi
1456
1457 # The library was specified with -dlpreopen.
1458 if test "$prev" = dlprefiles; then
1459 # Prefer using a static library (so that no silly _DYNAMIC symbols
1460 # are required to link).
1461 if test -n "$old_library"; then
1462 dlprefiles="$dlprefiles $dir/$old_library"
1463 else
1464 dlprefiles="$dlprefiles $dir/$linklib"
1465 fi
1466 prev=
1467 fi
1468
1469 deplibs="$deplibs $arg"
1470 continue
1471 ;;
1472
1473 # Some other compiler argument.
1474 *)
1475 # Unknown arguments in both finalize_command and compile_command need
1476 # to be aesthetically quoted because they are evaled later.
1477 arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
1478 case "$arg" in
1479 *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
1480 arg="\"$arg\""
1481 ;;
1482 esac
1483 ;;
1484 esac
1485
1486 # Now actually substitute the argument into the commands.
1487 if test -n "$arg"; then
1488 compile_command="$compile_command $arg"
1489 finalize_command="$finalize_command $arg"
1490 fi
1491 done
1492
1493 if test -n "$prev"; then
1494 $echo "$modename: the \`$prevarg' option requires an argument" 1>&2
1495 $echo "$help" 1>&2
1496 exit 1
1497 fi
1498
1499 if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then
1500 eval arg=\"$export_dynamic_flag_spec\"
1501 compile_command="$compile_command $arg"
1502 finalize_command="$finalize_command $arg"
1503 fi
1504
1505 oldlibs=
1506 # calculate the name of the file, without its directory
1507 outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'`
1508 libobjs_save="$libobjs"
1509
1510 if test -n "$shlibpath_var"; then
1511 # get the directories listed in $shlibpath_var
1512 eval shlib_search_path=\`\$echo \"X \${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\`
1513 else
1514 shlib_search_path=
1515 fi
1516 eval sys_lib_search_path=\"$sys_lib_search_path_spec\"
1517 eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\"
1518 lib_search_path="$lib_search_path $sys_lib_search_path $shlib_search_path"
1519
1520 case "$output" in
1521 "")
1522 $echo "$modename: you must specify an output file" 1>&2
1523 $echo "$help" 1>&2
1524 exit 1
1525 ;;
1526 *.a | *.lib)
1527 linkmode=oldlib ;;
1528 *.lo | *.o | *.obj)
1529 linkmode=obj ;;
1530 *.la)
1531 linkmode=lib ;;
1532 *) # Anything else should be a program.
1533 linkmode=prog ;;
1534 esac
1535
1536 output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'`
1537 if test "X$output_objdir" = "X$output"; then
1538 output_objdir="$objdir"
1539 else
1540 output_objdir="$output_objdir/$objdir"
1541 fi
1542
1543 # Create the object directory.
1544 if test ! -d $output_objdir; then
1545 $show "$mkdir $output_objdir"
1546 $run $mkdir $output_objdir
1547 status=$?
1548 if test $status -ne 0 && test ! -d $output_objdir; then
1549 exit $status
1550 fi
1551 fi
1552 if test $linkmode != lib && test $linkmode != prog; then
1553 # Find libtool convenience libraries
1554 for deplib in $deplibs; do
1555 case "$deplib" in
1556 -l* | -L*)
1557 $echo "$modename: warning: \`-l' and \`-L' are ignored for archives/objects" 1>&2
1558 continue
1559 ;;
1560 esac
1561 if test -f "$deplib"; then :
1562 else
1563 $echo "$modename: cannot find the library \`$deplib'" 1>&2
1564 exit 1
1565 fi
1566 libdir=
1567 old_library=
1568
1569 # Check to see that this really is a libtool archive.
1570 if (sed -e '2q' $deplib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
1571 else
1572 $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
1573 exit 1
1574 fi
1575
1576 ladir=`$echo "X$deplib" | $Xsed -e 's%/[^/]*$%%'`
1577 test "X$ladir" = "X$deplib" && ladir="."
1578
1579 # Read the .la file
1580 case "$deplib" in
1581 */* | *\\*) . $deplib ;;
1582 *) . ./$deplib ;;
1583 esac
1584
1585 if test -z "$old_library"; then
1586 $echo "$modename: cannot find name of link library for \`$deplib'" 1>&2
1587 exit 1
1588 fi
1589
1590 if test -n "$libdir"; then
1591 $echo "$modename: \`$deplib' is not a convenience library" 1>&2
1592 exit 1
1593 fi
1594
1595 # It is a libtool convenience library, so add in its objects.
1596 convenience="$convenience $ladir/$objdir/$old_library"
1597 old_convenience="$old_convenience $ladir/$objdir/$old_library"
1598 done
1599 fi
1600
1601 case $linkmode in
1602 oldlib)
1603 if test -n "$deplibs"; then
1604 $echo "$modename: warning: \`-l' and \`-L' are ignored for archives" 1>&2
1605 fi
1606
1607 if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
1608 $echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2
1609 fi
1610
1611 if test -n "$rpath"; then
1612 $echo "$modename: warning: \`-rpath' is ignored for archives" 1>&2
1613 fi
1614
1615 if test -n "$xrpath"; then
1616 $echo "$modename: warning: \`-R' is ignored for archives" 1>&2
1617 fi
1618
1619 if test -n "$vinfo"; then
1620 $echo "$modename: warning: \`-version-info' is ignored for archives" 1>&2
1621 fi
1622
1623 if test -n "$release"; then
1624 $echo "$modename: warning: \`-release' is ignored for archives" 1>&2
1625 fi
1626
1627 if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
1628 $echo "$modename: warning: \`-export-symbols' is ignored for archives" 1>&2
1629 fi
1630
1631 # Now set the variables for building old libraries.
1632 build_libtool_libs=no
1633 oldlibs="$output"
1634 objs="$objs$old_deplibs"
1635 ;;
1636
1637 lib)
1638 # Make sure we only generate libraries of the form `libNAME.la'.
1639 case "$outputname" in
1640 lib*)
1641 name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
1642 eval libname=\"$libname_spec\"
1643 ;;
1644 *)
1645 if test "$module" = no; then
1646 $echo "$modename: libtool library \`$output' must begin with \`lib'" 1>&2
1647 $echo "$help" 1>&2
1648 exit 1
1649 fi
1650 if test "$need_lib_prefix" != no; then
1651 # Add the "lib" prefix for modules if required
1652 name=`$echo "X$outputname" | $Xsed -e 's/\.la$//'`
1653 eval libname=\"$libname_spec\"
1654 else
1655 libname=`$echo "X$outputname" | $Xsed -e 's/\.la$//'`
1656 fi
1657 ;;
1658 esac
1659
1660 if test -n "$objs$old_deplibs"; then
1661 $echo "$modename: cannot build libtool library \`$output' from non-libtool objects:$objs" 2>&1
1662 exit 1
1663 fi
1664
1665 if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
1666 $echo "$modename: warning: \`-dlopen' is ignored for libtool libraries" 1>&2
1667 fi
1668
1669 set dummy $rpath
1670 if test $# -gt 2; then
1671 $echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2
1672 fi
1673 install_libdir="$2"
1674
1675 oldlibs=
1676 if test -z "$rpath"; then
1677 if test "$build_libtool_libs" = yes; then
1678 # Building a libtool convenience library.
1679 libext=al
1680 oldlibs="$output_objdir/$libname.$libext $oldlibs"
1681 build_libtool_libs=convenience
1682 build_old_libs=yes
1683 fi
1684
1685 if test -n "$vinfo"; then
1686 $echo "$modename: warning: \`-version-info' is ignored for convenience libraries" 1>&2
1687 fi
1688
1689 if test -n "$release"; then
1690 $echo "$modename: warning: \`-release' is ignored for convenience libraries" 1>&2
1691 fi
1692 else
1693
1694 # Parse the version information argument.
1695 IFS="${IFS= }"; save_ifs="$IFS"; IFS=':'
1696 set dummy $vinfo 0 0 0
1697 IFS="$save_ifs"
1698
1699 if test -n "$8"; then
1700 $echo "$modename: too many parameters to \`-version-info'" 1>&2
1701 $echo "$help" 1>&2
1702 exit 1
1703 fi
1704
1705 current="$2"
1706 revision="$3"
1707 age="$4"
1708
1709 # Check that each of the things are valid numbers.
1710 case "$current" in
1711 0 | [1-9] | [1-9][0-9]*) ;;
1712 *)
1713 $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2
1714 $echo "$modename: \`$vinfo' is not valid version information" 1>&2
1715 exit 1
1716 ;;
1717 esac
1718
1719 case "$revision" in
1720 0 | [1-9] | [1-9][0-9]*) ;;
1721 *)
1722 $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2
1723 $echo "$modename: \`$vinfo' is not valid version information" 1>&2
1724 exit 1
1725 ;;
1726 esac
1727
1728 case "$age" in
1729 0 | [1-9] | [1-9][0-9]*) ;;
1730 *)
1731 $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2
1732 $echo "$modename: \`$vinfo' is not valid version information" 1>&2
1733 exit 1
1734 ;;
1735 esac
1736
1737 if test $age -gt $current; then
1738 $echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2
1739 $echo "$modename: \`$vinfo' is not valid version information" 1>&2
1740 exit 1
1741 fi
1742
1743 # Calculate the version variables.
1744 major=
1745 versuffix=
1746 verstring=
1747 case "$version_type" in
1748 none) ;;
1749
1750 irix)
1751 major=`expr $current - $age + 1`
1752 versuffix="$major.$revision"
1753 verstring="sgi$major.$revision"
1754
1755 # Add in all the interfaces that we are compatible with.
1756 loop=$revision
1757 while test $loop != 0; do
1758 iface=`expr $revision - $loop`
1759 loop=`expr $loop - 1`
1760 verstring="sgi$major.$iface:$verstring"
1761 done
1762 ;;
1763
1764 linux)
1765 major=.`expr $current - $age`
1766 versuffix="$major.$age.$revision"
1767 ;;
1768
1769 osf)
1770 major=`expr $current - $age`
1771 versuffix=".$current.$age.$revision"
1772 verstring="$current.$age.$revision"
1773
1774 # Add in all the interfaces that we are compatible with.
1775 loop=$age
1776 while test $loop != 0; do
1777 iface=`expr $current - $loop`
1778 loop=`expr $loop - 1`
1779 verstring="$verstring:${iface}.0"
1780 done
1781
1782 # Make executables depend on our current version.
1783 verstring="$verstring:${current}.0"
1784 ;;
1785
1786 sunos)
1787 major=".$current"
1788 versuffix=".$current.$revision"
1789 ;;
1790
1791 freebsd-aout)
1792 major=".$current"
1793 versuffix=".$current.$revision";
1794 ;;
1795
1796 freebsd-elf)
1797 major=".$current"
1798 versuffix=".$current";
1799 ;;
1800
1801 windows)
1802 # Like Linux, but with '-' rather than '.', since we only
1803 # want one extension on Windows 95.
1804 major=`expr $current - $age`
1805 versuffix="-$major-$age-$revision"
1806 ;;
1807
1808 *)
1809 $echo "$modename: unknown library version type \`$version_type'" 1>&2
1810 echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
1811 exit 1
1812 ;;
1813 esac
1814
1815 # Clear the version info if we defaulted, and they specified a release.
1816 if test -z "$vinfo" && test -n "$release"; then
1817 major=
1818 verstring="0.0"
1819 if test "$need_version" = no; then
1820 versuffix=
1821 else
1822 versuffix=".0.0"
1823 fi
1824 fi
1825
1826 # Remove version info from name if versioning should be avoided
1827 if test "$avoid_version" = yes && test "$need_version" = no; then
1828 major=
1829 versuffix=
1830 verstring=""
1831 fi
1832
1833 # Check to see if the archive will have undefined symbols.
1834 if test "$allow_undefined" = yes; then
1835 if test "$allow_undefined_flag" = unsupported; then
1836 $echo "$modename: warning: undefined symbols not allowed in $host shared libraries" 1>&2
1837 build_libtool_libs=no
1838 build_old_libs=yes
1839 fi
1840 else
1841 # Don't allow undefined symbols.
1842 allow_undefined_flag="$no_undefined_flag"
1843 fi
1844 fi
1845
1846 if test "$relink" = no; then
1847 # Remove our outputs.
1848 $show "${rm}r $output_objdir/$outputname $output_objdir/$libname.* $output_objdir/${libname}${release}.*"
1849 $run ${rm}r $output_objdir/$outputname $output_objdir/$libname.* $output_objdir/${libname}${release}.*
1850 fi
1851
1852 # Now set the variables for building old libraries.
1853 if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then
1854 oldlibs="$oldlibs $output_objdir/$libname.$libext"
1855
1856 # Transform .lo files to .o files.
1857 oldobjs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP`
1858 fi
1859
1860 # Save some variables
1861 name_save=$name
1862 libname_save=$libname
1863
1864 # Find libtool libraries and add their dependencies and directories
1865 save_deplibs="$deplibs"
1866 deplibs= # libraries to link (used in archive_cmds)
1867 newdependency_libs= # all dependency libraries
1868 uninst_path= # paths that contain uninstalled libtool libraries
1869 new_lib_search_path=
1870 for deplib in $save_deplibs; do
1871 lib=
1872 case "$deplib" in
1873 -L*)
1874 case "$deplibs " in
1875 *" $deplib "*) ;;
1876 *)
1877 deplibs="$deplibs $deplib"
1878 newdependency_libs="$newdependency_libs $deplib"
1879 new_lib_search_path="$new_lib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
1880 ;;
1881 esac
1882 continue
1883 ;;
1884 -l*)
1885 name=`$echo "X$deplib" | $Xsed -e 's/^-l//'`
1886 found=no
1887 for searchdir in $lib_search_path; do
1888 # Search the libtool library
1889 lib="$searchdir/lib${name}.la"
1890 if test -f "$lib"; then
1891 found=yes
1892 break
1893 fi
1894 done
1895 if test "$found" != yes; then
1896 deplibs="$deplibs $deplib"
1897 newdependency_libs="$newdependency_libs $deplib"
1898 continue
1899 fi
1900 ;;
1901 *)
1902 lib="$deplib"
1903 if test -f "$lib"; then :
1904 else
1905 $echo "$modename: cannot find the library \`$lib'" 1>&2
1906 exit 1
1907 fi
1908 ;;
1909 esac
1910 libdir=
1911 library_names=
1912 old_library=
1913
1914 # Check to see that this really is a libtool archive.
1915 if (sed -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
1916 else
1917 $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
1918 exit 1
1919 fi
1920
1921 ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'`
1922 test "X$ladir" = "X$lib" && ladir="."
1923 # We need an absolute path.
1924 case "$ladir" in
1925 [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;;
1926 *)
1927 abs_ladir=`cd "$ladir" && pwd`
1928 if test -z "$abs_ladir"; then
1929 $echo "$modename: warning: cannot determine absolute directory name of \`$ladir'" 1>&2
1930 $echo "$modename: passing it literally to the linker, although it might fail" 1>&2
1931 abs_ladir="$ladir"
1932 fi
1933 ;;
1934 esac
1935 laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
1936
1937 # If the library was installed with an old release of libtool,
1938 # it will not redefine variable installed.
1939 installed=yes
1940
1941 # Read the .la file
1942 case "$lib" in
1943 */* | *\\*) . $lib ;;
1944 *) . ./$lib ;;
1945 esac
1946
1947 # Get the name of the library we link against.
1948 linklib=
1949 for l in $old_library $library_names; do
1950 linklib="$l"
1951 done
1952
1953 if test -z "$linklib"; then
1954 $echo "$modename: cannot find name of link library for \`$lib'" 1>&2
1955 exit 1
1956 fi
1957
1958 if test -z "$libdir"; then
1959 # It is a libtool convenience library, so add in its objects.
1960 convenience="$convenience $ladir/$objdir/$old_library"
1961 old_convenience="$old_convenience $ladir/$objdir/$old_library"
1962 deplibs="$deplibs $ladir/$objdir/$old_library"
1963 newdependency_libs="$newdependency_libs $dependency_libs"
1964 continue
1965 fi
1966
1967 # Find the relevant object directory and library name.
1968 if test "X$installed" = Xyes; then
1969 if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then
1970 $echo "$modename: warning: library \`$lib' was moved." 1>&2
1971 dir="$ladir"
1972 absdir="$abs_ladir"
1973 libdir="$abs_ladir"
1974 else
1975 dir="$libdir"
1976 absdir="$libdir"
1977 fi
1978 else
1979 dir="$ladir/$objdir"
1980 absdir="$abs_ladir/$objdir"
1981 # Remove this search path later
1982 uninst_path="$uninst_path $abs_ladir"
1983 fi
1984 name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
1985 link_static=no # Whether this library is linked statically
1986
1987 if test -n "$library_names" &&
1988 { test "$prefer_static_libs" = no || test -z "$old_library"; }; then
1989 # This is a shared library
1990 if test "$hardcode_into_libs" = yes; then
1991 # Hardcode the library path.
1992 # Skip directories that are in the system default run-time
1993 # search path.
1994 case " $sys_lib_dlsearch_path " in
1995 *" $absdir "*) ;;
1996 *)
1997 case "$compile_rpath " in
1998 *" $absdir "*) ;;
1999 *) compile_rpath="$compile_rpath $absdir"
2000 esac
2001 ;;
2002 esac
2003 case " $sys_lib_dlsearch_path " in
2004 *" $libdir "*) ;;
2005 *)
2006 case "$finalize_rpath " in
2007 *" $libdir "*) ;;
2008 *) finalize_rpath="$finalize_rpath $libdir"
2009 esac
2010 ;;
2011 esac
2012 fi
2013
2014 if test -n "$old_archive_from_expsyms_cmds"; then
2015 # figure out the soname
2016 set dummy $library_names
2017 realname="$2"
2018 shift; shift
2019 libname=`eval \\$echo \"$libname_spec\"`
2020 if test -n "$soname_spec"; then
2021 eval soname=\"$soname_spec\"
2022 else
2023 soname="$realname"
2024 fi
2025
2026 # Make a new name for the extract_expsyms_cmds to use
2027 newlib="libimp-`echo $soname | sed 's/^lib//;s/\.dll$//'`.a"
2028
2029 # If the library has no export list, then create one now
2030 if test -f "$output_objdir/$soname-def"; then :
2031 else
2032 $show "extracting exported symbol list from \`$soname'"
2033 IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
2034 eval cmds=\"$extract_expsyms_cmds\"
2035 for cmd in $cmds; do
2036 IFS="$save_ifs"
2037 $show "$cmd"
2038 $run eval "$cmd" || exit $?
2039 done
2040 IFS="$save_ifs"
2041 fi
2042
2043 # Create $newlib
2044 if test -f "$output_objdir/$newlib"; then :; else
2045 $show "generating import library for \`$soname'"
2046 IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
2047 eval cmds=\"$old_archive_from_expsyms_cmds\"
2048 for cmd in $cmds; do
2049 IFS="$save_ifs"
2050 $show "$cmd"
2051 $run eval "$cmd" || exit $?
2052 done
2053 IFS="$save_ifs"
2054 fi
2055 # make sure the library variables are pointing to the new library
2056 dir=$output_objdir
2057 linklib=$newlib
2058 fi
2059
2060 add_dir=
2061 add_shlibpath=
2062 add_name=no
2063 if test "$relink" = no; then
2064 lib_linked=yes
2065 case "$hardcode_action" in
2066 immediate | unsupported)
2067 if test "$hardcode_direct" = no; then
2068 deplibs="$deplibs $dir/$linklib"
2069 elif test "$hardcode_minus_L" = no; then
2070 case "$host" in
2071 *-*-sunos*) add_shlibpath="$dir" ;;
2072 esac
2073 add_dir="-L$dir"
2074 add_name=yes
2075 elif test "$hardcode_shlibpath_var" = no; then
2076 add_shlibpath="$dir"
2077 add_name=yes
2078 else
2079 lib_linked=no
2080 fi
2081 ;;
2082 relink)
2083 if test "$hardcode_direct" = yes; then
2084 deplibs="$deplibs $dir/$linklib"
2085 elif test "$hardcode_minus_L" = yes; then
2086 add_dir="-L$dir"
2087 add_name=yes
2088 elif test "$hardcode_shlibpath_var" = yes; then
2089 add_shlibpath="$dir"
2090 add_name=yes
2091 else
2092 lib_linked=no
2093 fi
2094 ;;
2095 *) lib_linked=no ;;
2096 esac
2097
2098 if test "$lib_linked" != yes; then
2099 $echo "$modename: configuration error: unsupported hardcode properties"
2100 exit 1
2101 fi
2102 if test -n "$add_shlibpath"; then
2103 case ":$compile_shlibpath:" in
2104 *":$add_shlibpath:"*) ;;
2105 *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;;
2106 esac
2107 fi
2108 else
2109 # Install command for both is simple: just hardcode it.
2110 if test "$hardcode_direct" = yes; then
2111 deplibs="$deplibs $libdir/$linklib"
2112 elif test "$hardcode_minus_L" = yes; then
2113 add_dir="-L$libdir"
2114 add_name=yes
2115 elif test "$hardcode_shlibpath_var" = yes; then
2116 add_name=yes
2117 else
2118 # We cannot seem to hardcode it, guess we'll fake it.
2119 add_dir="-L$libdir"
2120 add_name=yes
2121 fi
2122 fi
2123 if test "$hardcode_direct" != yes && \
2124 test "$hardcode_minus_L" != yes && \
2125 test "$hardcode_shlibpath_var" = yes; then
2126 case ":$finalize_shlibpath:" in
2127 *":$libdir:"*) ;;
2128 *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
2129 esac
2130 fi
2131 if test -n "$add_dir"; then
2132 case "$deplibs " in
2133 *" $add_dir "*) ;;
2134 *) deplibs="$deplibs $add_dir" ;;
2135 esac
2136 fi
2137 test "$add_name" = yes && deplibs="$deplibs -l$name"
2138 elif test "$build_libtool_libs" = yes; then
2139 # Not a shared library
2140 if test "$deplibs_check_method" != pass_all; then
2141 # We're trying link a shared library against a static one
2142 # but the system doesn't support it.
2143 # Just print a warning and add the library to dependency_libs so
2144 # that the program can be linked against the static library.
2145 echo
2146 echo "*** Warning: This library needs some functionality provided by $libname."
2147 echo "*** I have the capability to make that library automatically link in when"
2148 echo "*** you link to this library. But I can only do this if you have a"
2149 echo "*** shared version of the library, which you do not appear to have."
2150 else
2151 convenience="$convenience $dir/$old_library"
2152 old_convenience="$old_convenience $dir/$old_library"
2153 deplibs="$deplibs $dir/$old_library"
2154 link_static=yes
2155 fi
2156 fi
2157
2158 if test -n "$dependency_libs"; then
2159 # Extract -R from dependency_libs
2160 temp_deplibs=
2161 for libdir in $dependency_libs; do
2162 case "$libdir" in
2163 -R*) temp_xrpath=`$echo "X$libdir" | $Xsed -e 's/^-R//'`
2164 case " $xrpath " in
2165 *" $temp_xrpath "*) ;;
2166 *) xrpath="$xrpath $temp_xrpath";;
2167 esac;;
2168 *) temp_deplibs="$temp_deplibs $libdir";;
2169 esac
2170 done
2171 dependency_libs="$temp_deplibs"
2172 fi
2173
2174 new_lib_search_path="$new_lib_search_path $absdir"
2175 # Link against this library
2176 test "$link_static" = no && newdependency_libs="$newdependency_libs $abs_ladir/$laname"
2177 # ... and its dependency_libs
2178 newdependency_libs="$newdependency_libs $dependency_libs"
2179
2180 if test $link_all_deplibs != no; then
2181 # Add the search paths of all dependency libraries
2182 for deplib in $dependency_libs; do
2183 case "$deplib" in
2184 -L*) path="$deplib" ;;
2185 *.la)
2186 if grep "^installed=no" $deplib > /dev/null; then
2187 dir=`$echo "X$deplib" | $Xsed -e 's%/[^/]*$%%'`
2188 test "X$dir" = "X$deplib" && dir="."
2189 # We need an absolute path.
2190 case "$dir" in
2191 [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;;
2192 *)
2193 absdir=`cd "$dir" && pwd`
2194 if test -z "$absdir"; then
2195 $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2
2196 absdir="$dir"
2197 fi
2198 ;;
2199 esac
2200 path="-L$absdir/$objdir"
2201 else
2202 eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
2203 if test -z "$libdir"; then
2204 $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
2205 exit 1
2206 fi
2207 path="-L$libdir"
2208 fi
2209 ;;
2210 *)
2211 continue
2212 ;;
2213 esac
2214 case "$deplibs " in
2215 *" $path "*) ;;
2216 *) deplibs="$path $deplibs" ;;
2217 esac
2218 done
2219 fi
2220 done
2221
2222 # Make sure lib_search_path contains only unique directories.
2223 lib_search_path=
2224 for dir in $new_lib_search_path; do
2225 case "$lib_search_path " in
2226 *" $dir "*) ;;
2227 *) lib_search_path="$lib_search_path $dir" ;;
2228 esac
2229 done
2230 lib_search_path="$lib_search_path $sys_lib_search_path"
2231
2232 # Make sure newdependency_libs contains only unique libraries and directories.
2233 dependency_libs=
2234 for deplib in $newdependency_libs; do
2235 case "$dependency_libs " in
2236 *" $deplib "*) ;;
2237 *) dependency_libs="$dependency_libs $deplib" ;;
2238 esac
2239 done
2240
2241 # Eliminate all temporary directories.
2242 for path in $uninst_path; do
2243 lib_search_path=`echo "$lib_search_path " | sed -e 's% $path % %g'`
2244 deplibs=`echo "$deplibs " | sed -e 's% -L$path % %g'`
2245 dependency_libs=`echo "$dependency_libs " | sed -e 's% -L$path % %g'`
2246 done
2247
2248 if test -n "$xrpath"; then
2249 # If the user specified any rpath flags, then add them.
2250 temp_xrpath=
2251 for libdir in $xrpath; do
2252 temp_xrpath="$temp_xrpath -R$libdir"
2253 case "$compile_rpath " in
2254 *" $libdir "*) ;;
2255 *) compile_rpath="$compile_rpath $libdir" ;;
2256 esac
2257 case "$finalize_rpath " in
2258 *" $libdir "*) ;;
2259 *) finalize_rpath="$finalize_rpath $libdir" ;;
2260 esac
2261 done
2262 dependency_libs="$temp_xrpath $dependency_libs"
2263 fi
2264
2265 # Restore the variables
2266 libname=$libname_save
2267 name=$name_save
2268
2269 if test "$build_libtool_libs" = yes; then
2270 if test -n "$rpath"; then
2271 case "$host" in
2272 *-*-cygwin* | *-*-mingw* | *-*-os2* | *-*-beos*)
2273 # these systems don't actually have a c library (as such)!
2274 ;;
2275 *)
2276 # Add libc to deplibs on all other systems.
2277 deplibs="$deplibs -lc"
2278 ;;
2279 esac
2280 fi
2281
2282 # Transform deplibs into only deplibs that can be linked in shared.
2283 name_save=$name
2284 libname_save=$libname
2285 release_save=$release
2286 versuffix_save=$versuffix
2287 major_save=$major
2288 # I'm not sure if I'm treating the release correctly. I think
2289 # release should show up in the -l (ie -lgmp5) so we don't want to
2290 # add it in twice. Is that correct?
2291 release=""
2292 versuffix=""
2293 major=""
2294 newdeplibs=
2295 droppeddeps=no
2296 case "$deplibs_check_method" in
2297 pass_all)
2298 # Don't check for shared/static. Everything works.
2299 # This might be a little naive. We might want to check
2300 # whether the library exists or not. But this is on
2301 # osf3 & osf4 and I'm not really sure... Just
2302 # implementing what was already the behaviour.
2303 newdeplibs=$deplibs
2304 ;;
2305 test_compile)
2306 # This code stresses the "libraries are programs" paradigm to its
2307 # limits. Maybe even breaks it. We compile a program, linking it
2308 # against the deplibs as a proxy for the library. Then we can check
2309 # whether they linked in statically or dynamically with ldd.
2310 $rm conftest.c
2311 cat > conftest.c <<EOF
2312 int main() { return 0; }
2313 EOF
2314 $rm conftest
2315 $CC -o conftest conftest.c $deplibs
2316 if test $? -eq 0 ; then
2317 ldd_output=`ldd conftest`
2318 for i in $deplibs; do
2319 name="`expr $i : '-l\(.*\)'`"
2320 # If $name is empty we are operating on a -L argument.
2321 if test "$name" != "" ; then
2322 libname=`eval \\$echo \"$libname_spec\"`
2323 deplib_matches=`eval \\$echo \"$library_names_spec\"`
2324 set dummy $deplib_matches
2325 deplib_match=$2
2326 if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
2327 newdeplibs="$newdeplibs $i"
2328 else
2329 droppeddeps=yes
2330 echo
2331 echo "*** Warning: This library needs some functionality provided by $i."
2332 echo "*** I have the capability to make that library automatically link in when"
2333 echo "*** you link to this library. But I can only do this if you have a"
2334 echo "*** shared version of the library, which you do not appear to have."
2335 fi
2336 else
2337 newdeplibs="$newdeplibs $i"
2338 fi
2339 done
2340 else
2341 # Error occured in the first compile. Let's try to salvage the situation:
2342 # Compile a seperate program for each library.
2343 for i in $deplibs; do
2344 name="`expr $i : '-l\(.*\)'`"
2345 # If $name is empty we are operating on a -L argument.
2346 if test "$name" != "" ; then
2347 $rm conftest
2348 $CC -o conftest conftest.c $i
2349 # Did it work?
2350 if test $? -eq 0 ; then
2351 ldd_output=`ldd conftest`
2352 libname=`eval \\$echo \"$libname_spec\"`
2353 deplib_matches=`eval \\$echo \"$library_names_spec\"`
2354 set dummy $deplib_matches
2355 deplib_match=$2
2356 if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
2357 newdeplibs="$newdeplibs $i"
2358 else
2359 droppeddeps=yes
2360 echo
2361 echo "*** Warning: This library needs some functionality provided by $i."
2362 echo "*** I have the capability to make that library automatically link in when"
2363 echo "*** you link to this library. But I can only do this if you have a"
2364 echo "*** shared version of the library, which you do not appear to have."
2365 fi
2366 else
2367 droppeddeps=yes
2368 echo
2369 echo "*** Warning! Library $i is needed by this library but I was not able to"
2370 echo "*** make it link in! You will probably need to install it or some"
2371 echo "*** library that it depends on before this library will be fully"
2372 echo "*** functional. Installing it before continuing would be even better."
2373 fi
2374 else
2375 newdeplibs="$newdeplibs $i"
2376 fi
2377 done
2378 fi
2379 ;;
2380 file_magic*)
2381 set dummy $deplibs_check_method
2382 file_magic_regex="`expr \"$deplibs_check_method\" : \"$2 \(.*\)\"`"
2383 for a_deplib in $deplibs; do
2384 name="`expr $a_deplib : '-l\(.*\)'`"
2385 # If $name is empty we are operating on a -L argument.
2386 if test "$name" != "" ; then
2387 libname=`eval \\$echo \"$libname_spec\"`
2388 for i in $lib_search_path; do
2389 potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
2390 for potent_lib in $potential_libs; do
2391 # Follow soft links.
2392 if ls -lLd "$potent_lib" 2>/dev/null \
2393 | grep " -> " >/dev/null; then
2394 continue
2395 fi
2396 # The statement above tries to avoid entering an
2397 # endless loop below, in case of cyclic links.
2398 # We might still enter an endless loop, since a link
2399 # loop can be closed while we follow links,
2400 # but so what?
2401 potlib="$potent_lib"
2402 while test -h "$potlib" 2>/dev/null; do
2403 potliblink=`ls -ld $potlib | sed 's/.* -> //'`
2404 case "$potliblink" in
2405 [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";;
2406 *) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";;
2407 esac
2408 done
2409 if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \
2410 | sed 10q \
2411 | egrep "$file_magic_regex" > /dev/null; then
2412 newdeplibs="$newdeplibs $a_deplib"
2413 a_deplib=""
2414 break 2
2415 fi
2416 done
2417 done
2418 if test -n "$a_deplib" ; then
2419 droppeddeps=yes
2420 echo
2421 echo "*** Warning: This library needs some functionality provided by $a_deplib."
2422 echo "*** I have the capability to make that library automatically link in when"
2423 echo "*** you link to this library. But I can only do this if you have a"
2424 echo "*** shared version of the library, which you do not appear to have."
2425 fi
2426 else
2427 # Add a -L argument.
2428 newdeplibs="$newdeplibs $a_deplib"
2429 fi
2430 done # Gone through all deplibs.
2431 ;;
2432 none | unknown | *)
2433 newdeplibs=""
2434 if $echo "X $deplibs" | $Xsed -e 's/ -lc$//' \
2435 -e 's/ -[LR][^ ]*//g' -e 's/[ ]//g' |
2436 grep . >/dev/null; then
2437 echo
2438 if test "X$deplibs_check_method" = "Xnone"; then
2439 echo "*** Warning: inter-library dependencies are not supported in this platform."
2440 else
2441 echo "*** Warning: inter-library dependencies are not known to be supported."
2442 fi
2443 echo "*** All declared inter-library dependencies are being dropped."
2444 droppeddeps=yes
2445 fi
2446 ;;
2447 esac
2448 versuffix=$versuffix_save
2449 major=$major_save
2450 release=$release_save
2451 libname=$libname_save
2452 name=$name_save
2453
2454 if test "$droppeddeps" = yes; then
2455 if test "$module" = yes; then
2456 echo
2457 echo "*** Warning: libtool could not satisfy all declared inter-library"
2458 echo "*** dependencies of module $libname. Therefore, libtool will create"
2459 echo "*** a static module, that should work as long as the dlopening"
2460 echo "*** application is linked with the -dlopen flag."
2461 if test -z "$global_symbol_pipe"; then
2462 echo
2463 echo "*** However, this would only work if libtool was able to extract symbol"
2464 echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
2465 echo "*** not find such a program. So, this module is probably useless."
2466 echo "*** \`nm' from GNU binutils and a full rebuild may help."
2467 fi
2468 if test "$build_old_libs" = no; then
2469 oldlibs="$output_objdir/$libname.$libext"
2470 build_libtool_libs=module
2471 build_old_libs=yes
2472 else
2473 build_libtool_libs=no
2474 fi
2475 else
2476 echo "*** The inter-library dependencies that have been dropped here will be"
2477 echo "*** automatically added whenever a program is linked with this library"
2478 echo "*** or is declared to -dlopen it."
2479 fi
2480 fi
2481 # Done checking deplibs!
2482 deplibs=$newdeplibs
2483 fi
2484
2485 # All the library-specific variables (install_libdir is set above).
2486 library_names=
2487 old_library=
2488 dlname=
2489
2490 # Test again, we may have decided not to build it any more
2491 if test "$build_libtool_libs" = yes; then
2492 if test "$hardcode_into_libs" = yes; then
2493 # Hardcode the library paths
2494 hardcode_libdirs=
2495 dep_rpath=
2496 rpath="$finalize_rpath"
2497 test "$relink" = no && rpath="$compile_rpath$rpath"
2498 for libdir in $rpath; do
2499 if test -n "$hardcode_libdir_flag_spec"; then
2500 if test -n "$hardcode_libdir_separator"; then
2501 if test -z "$hardcode_libdirs"; then
2502 hardcode_libdirs="$libdir"
2503 else
2504 # Just accumulate the unique libdirs.
2505 case "$hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator" in
2506 *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
2507 ;;
2508 *)
2509 hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
2510 ;;
2511 esac
2512 fi
2513 else
2514 eval flag=\"$hardcode_libdir_flag_spec\"
2515 dep_rpath="$dep_rpath $flag"
2516 fi
2517 elif test -n "$runpath_var"; then
2518 case "$perm_rpath " in
2519 *" $libdir "*) ;;
2520 *) perm_rpath="$perm_rpath $libdir" ;;
2521 esac
2522 fi
2523 done
2524 # Substitute the hardcoded libdirs into the rpath.
2525 if test -n "$hardcode_libdir_separator" &&
2526 test -n "$hardcode_libdirs"; then
2527 libdir="$hardcode_libdirs"
2528 eval dep_rpath=\"$hardcode_libdir_flag_spec\"
2529 fi
2530 if test -n "$runpath_var" && test -n "$perm_rpath"; then
2531 # We should set the runpath_var.
2532 rpath=
2533 for dir in $perm_rpath; do
2534 rpath="$rpath$dir:"
2535 done
2536 eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var"
2537 fi
2538 test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs"
2539 fi
2540
2541 shlibpath="$finalize_shlibpath"
2542 test "$relink" = no && shlibpath="$compile_shlibpath$shlibpath"
2543 if test -n "$shlibpath"; then
2544 eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var"
2545 fi
2546
2547 # Get the real and link names of the library.
2548 eval library_names=\"$library_names_spec\"
2549 set dummy $library_names
2550 realname="$2"
2551 shift; shift
2552
2553 if test -n "$soname_spec"; then
2554 eval soname=\"$soname_spec\"
2555 else
2556 soname="$realname"
2557 fi
2558
2559 lib="$output_objdir/$realname"
2560 for link
2561 do
2562 linknames="$linknames $link"
2563 done
2564
2565 # Ensure that we have .o objects for linkers which dislike .lo
2566 # (e.g. aix) incase we are running --disable-static
2567 for obj in $libobjs; do
2568 xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'`
2569 if test "X$xdir" = "X$obj"; then
2570 xdir="."
2571 else
2572 xdir="$xdir"
2573 fi
2574 baseobj=`$echo "X$obj" | $Xsed -e 's%^.*/%%'`
2575 oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"`
2576 if test ! -f $xdir/$oldobj; then
2577 $show "(cd $xdir && ${LN_S} $baseobj $oldobj)"
2578 $run eval '(cd $xdir && ${LN_S} $baseobj $oldobj)' || exit $?
2579 fi
2580 done
2581
2582 # Use standard objects if they are pic
2583 test -z "$pic_flag" && libobjs=`$echo "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
2584
2585 # Prepare the list of exported symbols
2586 if test -z "$export_symbols"; then
2587 if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then
2588 $show "generating symbol list for \`$libname.la'"
2589 export_symbols="$output_objdir/$libname.exp"
2590 $run $rm $export_symbols
2591 eval cmds=\"$export_symbols_cmds\"
2592 IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
2593 for cmd in $cmds; do
2594 IFS="$save_ifs"
2595 $show "$cmd"
2596 $run eval "$cmd" || exit $?
2597 done
2598 IFS="$save_ifs"
2599 if test -n "$export_symbols_regex"; then
2600 $show "egrep -e \"$export_symbols_regex\" \"$export_symbols\" > \"${export_symbols}T\""
2601 $run eval 'egrep -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'
2602 $show "$mv \"${export_symbols}T\" \"$export_symbols\""
2603 $run eval '$mv "${export_symbols}T" "$export_symbols"'
2604 fi
2605 fi
2606 fi
2607
2608 if test -n "$export_symbols" && test -n "$include_expsyms"; then
2609 $run eval '$echo "X$include_expsyms" | $SP2NL >> "$export_symbols"'
2610 fi
2611
2612 if test -n "$convenience"; then
2613 if test -n "$whole_archive_flag_spec"; then
2614 eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
2615 else
2616 gentop="$output_objdir/${outputname}x"
2617 $show "${rm}r $gentop"
2618 $run ${rm}r "$gentop"
2619 $show "mkdir $gentop"
2620 $run mkdir "$gentop"
2621 status=$?
2622 if test $status -ne 0 && test ! -d "$gentop"; then
2623 exit $status
2624 fi
2625 generated="$generated $gentop"
2626
2627 for xlib in $convenience; do
2628 # Extract the objects.
2629 case "$xlib" in
2630 [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
2631 *) xabs=`pwd`"/$xlib" ;;
2632 esac
2633 xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'`
2634 xdir="$gentop/$xlib"
2635
2636 $show "${rm}r $xdir"
2637 $run ${rm}r "$xdir"
2638 $show "mkdir $xdir"
2639 $run mkdir "$xdir"
2640 status=$?
2641 if test $status -ne 0 && test ! -d "$xdir"; then
2642 exit $status
2643 fi
2644 $show "(cd $xdir && $AR x $xabs)"
2645 $run eval "(cd \$xdir && $AR x \$xabs)" || exit $?
2646
2647 libobjs="$libobjs "`find $xdir -name \*.o -print -o -name \*.lo -print | $NL2SP`
2648 done
2649 fi
2650 fi
2651
2652 if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then
2653 eval flag=\"$thread_safe_flag_spec\"
2654 linker_flags="$linker_flags $flag"
2655 fi
2656
2657 # Make a backup of the uninstalled library when relinking
2658 if test "$relink" = yes && test "$hardcode_into_libs" = yes ; then
2659 $run eval '(cd $output_objdir && $rm ${realname}U && $mv $realname ${realname}U)' || exit $?
2660 fi
2661
2662 # Do each of the archive commands.
2663 if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
2664 eval cmds=\"$archive_expsym_cmds\"
2665 else
2666 eval cmds=\"$archive_cmds\"
2667 fi
2668 IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
2669 for cmd in $cmds; do
2670 IFS="$save_ifs"
2671 $show "$cmd"
2672 $run eval "$cmd" || exit $?
2673 done
2674 IFS="$save_ifs"
2675
2676 # Restore the uninstalled library and exit
2677 if test "$relink" = yes && test "$hardcode_into_libs" = yes; then
2678 $run eval '(cd $output_objdir && $rm ${realname}T && $mv $realname ${realname}T && $mv "$realname"U $realname)' || exit $?
2679 exit 0
2680 fi
2681
2682 # Create links to the real library.
2683 for linkname in $linknames; do
2684 if test "$realname" != "$linkname"; then
2685 $show "(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)"
2686 $run eval '(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)' || exit $?
2687 fi
2688 done
2689
2690 # If -module or -export-dynamic was specified, set the dlname.
2691 if test "$module" = yes || test "$export_dynamic" = yes; then
2692 # On all known operating systems, these are identical.
2693 dlname="$soname"
2694 fi
2695 fi
2696 ;;
2697
2698 obj)
2699 if test -n "$deplibs"; then
2700 $echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2
2701 fi
2702
2703 if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
2704 $echo "$modename: warning: \`-dlopen' is ignored for objects" 1>&2
2705 fi
2706
2707 if test -n "$rpath"; then
2708 $echo "$modename: warning: \`-rpath' is ignored for objects" 1>&2
2709 fi
2710
2711 if test -n "$xrpath"; then
2712 $echo "$modename: warning: \`-R' is ignored for objects" 1>&2
2713 fi
2714
2715 if test -n "$vinfo"; then
2716 $echo "$modename: warning: \`-version-info' is ignored for objects" 1>&2
2717 fi
2718
2719 if test -n "$release"; then
2720 $echo "$modename: warning: \`-release' is ignored for objects" 1>&2
2721 fi
2722
2723 case "$output" in
2724 *.lo)
2725 if test -n "$objs$old_deplibs"; then
2726 $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2
2727 exit 1
2728 fi
2729 libobj="$output"
2730 obj=`$echo "X$output" | $Xsed -e "$lo2o"`
2731 ;;
2732 *)
2733 libobj=
2734 obj="$output"
2735 ;;
2736 esac
2737
2738 # Delete the old objects.
2739 $run $rm $obj $libobj
2740
2741 # Objects from convenience libraries. This assumes
2742 # single-version convenience libraries. Whenever we create
2743 # different ones for PIC/non-PIC, this we'll have to duplicate
2744 # the extraction.
2745 reload_conv_objs=
2746 gentop=
2747 # reload_cmds runs $LD directly, so let us get rid of
2748 # -Wl from whole_archive_flag_spec
2749 wl=
2750
2751 if test -n "$convenience"; then
2752 if test -n "$whole_archive_flag_spec"; then
2753 eval reload_conv_objs=\"\$reload_objs $whole_archive_flag_spec\"
2754 else
2755 gentop="$output_objdir/${obj}x"
2756 $show "${rm}r $gentop"
2757 $run ${rm}r "$gentop"
2758 $show "mkdir $gentop"
2759 $run mkdir "$gentop"
2760 status=$?
2761 if test $status -ne 0 && test ! -d "$gentop"; then
2762 exit $status
2763 fi
2764 generated="$generated $gentop"
2765
2766 for xlib in $convenience; do
2767 # Extract the objects.
2768 case "$xlib" in
2769 [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
2770 *) xabs=`pwd`"/$xlib" ;;
2771 esac
2772 xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'`
2773 xdir="$gentop/$xlib"
2774
2775 $show "${rm}r $xdir"
2776 $run ${rm}r "$xdir"
2777 $show "mkdir $xdir"
2778 $run mkdir "$xdir"
2779 status=$?
2780 if test $status -ne 0 && test ! -d "$xdir"; then
2781 exit $status
2782 fi
2783 $show "(cd $xdir && $AR x $xabs)"
2784 $run eval "(cd \$xdir && $AR x \$xabs)" || exit $?
2785
2786 reload_conv_objs="$reload_objs "`find $xdir -name \*.o -print -o -name \*.lo -print | $NL2SP`
2787 done
2788 fi
2789 fi
2790
2791 # Create the old-style object.
2792 reload_objs="$objs$old_deplibs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs"
2793
2794 output="$obj"
2795 eval cmds=\"$reload_cmds\"
2796 IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
2797 for cmd in $cmds; do
2798 IFS="$save_ifs"
2799 $show "$cmd"
2800 $run eval "$cmd" || exit $?
2801 done
2802 IFS="$save_ifs"
2803
2804 # Exit if we aren't doing a library object file.
2805 if test -z "$libobj"; then
2806 if test -n "$gentop"; then
2807 $show "${rm}r $gentop"
2808 $run ${rm}r $gentop
2809 fi
2810
2811 exit 0
2812 fi
2813
2814 if test "$build_libtool_libs" != yes; then
2815 if test -n "$gentop"; then
2816 $show "${rm}r $gentop"
2817 $run ${rm}r $gentop
2818 fi
2819
2820 # Create an invalid libtool object if no PIC, so that we don't
2821 # accidentally link it into a program.
2822 $show "echo timestamp > $libobj"
2823 $run eval "echo timestamp > $libobj" || exit $?
2824 exit 0
2825 fi
2826
2827 if test -n "$pic_flag" || test "$pic_mode" != default; then
2828 # Only do commands if we really have different PIC objects.
2829 reload_objs="$libobjs $reload_conv_objs"
2830 output="$libobj"
2831 eval cmds=\"$reload_cmds\"
2832 IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
2833 for cmd in $cmds; do
2834 IFS="$save_ifs"
2835 $show "$cmd"
2836 $run eval "$cmd" || exit $?
2837 done
2838 IFS="$save_ifs"
2839 else
2840 # Just create a symlink.
2841 $show $rm $libobj
2842 $run $rm $libobj
2843 xdir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'`
2844 if test "X$xdir" = "X$libobj"; then
2845 xdir="."
2846 else
2847 xdir="$xdir"
2848 fi
2849 baseobj=`$echo "X$libobj" | $Xsed -e 's%^.*/%%'`
2850 oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"`
2851 $show "(cd $xdir && $LN_S $oldobj $baseobj)"
2852 $run eval '(cd $xdir && $LN_S $oldobj $baseobj)' || exit $?
2853 fi
2854
2855 if test -n "$gentop"; then
2856 $show "${rm}r $gentop"
2857 $run ${rm}r $gentop
2858 fi
2859
2860 exit 0
2861 ;;
2862
2863 prog)
2864 if test -n "$vinfo"; then
2865 $echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2
2866 fi
2867
2868 if test -n "$release"; then
2869 $echo "$modename: warning: \`-release' is ignored for programs" 1>&2
2870 fi
2871
2872 if test "$preload" = yes; then
2873 if test "$dlopen" = unknown && test "$dlopen_self" = unknown &&
2874 test "$dlopen_self_static" = unknown; then
2875 $echo "$modename: warning: \`AC_LIBTOOL_DLOPEN' not used. Assuming no dlopen support."
2876 fi
2877 fi
2878
2879 # Find libtool libraries and add their dependencies
2880 save_deplibs="$deplibs"
2881 deplibs=
2882 newdependency_libs=
2883 new_lib_search_path=
2884 for deplib in $save_deplibs; do
2885 lib=
2886 case "$deplib" in
2887 *.a | *.lib)
2888 deplibs="$deplibs $deplib"
2889 continue
2890 ;;
2891 -L*)
2892 deplibs="$deplibs $deplib"
2893 new_lib_search_path="$new_lib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
2894 continue
2895 ;;
2896 -l*)
2897 name=`$echo "X$deplib" | $Xsed -e 's/^-l//'`
2898 found=no
2899 for searchdir in $lib_search_path; do
2900 # Search the libtool library
2901 lib="$searchdir/lib${name}.la"
2902 if test -f "$lib"; then
2903 found=yes
2904 break
2905 fi
2906 done
2907 if test "$found" != yes; then
2908 deplibs="$deplibs $deplib"
2909 continue
2910 fi
2911 ;;
2912 *)
2913 lib="$deplib"
2914 if test -f "$lib"; then :
2915 else
2916 $echo "$modename: cannot find the library \`$lib'" 1>&2
2917 exit 1
2918 fi
2919 ;;
2920 esac
2921 libdir=
2922 library_names=
2923 old_library=
2924
2925 # Check to see that this really is a libtool archive.
2926 if (sed -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
2927 else
2928 $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
2929 exit 1
2930 fi
2931
2932 # If the library was installed with an old release of libtool,
2933 # it will not redefine variable installed.
2934 installed=yes
2935
2936 # Read the .la file
2937 case "$lib" in
2938 */* | *\\*) . $lib ;;
2939 *) . ./$lib ;;
2940 esac
2941
2942 # Get the name of the library we link against.
2943 linklib=
2944 for l in $old_library $library_names; do
2945 linklib="$l"
2946 done
2947
2948 if test -z "$linklib"; then
2949 $echo "$modename: cannot find name of link library for \`$lib'" 1>&2
2950 exit 1
2951 fi
2952
2953 new_lib_search_path="$new_lib_search_path `$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'`"
2954 deplibs="$deplibs $lib"
2955
2956 for deplib in $dependency_libs; do
2957 case "$deplib" in
2958 -L*)
2959 new_lib_search_path="$new_lib_search_path `$echo "X$deplib" | $Xsed -e 's/^-L//'`"
2960 ;;
2961 esac
2962
2963 if test "$link_all_deplibs" != no || \
2964 test "$fast_install" != no || \
2965 test "$build_libtool_libs" = no || \
2966 test -z "$library_names"; then
2967 # Need to link against all dependency_libs
2968 deplibs="$deplibs $deplib"
2969 else
2970 # Need to hardcode shared library paths
2971 # or/and link against static libraries
2972 newdependency_libs="$newdependency_libs $deplib"
2973 fi
2974 done
2975 done
2976
2977 # Eliminate all dependency_libs that are already contained in deplibs
2978 dependency_libs=
2979 for deplib in $newdependency_libs; do
2980 case "$deplibs " in
2981 *" $deplib "*) ;;
2982 *) dependency_libs="$dependency_libs $deplib" ;;
2983 esac
2984 done
2985
2986 # Make sure lib_search_path contains only unique directories.
2987 lib_search_path=
2988 for dir in $new_lib_search_path; do
2989 case "$lib_search_path " in
2990 *" $dir "*) ;;
2991 *) lib_search_path="$lib_search_path $dir" ;;
2992 esac
2993 done
2994 lib_search_path="$lib_search_path $sys_lib_search_path"
2995
2996 # Find libtool libraries and add their directories
2997 alldeplibs=no
2998 link_against_libtool_libs=
2999
3000 for deplib in $deplibs @DEPLIBS@ $dependency_libs; do
3001 lib=
3002 case "$deplib" in
3003 -L* | *.a | *.lib)
3004 compile_command="$compile_command $deplib"
3005 finalize_command="$finalize_command $deplib"
3006 continue
3007 ;;
3008 -R*)
3009 dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'`
3010 # Make sure the xrpath contains only unique directories.
3011 case "$xrpath " in
3012 *" $dir "*) ;;
3013 *) xrpath="$xrpath $dir" ;;
3014 esac
3015 continue
3016 ;;
3017 @DEPLIBS@)
3018 alldeplibs=yes
3019 continue
3020 ;;
3021 -l*)
3022 name=`$echo "X$deplib" | $Xsed -e 's/^-l//'`
3023 found=no
3024 for searchdir in $lib_search_path; do
3025 # Search the libtool library
3026 lib="$searchdir/lib${name}.la"
3027 if test -f "$lib"; then
3028 found=yes
3029 break
3030 fi
3031 done
3032 if test "$found" != yes; then
3033 compile_command="$compile_command $deplib"
3034 finalize_command="$finalize_command $deplib"
3035 continue
3036 fi
3037 ;;
3038 *)
3039 lib="$deplib"
3040 if test -f "$lib"; then :
3041 else
3042 $echo "$modename: cannot find the library \`$lib'" 1>&2
3043 exit 1
3044 fi
3045 ;;
3046 esac
3047 libdir=
3048 library_names=
3049 old_library=
3050
3051 # Check to see that this really is a libtool archive.
3052 if (sed -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
3053 else
3054 $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
3055 exit 1
3056 fi
3057
3058 ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'`
3059 test "X$ladir" = "X$lib" && ladir="."
3060 # We need an absolute path.
3061 case "$ladir" in
3062 [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;;
3063 *)
3064 abs_ladir=`cd "$ladir" && pwd`
3065 if test -z "$abs_ladir"; then
3066 $echo "$modename: warning: cannot determine absolute directory name of \`$abs_ladir'" 1>&2
3067 $echo "$modename: passing it literally to the linker, although it might fail" 1>&2
3068 abs_ladir="$ladir"
3069 fi
3070 ;;
3071 esac
3072 laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
3073
3074 # If the library was installed with an old release of libtool,
3075 # it will not redefine variable installed.
3076 installed=yes
3077
3078 # Read the .la file
3079 case "$lib" in
3080 */* | *\\*) . $lib ;;
3081 *) . ./$lib ;;
3082 esac
3083
3084 # Get the name of the library we link against.
3085 linklib=
3086 for l in $old_library $library_names; do
3087 linklib="$l"
3088 done
3089
3090 if test -z "$linklib"; then
3091 $echo "$modename: cannot find name of link library for \`$lib'" 1>&2
3092 exit 1
3093 fi
3094
3095 # Find the relevant object directory and library name.
3096 if test "X$installed" = Xyes; then
3097 if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then
3098 $echo "$modename: warning: library \`$lib' was moved." 1>&2
3099 dir="$ladir"
3100 absdir="$abs_ladir"
3101 libdir="$abs_ladir"
3102 else
3103 dir="$libdir"
3104 absdir="$libdir"
3105 fi
3106 else
3107 dir="$ladir/$objdir"
3108 absdir="$abs_ladir/$objdir"
3109 fi
3110 name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
3111
3112 hardcode=yes
3113 test "$hardcode_into_libs" = yes && test "$alldeplibs" = yes && hardcode=no
3114 if test "$hardcode" = yes && test -n "$library_names" &&
3115 { test "$prefer_static_libs" = no || test -z "$old_library"; }; then
3116 # We need to hardcode the library path
3117 if test -n "$shlibpath_var"; then
3118 # Make sure the rpath contains only unique directories.
3119 case "$temp_rpath " in
3120 *" $dir "*) ;;
3121 *" $absdir "*) ;;
3122 *) temp_rpath="$temp_rpath $dir" ;;
3123 esac
3124 fi
3125
3126 # Hardcode the library path.
3127 # Skip directories that are in the system default run-time
3128 # search path.
3129 case " $sys_lib_dlsearch_path " in
3130 *" $absdir "*) ;;
3131 *)
3132 case "$compile_rpath " in
3133 *" $absdir "*) ;;
3134 *) compile_rpath="$compile_rpath $absdir"
3135 esac
3136 ;;
3137 esac
3138
3139 case " $sys_lib_dlsearch_path " in
3140 *" $libdir "*) ;;
3141 *)
3142 case "$finalize_rpath " in
3143 *" $libdir "*) ;;
3144 *) finalize_rpath="$finalize_rpath $libdir"
3145 esac
3146 ;;
3147 esac
3148 fi
3149
3150 if test "$alldeplibs" = yes &&
3151 { test "$deplibs_check_method" = pass_all ||
3152 { test "$build_libtool_libs" = yes &&
3153 test -n "$library_names"; }; }; then
3154 # Do we only need to link against static libraries?
3155 continue
3156 fi
3157
3158 if test -z "$libdir"; then
3159 # It is a libtool convenience library, so add in its objects.
3160 convenience="$convenience $dir/$old_library"
3161 old_convenience="$old_convenience $dir/$old_library"
3162 compile_command="$compile_command $dir/$old_library"
3163 finalize_command="$finalize_command $dir/$old_library"
3164 continue
3165 fi
3166
3167 if test -n "$library_names" &&
3168 { test "$prefer_static_libs" = no || test -z "$old_library"; }; then
3169 link_against_libtool_libs="$link_against_libtool_libs $lib"
3170
3171 if test -n "$old_archive_from_expsyms_cmds"; then
3172 # figure out the soname
3173 set dummy $library_names
3174 realname="$2"
3175 shift; shift
3176 libname=`eval \\$echo \"$libname_spec\"`
3177 if test -n "$soname_spec"; then
3178 eval soname=\"$soname_spec\"
3179 else
3180 soname="$realname"
3181 fi
3182
3183 # Make a new name for the extract_expsyms_cmds to use
3184 newlib="libimp-`echo $soname | sed 's/^lib//;s/\.dll$//'`.a"
3185
3186 # If the library has no export list, then create one now
3187 if test -f "$output_objdir/$soname-def"; then :
3188 else
3189 $show "extracting exported symbol list from \`$soname'"
3190 IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
3191 eval cmds=\"$extract_expsyms_cmds\"
3192 for cmd in $cmds; do
3193 IFS="$save_ifs"
3194 $show "$cmd"
3195 $run eval "$cmd" || exit $?
3196 done
3197 IFS="$save_ifs"
3198 fi
3199
3200 # Create $newlib
3201 if test -f "$output_objdir/$newlib"; then :; else
3202 $show "generating import library for \`$soname'"
3203 IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
3204 eval cmds=\"$old_archive_from_expsyms_cmds\"
3205 for cmd in $cmds; do
3206 IFS="$save_ifs"
3207 $show "$cmd"
3208 $run eval "$cmd" || exit $?
3209 done
3210 IFS="$save_ifs"
3211 fi
3212 # make sure the library variables are pointing to the new library
3213 dir=$output_objdir
3214 linklib=$newlib
3215 fi
3216
3217 lib_linked=yes
3218 add_dir=
3219 add_shlibpath=
3220 add_name=no
3221 case "$hardcode_action" in
3222 immediate | unsupported)
3223 if test "$hardcode_direct" = no; then
3224 compile_command="$compile_command $dir/$linklib"
3225 elif test "$hardcode_minus_L" = no; then
3226 case "$host" in
3227 *-*-sunos*) add_shlibpath="$dir" ;;
3228 esac
3229 add_dir="-L$dir"
3230 add_name=yes
3231 elif test "$hardcode_shlibpath_var" = no; then
3232 add_shlibpath="$dir"
3233 add_name=yes
3234 else
3235 lib_linked=no
3236 fi
3237 ;;
3238
3239 relink)
3240 if test "$hardcode_direct" = yes; then
3241 compile_command="$compile_command $absdir/$linklib"
3242 elif test "$hardcode_minus_L" = yes; then
3243 add_dir="-L$absdir"
3244 add_name=yes
3245 elif test "$hardcode_shlibpath_var" = yes; then
3246 add_shlibpath="$absdir"
3247 add_name=yes
3248 else
3249 lib_linked=no
3250 fi
3251 ;;
3252
3253 *) lib_linked=no ;;
3254 esac
3255
3256 if test "$lib_linked" != yes; then
3257 $echo "$modename: configuration error: unsupported hardcode properties"
3258 exit 1
3259 fi
3260 if test -n "$add_dir"; then
3261 case "$compile_command " in
3262 *" $add_dir "*) ;;
3263 *) compile_command="$compile_command $add_dir" ;;
3264 esac
3265 fi
3266 if test -n "$add_shlibpath"; then
3267 case ":$compile_shlibpath:" in
3268 *":$add_shlibpath:"*) ;;
3269 *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;;
3270 esac
3271 fi
3272 test "$add_name" = yes && compile_command="$compile_command -l$name"
3273
3274 add_dir=
3275 add_name=no
3276 # Finalize command for both is simple: just hardcode it.
3277 if test "$hardcode_direct" = yes; then
3278 finalize_command="$finalize_command $libdir/$linklib"
3279 elif test "$hardcode_minus_L" = yes; then
3280 add_dir="-L$libdir"
3281 add_name=yes
3282 elif test "$hardcode_shlibpath_var" = yes; then
3283 case ":$finalize_shlibpath:" in
3284 *":$libdir:"*) ;;
3285 *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
3286 esac
3287 add_name=yes
3288 else
3289 # We cannot seem to hardcode it, guess we'll fake it.
3290 add_dir="-L$libdir"
3291 add_name=yes
3292 fi
3293 if test -n "$add_dir"; then
3294 case "$finalize_command " in
3295 *" $add_dir "*) ;;
3296 *) finalize_command="$finalize_command $add_dir" ;;
3297 esac
3298 fi
3299 test "$add_name" = yes && finalize_command="$finalize_command -l$name"
3300 else
3301 # Here we assume that one of hardcode_direct or hardcode_minus_L
3302 # is not unsupported. This is valid on all known static and
3303 # shared platforms.
3304 if test "$hardcode_direct" != unsupported; then
3305 test -n "$old_library" && linklib="$old_library"
3306 compile_command="$compile_command $dir/$linklib"
3307 finalize_command="$finalize_command $dir/$linklib"
3308 else
3309 case "$compile_command " in
3310 *" -L$dir "*) ;;
3311 *) compile_command="$compile_command -L$dir";;
3312 esac
3313 compile_command="$compile_command -l$name"
3314 case "$finalize_command " in
3315 *" -L$dir "*) ;;
3316 *) finalize_command="$finalize_command -L$dir";;
3317 esac
3318 finalize_command="$finalize_command -l$name"
3319 fi
3320 fi
3321 done
3322
3323 if test -n "$rpath$xrpath"; then
3324 # If the user specified any rpath flags, then add them.
3325 for libdir in $rpath $xrpath; do
3326 # This is the magic to use -rpath.
3327 case "$compile_rpath " in
3328 *" $libdir "*) ;;
3329 *) compile_rpath="$compile_rpath $libdir" ;;
3330 esac
3331 case "$finalize_rpath " in
3332 *" $libdir "*) ;;
3333 *) finalize_rpath="$finalize_rpath $libdir" ;;
3334 esac
3335 done
3336 fi
3337
3338 # Now hardcode the library paths
3339 rpath=
3340 hardcode_libdirs=
3341 for libdir in $compile_rpath $finalize_rpath; do
3342 if test -n "$hardcode_libdir_flag_spec"; then
3343 if test -n "$hardcode_libdir_separator"; then
3344 if test -z "$hardcode_libdirs"; then
3345 hardcode_libdirs="$libdir"
3346 else
3347 # Just accumulate the unique libdirs.
3348 case "$hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator" in
3349 *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
3350 ;;
3351 *)
3352 hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
3353 ;;
3354 esac
3355 fi
3356 else
3357 eval flag=\"$hardcode_libdir_flag_spec\"
3358 rpath="$rpath $flag"
3359 fi
3360 elif test -n "$runpath_var"; then
3361 case "$perm_rpath " in
3362 *" $libdir "*) ;;
3363 *) perm_rpath="$perm_rpath $libdir" ;;
3364 esac
3365 fi
3366 case "$host" in
3367 *-*-cygwin* | *-*-mingw* | *-*-os2*)
3368 case ":$dllsearchpath:" in
3369 *":$libdir:"*) ;;
3370 *) dllsearchpath="$dllsearchpath:$libdir";;
3371 esac
3372 ;;
3373 esac
3374 done
3375 # Substitute the hardcoded libdirs into the rpath.
3376 if test -n "$hardcode_libdir_separator" &&
3377 test -n "$hardcode_libdirs"; then
3378 libdir="$hardcode_libdirs"
3379 eval rpath=\" $hardcode_libdir_flag_spec\"
3380 fi
3381 compile_rpath="$rpath"
3382
3383 rpath=
3384 hardcode_libdirs=
3385 for libdir in $finalize_rpath; do
3386 if test -n "$hardcode_libdir_flag_spec"; then
3387 if test -n "$hardcode_libdir_separator"; then
3388 if test -z "$hardcode_libdirs"; then
3389 hardcode_libdirs="$libdir"
3390 else
3391 # Just accumulate the unique libdirs.
3392 case "$hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator" in
3393 *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
3394 ;;
3395 *)
3396 hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
3397 ;;
3398 esac
3399 fi
3400 else
3401 eval flag=\"$hardcode_libdir_flag_spec\"
3402 rpath="$rpath $flag"
3403 fi
3404 elif test -n "$runpath_var"; then
3405 case "$finalize_perm_rpath " in
3406 *" $libdir "*) ;;
3407 *) finalize_perm_rpath="$finalize_perm_rpath $libdir" ;;
3408 esac
3409 fi
3410 done
3411 # Substitute the hardcoded libdirs into the rpath.
3412 if test -n "$hardcode_libdir_separator" &&
3413 test -n "$hardcode_libdirs"; then
3414 libdir="$hardcode_libdirs"
3415 eval rpath=\" $hardcode_libdir_flag_spec\"
3416 fi
3417 finalize_rpath="$rpath"
3418
3419 if test -n "$libobjs" && test "$build_old_libs" = yes; then
3420 # Transform all the library objects into standard objects.
3421 compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
3422 finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
3423 fi
3424
3425 dlsyms=
3426 if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
3427 if test -n "$NM" && test -n "$global_symbol_pipe"; then
3428 dlsyms="${outputname}S.c"
3429 else
3430 $echo "$modename: not configured to extract global symbols from dlpreopened files" 1>&2
3431 fi
3432 fi
3433
3434 if test -n "$dlsyms"; then
3435 case "$dlsyms" in
3436 "") ;;
3437 *.c)
3438 # Discover the nlist of each of the dlfiles.
3439 nlist="$output_objdir/${outputname}.nm"
3440
3441 $show "$rm $nlist ${nlist}S ${nlist}T"
3442 $run $rm "$nlist" "${nlist}S" "${nlist}T"
3443
3444 # Parse the name list into a source file.
3445 $show "creating $output_objdir/$dlsyms"
3446
3447 test -z "$run" && $echo > "$output_objdir/$dlsyms" "\
3448 /* $dlsyms - symbol resolution table for \`$outputname' dlsym emulation. */
3449 /* Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP */
3450
3451 #ifdef __cplusplus
3452 extern \"C\" {
3453 #endif
3454
3455 /* Prevent the only kind of declaration conflicts we can make. */
3456 #define lt_preloaded_symbols some_other_symbol
3457
3458 /* External symbol declarations for the compiler. */\
3459 "
3460
3461 if test "$dlself" = yes; then
3462 $show "generating symbol list for \`$output'"
3463
3464 test -z "$run" && $echo ': @PROGRAM@ ' > "$nlist"
3465
3466 # Add our own program objects to the symbol list.
3467 progfiles=`$echo "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
3468 for arg in $progfiles; do
3469 $show "extracting global C symbols from \`$arg'"
3470 $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
3471 done
3472
3473 if test -n "$exclude_expsyms"; then
3474 $run eval 'egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T'
3475 $run eval '$mv "$nlist"T "$nlist"'
3476 fi
3477
3478 if test -n "$export_symbols_regex"; then
3479 $run eval 'egrep -e "$export_symbols_regex" "$nlist" > "$nlist"T'
3480 $run eval '$mv "$nlist"T "$nlist"'
3481 fi
3482
3483 # Prepare the list of exported symbols
3484 if test -z "$export_symbols"; then
3485 export_symbols="$output_objdir/$output.exp"
3486 $run $rm $export_symbols
3487 $run eval "sed -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
3488 else
3489 $run eval "sed -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"'
3490 $run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T'
3491 $run eval 'mv "$nlist"T "$nlist"'
3492 fi
3493 fi
3494
3495 for arg in $dlprefiles; do
3496 $show "extracting global C symbols from \`$arg'"
3497 name=`echo "$arg" | sed -e 's%^.*/%%'`
3498 $run eval 'echo ": $name " >> "$nlist"'
3499 $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
3500 done
3501
3502 if test -z "$run"; then
3503 # Make sure we have at least an empty file.
3504 test -f "$nlist" || : > "$nlist"
3505
3506 if test -n "$exclude_expsyms"; then
3507 egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T
3508 $mv "$nlist"T "$nlist"
3509 fi
3510
3511 # Try sorting and uniquifying the output.
3512 if grep -v "^: " < "$nlist" | sort +2 | uniq > "$nlist"S; then
3513 :
3514 else
3515 grep -v "^: " < "$nlist" > "$nlist"S
3516 fi
3517
3518 if test -f "$nlist"S; then
3519 eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$dlsyms"'
3520 else
3521 echo '/* NONE */' >> "$output_objdir/$dlsyms"
3522 fi
3523
3524 $echo >> "$output_objdir/$dlsyms" "\
3525
3526 #undef lt_preloaded_symbols
3527
3528 #if defined (__STDC__) && __STDC__
3529 # define lt_ptr_t void *
3530 #else
3531 # define lt_ptr_t char *
3532 # define const
3533 #endif
3534
3535 /* The mapping between symbol names and symbols. */
3536 const struct {
3537 const char *name;
3538 lt_ptr_t address;
3539 }
3540 lt_preloaded_symbols[] =
3541 {\
3542 "
3543
3544 sed -n -e 's/^: \([^ ]*\) $/ {\"\1\", (lt_ptr_t) 0},/p' \
3545 -e 's/^. \([^ ]*\) \([^ ]*\)$/ {"\2", (lt_ptr_t) \&\2},/p' \
3546 < "$nlist" >> "$output_objdir/$dlsyms"
3547
3548 $echo >> "$output_objdir/$dlsyms" "\
3549 {0, (lt_ptr_t) 0}
3550 };
3551
3552 /* This works around a problem in FreeBSD linker */
3553 #ifdef FREEBSD_WORKAROUND
3554 static const void *lt_preloaded_setup() {
3555 return lt_preloaded_symbols;
3556 }
3557 #endif
3558
3559 #ifdef __cplusplus
3560 }
3561 #endif\
3562 "
3563 fi
3564
3565 pic_flag_for_symtable=
3566 case "$host" in
3567 # compiling the symbol table file with pic_flag works around
3568 # a FreeBSD bug that causes programs to crash when -lm is
3569 # linked before any other PIC object. But we must not use
3570 # pic_flag when linking with -static. The problem exists in
3571 # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1.
3572 *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)
3573 case "$compile_command " in
3574 *" -static "*) ;;
3575 *) pic_flag_for_symtable=" $pic_flag -DPIC -DFREEBSD_WORKAROUND";;
3576 esac;;
3577 *-*-hpux*)
3578 case "$compile_command " in
3579 *" -static "*) ;;
3580 *) pic_flag_for_symtable=" $pic_flag -DPIC";;
3581 esac
3582 esac
3583
3584 # Now compile the dynamic symbol file.
3585 $show "(cd $output_objdir && $CC -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")"
3586 $run eval '(cd $output_objdir && $CC -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $?
3587
3588 # Clean up the generated files.
3589 $show "$rm $output_objdir/$dlsyms $nlist ${nlist}S ${nlist}T"
3590 $run $rm "$output_objdir/$dlsyms" "$nlist" "${nlist}S" "${nlist}T"
3591
3592 # Transform the symbol file into the correct name.
3593 compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"`
3594 finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"`
3595 ;;
3596 *)
3597 $echo "$modename: unknown suffix for \`$dlsyms'" 1>&2
3598 exit 1
3599 ;;
3600 esac
3601 else
3602 # We keep going just in case the user didn't refer to
3603 # lt_preloaded_symbols. The linker will fail if global_symbol_pipe
3604 # really was required.
3605
3606 # Nullify the symbol file.
3607 compile_command=`$echo "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"`
3608 finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"`
3609 fi
3610
3611 if test -z "$link_against_libtool_libs" || test "$build_libtool_libs" != yes; then
3612 # Replace the output file specification.
3613 compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
3614 link_command="$compile_command$compile_rpath"
3615
3616 # We have no uninstalled library dependencies, so finalize right now.
3617 $show "$link_command"
3618 $run eval "$link_command"
3619 status=$?
3620
3621 # Delete the generated files.
3622 if test -n "$dlsyms"; then
3623 $show "$rm $output_objdir/${outputname}S.${objext}"
3624 $run $rm "$output_objdir/${outputname}S.${objext}"
3625 fi
3626
3627 exit $status
3628 fi
3629
3630 if test -n "$shlibpath_var"; then
3631 # We should set the shlibpath_var
3632 rpath=
3633 for dir in $temp_rpath; do
3634 case "$dir" in
3635 [\\/]* | [A-Za-z]:[\\/]*)
3636 # Absolute path.
3637 rpath="$rpath$dir:"
3638 ;;
3639 *)
3640 # Relative path: add a thisdir entry.
3641 rpath="$rpath\$thisdir/$dir:"
3642 ;;
3643 esac
3644 done
3645 temp_rpath="$rpath"
3646 fi
3647
3648 if test -n "$compile_shlibpath$finalize_shlibpath"; then
3649 compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command"
3650 fi
3651 if test -n "$finalize_shlibpath"; then
3652 finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command"
3653 fi
3654
3655 compile_var=
3656 finalize_var=
3657 if test -n "$runpath_var"; then
3658 if test -n "$perm_rpath"; then
3659 # We should set the runpath_var.
3660 rpath=
3661 for dir in $perm_rpath; do
3662 rpath="$rpath$dir:"
3663 done
3664 compile_var="$runpath_var=\"$rpath\$$runpath_var\" "
3665 fi
3666 if test -n "$finalize_perm_rpath"; then
3667 # We should set the runpath_var.
3668 rpath=
3669 for dir in $finalize_perm_rpath; do
3670 rpath="$rpath$dir:"
3671 done
3672 finalize_var="$runpath_var=\"$rpath\$$runpath_var\" "
3673 fi
3674 fi
3675
3676 if test "$no_install" = yes; then
3677 # We don't need to create a wrapper script.
3678 link_command="$compile_var$compile_command$compile_rpath"
3679 # Replace the output file specification.
3680 link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
3681 # Delete the old output file.
3682 $run $rm $output
3683 # Link the executable and exit
3684 $show "$link_command"
3685 $run eval "$link_command" || exit $?
3686 exit 0
3687 fi
3688
3689 if test "$hardcode_action" = relink || test "$hardcode_into_libs" = yes; then
3690 # Fast installation is not supported
3691 link_command="$compile_var$compile_command$compile_rpath"
3692 relink_command="$finalize_var$finalize_command$finalize_rpath"
3693
3694 $echo "$modename: warning: this platform does not like uninstalled shared libraries" 1>&2
3695 $echo "$modename: \`$output' will be relinked during installation" 1>&2
3696 else
3697 if test "$fast_install" != no; then
3698 link_command="$finalize_var$compile_command$finalize_rpath"
3699 if test "$fast_install" = yes; then
3700 relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'`
3701 else
3702 # fast_install is set to needless
3703 relink_command=
3704 fi
3705 else
3706 link_command="$compile_var$compile_command$compile_rpath"
3707 relink_command="$finalize_var$finalize_command$finalize_rpath"
3708 fi
3709 fi
3710
3711 # Replace the output file specification.
3712 link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'`
3713
3714 # Delete the old output files.
3715 $run $rm $output $output_objdir/$outputname $output_objdir/lt-$outputname
3716
3717 $show "$link_command"
3718 $run eval "$link_command" || exit $?
3719
3720 # Now create the wrapper script.
3721 $show "creating $output"
3722
3723 # Quote the relink command for shipping.
3724 if test -n "$relink_command"; then
3725 relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
3726 fi
3727
3728 # Quote $echo for shipping.
3729 if test "X$echo" = "X$SHELL $0 --fallback-echo"; then
3730 case "$0" in
3731 [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $0 --fallback-echo";;
3732 *) qecho="$SHELL `pwd`/$0 --fallback-echo";;
3733 esac
3734 qecho=`$echo "X$qecho" | $Xsed -e "$sed_quote_subst"`
3735 else
3736 qecho=`$echo "X$echo" | $Xsed -e "$sed_quote_subst"`
3737 fi
3738
3739 # Only actually do things if our run command is non-null.
3740 if test -z "$run"; then
3741 # win32 will think the script is a binary if it has
3742 # a .exe suffix, so we strip it off here.
3743 case $output in
3744 *.exe) output=`echo $output|sed 's,.exe$,,'` ;;
3745 esac
3746 $rm $output
3747 trap "$rm $output; exit 1" 1 2 15
3748
3749 $echo > $output "\
3750 #! $SHELL
3751
3752 # $output - temporary wrapper script for $objdir/$outputname
3753 # Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP
3754 #
3755 # The $output program cannot be directly executed until all the libtool
3756 # libraries that it depends on are installed.
3757 #
3758 # This wrapper script should never be moved out of the build directory.
3759 # If it is, it will not operate correctly.
3760
3761 # Sed substitution that helps us do robust quoting. It backslashifies
3762 # metacharacters that are still active within double-quoted strings.
3763 Xsed='sed -e 1s/^X//'
3764 sed_quote_subst='$sed_quote_subst'
3765
3766 # The HP-UX ksh and POSIX shell print the target directory to stdout
3767 # if CDPATH is set.
3768 if test \"\${CDPATH+set}\" = set; then CDPATH=:; export CDPATH; fi
3769
3770 relink_command=\"$relink_command\"
3771
3772 # This environment variable determines our operation mode.
3773 if test \"\$libtool_install_magic\" = \"$magic\"; then
3774 # install mode needs the following variable:
3775 link_against_libtool_libs='$link_against_libtool_libs'
3776 else
3777 # When we are sourced in execute mode, \$file and \$echo are already set.
3778 if test \"\$libtool_execute_magic\" != \"$magic\"; then
3779 echo=\"$qecho\"
3780 file=\"\$0\"
3781 # Make sure echo works.
3782 if test \"X\$1\" = X--no-reexec; then
3783 # Discard the --no-reexec flag, and continue.
3784 shift
3785 elif test \"X\`(\$echo '\t') 2>/dev/null\`\" = 'X\t'; then
3786 # Yippee, \$echo works!
3787 :
3788 else
3789 # Restart under the correct shell, and then maybe \$echo will work.
3790 exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"}
3791 fi
3792 fi\
3793 "
3794 $echo >> $output "\
3795
3796 # Find the directory that this script lives in.
3797 thisdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\`
3798 test \"x\$thisdir\" = \"x\$file\" && thisdir=.
3799
3800 # Follow symbolic links until we get to the real thisdir.
3801 file=\`ls -ld \"\$file\" | sed -n 's/.*-> //p'\`
3802 while test -n \"\$file\"; do
3803 destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\`
3804
3805 # If there was a directory component, then change thisdir.
3806 if test \"x\$destdir\" != \"x\$file\"; then
3807 case \"\$destdir\" in
3808 [\\/]* | [A-Za-z]:[\\/]*) thisdir=\"\$destdir\" ;;
3809 *) thisdir=\"\$thisdir/\$destdir\" ;;
3810 esac
3811 fi
3812
3813 file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\`
3814 file=\`ls -ld \"\$thisdir/\$file\" | sed -n 's/.*-> //p'\`
3815 done
3816
3817 # Try to get the absolute directory name.
3818 absdir=\`cd \"\$thisdir\" && pwd\`
3819 test -n \"\$absdir\" && thisdir=\"\$absdir\"
3820 "
3821
3822 if test "$fast_install" = yes; then
3823 echo >> $output "\
3824 program=lt-'$outputname'
3825 progdir=\"\$thisdir/$objdir\"
3826
3827 if test ! -f \"\$progdir/\$program\" || \\
3828 { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | sed 1q\`; \\
3829 test \"X\$file\" != \"X\$progdir/\$program\"; }; then
3830
3831 file=\"\$\$-\$program\"
3832
3833 if test ! -d \"\$progdir\"; then
3834 $mkdir \"\$progdir\"
3835 else
3836 $rm \"\$progdir/\$file\"
3837 fi"
3838
3839 echo >> $output "\
3840
3841 # relink executable if necessary
3842 if test -n \"\$relink_command\"; then
3843 if (cd \"\$thisdir\" && eval \$relink_command); then :
3844 else
3845 $rm \"\$progdir/\$file\"
3846 exit 1
3847 fi
3848 fi
3849
3850 $mv \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null ||
3851 { $rm \"\$progdir/\$program\";
3852 $mv \"\$progdir/\$file\" \"\$progdir/\$program\"; }
3853 $rm \"\$progdir/\$file\"
3854 fi"
3855 else
3856 echo >> $output "\
3857 program='$outputname'
3858 progdir=\"\$thisdir/$objdir\"
3859 "
3860 fi
3861
3862 echo >> $output "\
3863
3864 if test -f \"\$progdir/\$program\"; then"
3865
3866 # Export our shlibpath_var if we have one.
3867 if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
3868 $echo >> $output "\
3869 # Add our own library path to $shlibpath_var
3870 $shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
3871
3872 # Some systems cannot cope with colon-terminated $shlibpath_var
3873 # The second colon is a workaround for a bug in BeOS R4 sed
3874 $shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\`
3875
3876 export $shlibpath_var
3877 "
3878 fi
3879
3880 # fixup the dll searchpath if we need to.
3881 if test -n "$dllsearchpath"; then
3882 $echo >> $output "\
3883 # Add the dll search path components to the executable PATH
3884 PATH=$dllsearchpath:\$PATH
3885 "
3886 fi
3887
3888 $echo >> $output "\
3889 if test \"\$libtool_execute_magic\" != \"$magic\"; then
3890 # Run the actual program with our arguments.
3891 "
3892 case $host in
3893 *-*-cygwin* | *-*-mingw | *-*-os2*)
3894 # win32 systems need to use the prog path for dll
3895 # lookup to work
3896 $echo >> $output "\
3897 exec \$progdir\\\\\$program \${1+\"\$@\"}
3898 "
3899 ;;
3900 *)
3901 $echo >> $output "\
3902 # Export the path to the program.
3903 PATH=\"\$progdir:\$PATH\"
3904 export PATH
3905
3906 exec \$program \${1+\"\$@\"}
3907 "
3908 ;;
3909 esac
3910 $echo >> $output "\
3911 \$echo \"\$0: cannot exec \$program \${1+\"\$@\"}\"
3912 exit 1
3913 fi
3914 else
3915 # The program doesn't exist.
3916 \$echo \"\$0: error: \$progdir/\$program does not exist\" 1>&2
3917 \$echo \"This script is just a wrapper for \$program.\" 1>&2
3918 echo \"See the $PACKAGE documentation for more information.\" 1>&2
3919 exit 1
3920 fi
3921 fi\
3922 "
3923 chmod +x $output
3924 fi
3925 exit 0
3926 ;;
3927 esac
3928
3929 # See if we need to build an old-fashioned archive.
3930 for oldlib in $oldlibs; do
3931
3932 if test "$build_libtool_libs" = convenience; then
3933 oldobjs="$libobjs_save"
3934 addlibs="$convenience"
3935 build_libtool_libs=no
3936 else
3937 if test "$build_libtool_libs" = module; then
3938 oldobjs="$libobjs_save"
3939 build_libtool_libs=no
3940 else
3941 oldobjs="$objs$old_deplibs "`$echo "X$libobjs_save" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`
3942 fi
3943 addlibs="$old_convenience"
3944 fi
3945
3946 if test -n "$addlibs"; then
3947 gentop="$output_objdir/${outputname}x"
3948 $show "${rm}r $gentop"
3949 $run ${rm}r "$gentop"
3950 $show "mkdir $gentop"
3951 $run mkdir "$gentop"
3952 status=$?
3953 if test $status -ne 0 && test ! -d "$gentop"; then
3954 exit $status
3955 fi
3956 generated="$generated $gentop"
3957
3958 # Add in members from convenience archives.
3959 for xlib in $addlibs; do
3960 # Extract the objects.
3961 case "$xlib" in
3962 [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
3963 *) xabs=`pwd`"/$xlib" ;;
3964 esac
3965 xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'`
3966 xdir="$gentop/$xlib"
3967
3968 $show "${rm}r $xdir"
3969 $run ${rm}r "$xdir"
3970 $show "mkdir $xdir"
3971 $run mkdir "$xdir"
3972 status=$?
3973 if test $status -ne 0 && test ! -d "$xdir"; then
3974 exit $status
3975 fi
3976 $show "(cd $xdir && $AR x $xabs)"
3977 $run eval "(cd \$xdir && $AR x \$xabs)" || exit $?
3978
3979 oldobjs="$oldobjs "`find $xdir -name \*.${objext} -print -o -name \*.lo -print | $NL2SP`
3980 done
3981 fi
3982
3983 # Do each command in the archive commands.
3984 if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then
3985 eval cmds=\"$old_archive_from_new_cmds\"
3986 else
3987 # Ensure that we have .o objects in place in case we decided
3988 # not to build a shared library, and have fallen back to building
3989 # static libs even though --disable-static was passed!
3990 for oldobj in $oldobjs; do
3991 if test ! -f $oldobj; then
3992 xdir=`$echo "X$oldobj" | $Xsed -e 's%/[^/]*$%%'`
3993 if test "X$xdir" = "X$oldobj"; then
3994 xdir="."
3995 else
3996 xdir="$xdir"
3997 fi
3998 baseobj=`$echo "X$oldobj" | $Xsed -e 's%^.*/%%'`
3999 obj=`$echo "X$baseobj" | $Xsed -e "$o2lo"`
4000 $show "(cd $xdir && ${LN_S} $obj $baseobj)"
4001 $run eval '(cd $xdir && ${LN_S} $obj $baseobj)' || exit $?
4002 fi
4003 done
4004
4005 eval cmds=\"$old_archive_cmds\"
4006 fi
4007 IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
4008 for cmd in $cmds; do
4009 IFS="$save_ifs"
4010 $show "$cmd"
4011 $run eval "$cmd" || exit $?
4012 done
4013 IFS="$save_ifs"
4014 done
4015
4016 if test -n "$generated"; then
4017 $show "${rm}r$generated"
4018 $run ${rm}r$generated
4019 fi
4020
4021 # Now create the libtool archive.
4022 case "$output" in
4023 *.la)
4024 old_library=
4025 test "$build_old_libs" = yes && old_library="$libname.$libext"
4026 $show "creating $output"
4027
4028 # Quote the link command for shipping.
4029 relink_command="cd `pwd`; $SHELL $0 --mode=relink $libtool_args"
4030 relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
4031
4032 # Only create the output if not a dry run.
4033 if test -z "$run"; then
4034 for installed in no yes; do
4035 if test "$installed" = yes; then
4036 if test -z "$install_libdir"; then
4037 break
4038 fi
4039 output="$output_objdir/$outputname"i
4040 # Replace all uninstalled libtool libraries with the installed ones
4041 newdependency_libs=
4042 for deplib in $dependency_libs; do
4043 case "$deplib" in
4044 *.la)
4045 name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
4046 eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
4047 if test -z "$libdir"; then
4048 $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
4049 exit 1
4050 fi
4051 newdependency_libs="$newdependency_libs $libdir/$name"
4052 ;;
4053 *) newdependency_libs="$newdependency_libs $deplib" ;;
4054 esac
4055 done
4056 dependency_libs="$newdependency_libs"
4057 fi
4058 $rm $output
4059 $echo > $output "\
4060 # $outputname - a libtool library file
4061 # Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP
4062 #
4063 # Please DO NOT delete this file!
4064 # It is necessary for linking the library.
4065
4066 # The name that we can dlopen(3).
4067 dlname='$dlname'
4068
4069 # Names of this library.
4070 library_names='$library_names'
4071
4072 # The name of the static archive.
4073 old_library='$old_library'
4074
4075 # Libraries that this one depends upon.
4076 dependency_libs='$dependency_libs'
4077
4078 # Version information for $libname.
4079 current=$current
4080 age=$age
4081 revision=$revision
4082
4083 # Is this an already installed library?
4084 installed=$installed
4085
4086 # Directory that this library needs to be installed in:
4087 libdir='$install_libdir'"
4088 if test "$installed" = no; then
4089 $echo >> $output "\
4090 relink_command=\"$relink_command\""
4091 fi
4092 done
4093 fi
4094
4095 # Do a symbolic link so that the libtool archive can be found in
4096 # LD_LIBRARY_PATH before the program is installed.
4097 $show "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)"
4098 $run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $?
4099 ;;
4100 esac
4101 exit 0
4102 ;;
4103
4104 # libtool install mode
4105 install)
4106 modename="$modename: install"
4107
4108 # There may be an optional sh(1) argument at the beginning of
4109 # install_prog (especially on Windows NT).
4110 if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh; then
4111 # Aesthetically quote it.
4112 arg=`$echo "X$nonopt" | $Xsed -e "$sed_quote_subst"`
4113 case "$arg" in
4114 *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
4115 arg="\"$arg\""
4116 ;;
4117 esac
4118 install_prog="$arg "
4119 arg="$1"
4120 shift
4121 else
4122 install_prog=
4123 arg="$nonopt"
4124 fi
4125
4126 # The real first argument should be the name of the installation program.
4127 # Aesthetically quote it.
4128 arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
4129 case "$arg" in
4130 *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
4131 arg="\"$arg\""
4132 ;;
4133 esac
4134 install_prog="$install_prog$arg"
4135
4136 # We need to accept at least all the BSD install flags.
4137 dest=
4138 files=
4139 opts=
4140 prev=
4141 install_type=
4142 isdir=no
4143 stripme=
4144 for arg
4145 do
4146 if test -n "$dest"; then
4147 files="$files $dest"
4148 dest="$arg"
4149 continue
4150 fi
4151
4152 case "$arg" in
4153 -d) isdir=yes ;;
4154 -f) prev="-f" ;;
4155 -g) prev="-g" ;;
4156 -m) prev="-m" ;;
4157 -o) prev="-o" ;;
4158 -s)
4159 stripme=" -s"
4160 continue
4161 ;;
4162 -*) ;;
4163
4164 *)
4165 # If the previous option needed an argument, then skip it.
4166 if test -n "$prev"; then
4167 prev=
4168 else
4169 dest="$arg"
4170 continue
4171 fi
4172 ;;
4173 esac
4174
4175 # Aesthetically quote the argument.
4176 arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
4177 case "$arg" in
4178 *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
4179 arg="\"$arg\""
4180 ;;
4181 esac
4182 install_prog="$install_prog $arg"
4183 done
4184
4185 if test -z "$install_prog"; then
4186 $echo "$modename: you must specify an install program" 1>&2
4187 $echo "$help" 1>&2
4188 exit 1
4189 fi
4190
4191 if test -n "$prev"; then
4192 $echo "$modename: the \`$prev' option requires an argument" 1>&2
4193 $echo "$help" 1>&2
4194 exit 1
4195 fi
4196
4197 if test -z "$files"; then
4198 if test -z "$dest"; then
4199 $echo "$modename: no file or destination specified" 1>&2
4200 else
4201 $echo "$modename: you must specify a destination" 1>&2
4202 fi
4203 $echo "$help" 1>&2
4204 exit 1
4205 fi
4206
4207 # Strip any trailing slash from the destination.
4208 dest=`$echo "X$dest" | $Xsed -e 's%/$%%'`
4209
4210 # Check to see that the destination is a directory.
4211 test -d "$dest" && isdir=yes
4212 if test "$isdir" = yes; then
4213 destdir="$dest"
4214 destname=
4215 else
4216 destdir=`$echo "X$dest" | $Xsed -e 's%/[^/]*$%%'`
4217 test "X$destdir" = "X$dest" && destdir=.
4218 destname=`$echo "X$dest" | $Xsed -e 's%^.*/%%'`
4219
4220 # Not a directory, so check to see that there is only one file specified.
4221 set dummy $files
4222 if test $# -gt 2; then
4223 $echo "$modename: \`$dest' is not a directory" 1>&2
4224 $echo "$help" 1>&2
4225 exit 1
4226 fi
4227 fi
4228 case "$destdir" in
4229 [\\/]* | [A-Za-z]:[\\/]*) ;;
4230 *)
4231 for file in $files; do
4232 case "$file" in
4233 *.lo) ;;
4234 *)
4235 $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2
4236 $echo "$help" 1>&2
4237 exit 1
4238 ;;
4239 esac
4240 done
4241 ;;
4242 esac
4243
4244 # This variable tells wrapper scripts just to set variables rather
4245 # than running their programs.
4246 libtool_install_magic="$magic"
4247
4248 staticlibs=
4249 future_libdirs=
4250 current_libdirs=
4251 for file in $files; do
4252
4253 # Do each installation.
4254 case "$file" in
4255 *.a | *.lib)
4256 # Do the static libraries later.
4257 staticlibs="$staticlibs $file"
4258 ;;
4259
4260 *.la)
4261 # Check to see that this really is a libtool archive.
4262 if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
4263 else
4264 $echo "$modename: \`$file' is not a valid libtool archive" 1>&2
4265 $echo "$help" 1>&2
4266 exit 1
4267 fi
4268
4269 library_names=
4270 old_library=
4271 relink_command=
4272 # If there is no directory component, then add one.
4273 case "$file" in
4274 */* | *\\*) . $file ;;
4275 *) . ./$file ;;
4276 esac
4277
4278 # Add the libdir to current_libdirs if it is the destination.
4279 if test "X$destdir" = "X$libdir"; then
4280 case "$current_libdirs " in
4281 *" $libdir "*) ;;
4282 *) current_libdirs="$current_libdirs $libdir" ;;
4283 esac
4284 else
4285 # Note the libdir as a future libdir.
4286 case "$future_libdirs " in
4287 *" $libdir "*) ;;
4288 *) future_libdirs="$future_libdirs $libdir" ;;
4289 esac
4290 fi
4291
4292 dir="`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/"
4293 test "X$dir" = "X$file/" && dir=
4294 dir="$dir$objdir"
4295
4296 if test "$hardcode_into_libs" = yes; then
4297 if test -z "$relink_command"; then
4298 $echo "$modename: invalid libtool pseudo library \`$file'" 1>&2
4299 exit 1
4300 fi
4301 $echo "$modename: warning: relinking \`$file'" 1>&2
4302 $show "$relink_command"
4303 if $run eval "$relink_command"; then :
4304 else
4305 $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2
4306 continue
4307 fi
4308 fi
4309
4310 # See the names of the shared library.
4311 set dummy $library_names
4312 if test -n "$2"; then
4313 realname="$2"
4314 shift
4315 shift
4316
4317 srcname="$realname"
4318 test "$hardcode_into_libs" = yes && srcname="$realname"T
4319
4320 # Install the shared library and build the symlinks.
4321 $show "$install_prog $dir/$srcname $destdir/$realname"
4322 $run eval "$install_prog $dir/$srcname $destdir/$realname" || exit $?
4323 if test -n "$stripme" && test -n "$striplib"; then
4324 $show "$striplib $destdir/$realname"
4325 $run eval "$striplib $destdir/$realname" || exit $?
4326 fi
4327
4328 if test $# -gt 0; then
4329 # Delete the old symlinks, and create new ones.
4330 for linkname
4331 do
4332 if test "$linkname" != "$realname"; then
4333 $show "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)"
4334 $run eval "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)"
4335 fi
4336 done
4337 fi
4338
4339 # Do each command in the postinstall commands.
4340 lib="$destdir/$realname"
4341 eval cmds=\"$postinstall_cmds\"
4342 IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
4343 for cmd in $cmds; do
4344 IFS="$save_ifs"
4345 $show "$cmd"
4346 $run eval "$cmd" || exit $?
4347 done
4348 IFS="$save_ifs"
4349 fi
4350
4351 # Install the pseudo-library for information purposes.
4352 name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
4353 instname="$dir/$name"i
4354 $show "$install_prog $instname $destdir/$name"
4355 $run eval "$install_prog $instname $destdir/$name" || exit $?
4356
4357 # Maybe install the static library, too.
4358 test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library"
4359 ;;
4360
4361 *.lo)
4362 # Install (i.e. copy) a libtool object.
4363
4364 # Figure out destination file name, if it wasn't already specified.
4365 if test -n "$destname"; then
4366 destfile="$destdir/$destname"
4367 else
4368 destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
4369 destfile="$destdir/$destfile"
4370 fi
4371
4372 # Deduce the name of the destination old-style object file.
4373 case "$destfile" in
4374 *.lo)
4375 staticdest=`$echo "X$destfile" | $Xsed -e "$lo2o"`
4376 ;;
4377 *.o | *.obj)
4378 staticdest="$destfile"
4379 destfile=
4380 ;;
4381 *)
4382 $echo "$modename: cannot copy a libtool object to \`$destfile'" 1>&2
4383 $echo "$help" 1>&2
4384 exit 1
4385 ;;
4386 esac
4387
4388 # Install the libtool object if requested.
4389 if test -n "$destfile"; then
4390 $show "$install_prog $file $destfile"
4391 $run eval "$install_prog $file $destfile" || exit $?
4392 fi
4393
4394 # Install the old object if enabled.
4395 if test "$build_old_libs" = yes; then
4396 # Deduce the name of the old-style object file.
4397 staticobj=`$echo "X$file" | $Xsed -e "$lo2o"`
4398
4399 $show "$install_prog $staticobj $staticdest"
4400 $run eval "$install_prog \$staticobj \$staticdest" || exit $?
4401 fi
4402 exit 0
4403 ;;
4404
4405 *)
4406 # Figure out destination file name, if it wasn't already specified.
4407 if test -n "$destname"; then
4408 destfile="$destdir/$destname"
4409 else
4410 destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
4411 destfile="$destdir/$destfile"
4412 fi
4413
4414 # Do a test to see if this is really a libtool program.
4415 if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
4416 link_against_libtool_libs=
4417 relink_command=
4418
4419 # If there is no directory component, then add one.
4420 case "$file" in
4421 */* | *\\*) . $file ;;
4422 *) . ./$file ;;
4423 esac
4424
4425 # Check the variables that should have been set.
4426 if test -z "$link_against_libtool_libs"; then
4427 $echo "$modename: invalid libtool wrapper script \`$file'" 1>&2
4428 exit 1
4429 fi
4430
4431 finalize=yes
4432 for lib in $link_against_libtool_libs; do
4433 # Check to see that each library is installed.
4434 libdir=
4435 if test -f "$lib"; then
4436 # If there is no directory component, then add one.
4437 case "$lib" in
4438 */* | *\\*) . $lib ;;
4439 *) . ./$lib ;;
4440 esac
4441 fi
4442 libfile="$libdir/`$echo "X$lib" | $Xsed -e 's%^.*/%%g'`"
4443 if test -n "$libdir" && test ! -f "$libfile"; then
4444 $echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2
4445 finalize=no
4446 fi
4447 done
4448
4449 relink_command=
4450 # If there is no directory component, then add one.
4451 case "$file" in
4452 */* | *\\*) . $file ;;
4453 *) . ./$file ;;
4454 esac
4455
4456 outputname=
4457 if test "$fast_install" = no && test -n "$relink_command"; then
4458 if test "$finalize" = yes && test -z "$run"; then
4459 tmpdir="/tmp"
4460 test -n "$TMPDIR" && tmpdir="$TMPDIR"
4461 tmpdir="$tmpdir/libtool-$$"
4462 if $mkdir -p "$tmpdir" && chmod 700 "$tmpdir"; then :
4463 else
4464 $echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2
4465 continue
4466 fi
4467 outputname="$tmpdir/$file"
4468 # Replace the output file specification.
4469 relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'`
4470
4471 $show "$relink_command"
4472 if $run eval "$relink_command"; then :
4473 else
4474 $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2
4475 ${rm}r "$tmpdir"
4476 continue
4477 fi
4478 file="$outputname"
4479 else
4480 $echo "$modename: warning: cannot relink \`$file'" 1>&2
4481 fi
4482 else
4483 # Install the binary that we compiled earlier.
4484 file=`$echo "X$file" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"`
4485 fi
4486 fi
4487
4488 $show "$install_prog$stripme $file $destfile"
4489 $run eval "$install_prog\$stripme \$file \$destfile" || exit $?
4490 test -n "$outputname" && ${rm}r "$tmpdir"
4491 ;;
4492 esac
4493 done
4494
4495 for file in $staticlibs; do
4496 name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
4497
4498 # Set up the ranlib parameters.
4499 oldlib="$destdir/$name"
4500
4501 $show "$install_prog $file $oldlib"
4502 $run eval "$install_prog \$file \$oldlib" || exit $?
4503
4504 if test -n "$stripme" && test -n "$striplib"; then
4505 $show "$old_striplib $oldlib"
4506 $run eval "$old_striplib $oldlib" || exit $?
4507 fi
4508
4509 # Do each command in the postinstall commands.
4510 eval cmds=\"$old_postinstall_cmds\"
4511 IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
4512 for cmd in $cmds; do
4513 IFS="$save_ifs"
4514 $show "$cmd"
4515 $run eval "$cmd" || exit $?
4516 done
4517 IFS="$save_ifs"
4518 done
4519
4520 if test -n "$future_libdirs"; then
4521 $echo "$modename: warning: remember to run \`$progname --finish$future_libdirs'" 1>&2
4522 fi
4523
4524 if test -n "$current_libdirs"; then
4525 # Maybe just do a dry run.
4526 test -n "$run" && current_libdirs=" -n$current_libdirs"
4527 exec $SHELL $0 --finish$current_libdirs
4528 exit 1
4529 fi
4530
4531 exit 0
4532 ;;
4533
4534 # libtool finish mode
4535 finish)
4536 modename="$modename: finish"
4537 libdirs="$nonopt"
4538 admincmds=
4539
4540 if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
4541 for dir
4542 do
4543 libdirs="$libdirs $dir"
4544 done
4545
4546 for libdir in $libdirs; do
4547 if test -n "$finish_cmds"; then
4548 # Do each command in the finish commands.
4549 eval cmds=\"$finish_cmds\"
4550 IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
4551 for cmd in $cmds; do
4552 IFS="$save_ifs"
4553 $show "$cmd"
4554 $run eval "$cmd" || admincmds="$admincmds
4555 $cmd"
4556 done
4557 IFS="$save_ifs"
4558 fi
4559 if test -n "$finish_eval"; then
4560 # Do the single finish_eval.
4561 eval cmds=\"$finish_eval\"
4562 $run eval "$cmds" || admincmds="$admincmds
4563 $cmds"
4564 fi
4565 done
4566 fi
4567
4568 # Exit here if they wanted silent mode.
4569 test "$show" = : && exit 0
4570
4571 echo "----------------------------------------------------------------------"
4572 echo "Libraries have been installed in:"
4573 for libdir in $libdirs; do
4574 echo " $libdir"
4575 done
4576 echo
4577 echo "If you ever happen to want to link against installed libraries"
4578 echo "in a given directory, LIBDIR, you must either use libtool, and"
4579 echo "specify the full pathname of the library, or use \`-LLIBDIR'"
4580 echo "flag during linking and do at least one of the following:"
4581 if test -n "$shlibpath_var"; then
4582 echo " - add LIBDIR to the \`$shlibpath_var' environment variable"
4583 echo " during execution"
4584 fi
4585 if test -n "$runpath_var"; then
4586 echo " - add LIBDIR to the \`$runpath_var' environment variable"
4587 echo " during linking"
4588 fi
4589 if test -n "$hardcode_libdir_flag_spec"; then
4590 libdir=LIBDIR
4591 eval flag=\"$hardcode_libdir_flag_spec\"
4592
4593 echo " - use the \`$flag' linker flag"
4594 fi
4595 if test -n "$admincmds"; then
4596 echo " - have your system administrator run these commands:$admincmds"
4597 fi
4598 if test -f /etc/ld.so.conf; then
4599 echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'"
4600 fi
4601 echo
4602 echo "See any operating system documentation about shared libraries for"
4603 echo "more information, such as the ld(1) and ld.so(8) manual pages."
4604 echo "----------------------------------------------------------------------"
4605 exit 0
4606 ;;
4607
4608 # libtool clean mode
4609 clean)
4610 modename="$modename: clean"
4611 rm="$nonopt"
4612 files=
4613
4614 # This variable tells wrapper scripts just to set variables rather
4615 # than running their programs.
4616 libtool_install_magic="$magic"
4617
4618 for arg
4619 do
4620 case "$arg" in
4621 -*) rm="$rm $arg" ;;
4622 *) files="$files $arg" ;;
4623 esac
4624 done
4625
4626 if test -z "$rm"; then
4627 $echo "$modename: you must specify an RM program" 1>&2
4628 $echo "$help" 1>&2
4629 exit 1
4630 fi
4631
4632 for file in $files; do
4633 dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
4634 if test "X$dir" = "X$file"; then
4635 dir=.
4636 objdir="$objdir"
4637 else
4638 objdir="$dir/$objdir"
4639 fi
4640 name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
4641
4642 rmfiles="$file"
4643
4644 case "$file" in
4645 *.la)
4646 # Possibly a libtool archive, so verify it.
4647 if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
4648 . ./$file
4649
4650 # Delete the libtool libraries and symlinks.
4651 for n in $library_names; do
4652 rmfiles="$rmfiles $objdir/$n"
4653 done
4654 test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library"
4655 rmfiles="$rmfiles $objdir/$name $objdir/${name}i"
4656 fi
4657 ;;
4658
4659 *.lo)
4660 if test "$build_old_libs" = yes; then
4661 oldobj=`$echo "X$name" | $Xsed -e "$lo2o"`
4662 rmfiles="$rmfiles $dir/$oldobj"
4663 fi
4664 ;;
4665
4666 *)
4667 # Do a test to see if this is a libtool program.
4668 if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
4669 relink_command=
4670 . $dir/$file
4671
4672 rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}"
4673 if test "$fast_install" = yes && test -n "$relink_command"; then
4674 rmfiles="$rmfiles $objdir/lt-$name"
4675 fi
4676 fi
4677 ;;
4678 esac
4679 $show "$rm $rmfiles"
4680 $run $rm $rmfiles
4681 done
4682 exit 0
4683 ;;
4684
4685 # libtool execute mode
4686 execute)
4687 modename="$modename: execute"
4688
4689 # The first argument is the command name.
4690 cmd="$nonopt"
4691 if test -z "$cmd"; then
4692 $echo "$modename: you must specify a COMMAND" 1>&2
4693 $echo "$help"
4694 exit 1
4695 fi
4696
4697 # Handle -dlopen flags immediately.
4698 for file in $execute_dlfiles; do
4699 if test ! -f "$file"; then
4700 $echo "$modename: \`$file' is not a file" 1>&2
4701 $echo "$help" 1>&2
4702 exit 1
4703 fi
4704
4705 dir=
4706 case "$file" in
4707 *.la)
4708 # Check to see that this really is a libtool archive.
4709 if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
4710 else
4711 $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
4712 $echo "$help" 1>&2
4713 exit 1
4714 fi
4715
4716 # Read the libtool library.
4717 dlname=
4718 library_names=
4719
4720 # If there is no directory component, then add one.
4721 case "$file" in
4722 */* | *\\*) . $file ;;
4723 *) . ./$file ;;
4724 esac
4725
4726 # Skip this library if it cannot be dlopened.
4727 if test -z "$dlname"; then
4728 # Warn if it was a shared library.
4729 test -n "$library_names" && $echo "$modename: warning: \`$file' was not linked with \`-export-dynamic'"
4730 continue
4731 fi
4732
4733 dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
4734 test "X$dir" = "X$file" && dir=.
4735
4736 if test -f "$dir/$objdir/$dlname"; then
4737 dir="$dir/$objdir"
4738 else
4739 $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2
4740 exit 1
4741 fi
4742 ;;
4743
4744 *.lo)
4745 # Just add the directory containing the .lo file.
4746 dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
4747 test "X$dir" = "X$file" && dir=.
4748 ;;
4749
4750 *)
4751 $echo "$modename: warning \`-dlopen' is ignored for non-libtool libraries and objects" 1>&2
4752 continue
4753 ;;
4754 esac
4755
4756 # Get the absolute pathname.
4757 absdir=`cd "$dir" && pwd`
4758 test -n "$absdir" && dir="$absdir"
4759
4760 # Now add the directory to shlibpath_var.
4761 if eval "test -z \"\$$shlibpath_var\""; then
4762 eval "$shlibpath_var=\"\$dir\""
4763 else
4764 eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\""
4765 fi
4766 done
4767
4768 # This variable tells wrapper scripts just to set shlibpath_var
4769 # rather than running their programs.
4770 libtool_execute_magic="$magic"
4771
4772 # Check if any of the arguments is a wrapper script.
4773 args=
4774 for file
4775 do
4776 case "$file" in
4777 -*) ;;
4778 *)
4779 # Do a test to see if this is really a libtool program.
4780 if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
4781 # If there is no directory component, then add one.
4782 case "$file" in
4783 */* | *\\*) . $file ;;
4784 *) . ./$file ;;
4785 esac
4786
4787 # Transform arg to wrapped name.
4788 file="$progdir/$program"
4789 fi
4790 ;;
4791 esac
4792 # Quote arguments (to preserve shell metacharacters).
4793 file=`$echo "X$file" | $Xsed -e "$sed_quote_subst"`
4794 args="$args \"$file\""
4795 done
4796
4797 if test -z "$run"; then
4798 if test -n "$shlibpath_var"; then
4799 # Export the shlibpath_var.
4800 eval "export $shlibpath_var"
4801 fi
4802
4803 # Restore saved enviroment variables
4804 if test "${save_LC_ALL+set}" = set; then
4805 LC_ALL="$save_LC_ALL"; export LC_ALL
4806 fi
4807 if test "${save_LANG+set}" = set; then
4808 LANG="$save_LANG"; export LANG
4809 fi
4810
4811 # Now actually exec the command.
4812 eval "exec \$cmd$args"
4813
4814 $echo "$modename: cannot exec \$cmd$args"
4815 exit 1
4816 else
4817 # Display what would be done.
4818 if test -n "$shlibpath_var"; then
4819 eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\""
4820 $echo "export $shlibpath_var"
4821 fi
4822 $echo "$cmd$args"
4823 exit 0
4824 fi
4825 ;;
4826
4827 # libtool uninstall mode
4828 uninstall)
4829 modename="$modename: uninstall"
4830 rm="$nonopt"
4831 files=
4832
4833 for arg
4834 do
4835 case "$arg" in
4836 -*) rm="$rm $arg" ;;
4837 *) files="$files $arg" ;;
4838 esac
4839 done
4840
4841 if test -z "$rm"; then
4842 $echo "$modename: you must specify an RM program" 1>&2
4843 $echo "$help" 1>&2
4844 exit 1
4845 fi
4846
4847 for file in $files; do
4848 dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
4849 test "X$dir" = "X$file" && dir=.
4850 name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
4851
4852 rmfiles="$file"
4853
4854 case "$name" in
4855 *.la)
4856 # Possibly a libtool archive, so verify it.
4857 if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
4858 . $dir/$name
4859
4860 # Delete the libtool libraries and symlinks.
4861 for n in $library_names; do
4862 rmfiles="$rmfiles $dir/$n"
4863 done
4864 test -n "$old_library" && rmfiles="$rmfiles $dir/$old_library"
4865
4866 $show "$rm $rmfiles"
4867 $run $rm $rmfiles
4868
4869 if test -n "$library_names"; then
4870 # Do each command in the postuninstall commands.
4871 eval cmds=\"$postuninstall_cmds\"
4872 IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
4873 for cmd in $cmds; do
4874 IFS="$save_ifs"
4875 $show "$cmd"
4876 $run eval "$cmd"
4877 done
4878 IFS="$save_ifs"
4879 fi
4880
4881 if test -n "$old_library"; then
4882 # Do each command in the old_postuninstall commands.
4883 eval cmds=\"$old_postuninstall_cmds\"
4884 IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
4885 for cmd in $cmds; do
4886 IFS="$save_ifs"
4887 $show "$cmd"
4888 $run eval "$cmd"
4889 done
4890 IFS="$save_ifs"
4891 fi
4892
4893 # FIXME: should reinstall the best remaining shared library.
4894 fi
4895 ;;
4896
4897 *.lo)
4898 if test "$build_old_libs" = yes; then
4899 oldobj=`$echo "X$name" | $Xsed -e "$lo2o"`
4900 rmfiles="$rmfiles $dir/$oldobj"
4901 fi
4902 $show "$rm $rmfiles"
4903 $run $rm $rmfiles
4904 ;;
4905
4906 *)
4907 $show "$rm $rmfiles"
4908 $run $rm $rmfiles
4909 ;;
4910 esac
4911 done
4912 exit 0
4913 ;;
4914
4915 "")
4916 $echo "$modename: you must specify a MODE" 1>&2
4917 $echo "$generic_help" 1>&2
4918 exit 1
4919 ;;
4920 esac
4921
4922 $echo "$modename: invalid operation mode \`$mode'" 1>&2
4923 $echo "$generic_help" 1>&2
4924 exit 1
4925 fi # test -z "$show_help"
4926
4927 # We need to display help for each of the modes.
4928 case "$mode" in
4929 "") $echo \
4930 "Usage: $modename [OPTION]... [MODE-ARG]...
4931
4932 Provide generalized library-building support services.
4933
4934 --config show all configuration variables
4935 --debug enable verbose shell tracing
4936 -n, --dry-run display commands without modifying any files
4937 --features display basic configuration information and exit
4938 --finish same as \`--mode=finish'
4939 --help display this help message and exit
4940 --mode=MODE use operation mode MODE [default=inferred from MODE-ARGS]
4941 --quiet same as \`--silent'
4942 --silent don't print informational messages
4943 --version print version information
4944
4945 MODE must be one of the following:
4946
4947 clean remove files from the build directory
4948 compile compile a source file into a libtool object
4949 execute automatically set library path, then run a program
4950 finish complete the installation of libtool libraries
4951 install install libraries or executables
4952 link create a library or an executable
4953 uninstall remove libraries from an installed directory
4954
4955 MODE-ARGS vary depending on the MODE. Try \`$modename --help --mode=MODE' for
4956 a more detailed description of MODE."
4957 exit 0
4958 ;;
4959
4960 clean)
4961 $echo \
4962 "Usage: $modename [OPTION]... --mode=clean RM [RM-OPTION]... FILE...
4963
4964 Remove files from the build directory.
4965
4966 RM is the name of the program to use to delete files associated with each FILE
4967 (typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed
4968 to RM.
4969
4970 If FILE is a libtool library, object or program, all the files associated
4971 with it are deleted. Otherwise, only FILE itself is deleted using RM."
4972 ;;
4973
4974 compile)
4975 $echo \
4976 "Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
4977
4978 Compile a source file into a libtool library object.
4979
4980 This mode accepts the following additional options:
4981
4982 -o OUTPUT-FILE set the output file name to OUTPUT-FILE
4983 -static always build a \`.o' file suitable for static linking
4984
4985 COMPILE-COMMAND is a command to be used in creating a \`standard' object file
4986 from the given SOURCEFILE.
4987
4988 The output file name is determined by removing the directory component from
4989 SOURCEFILE, then substituting the C source code suffix \`.c' with the
4990 library object suffix, \`.lo'."
4991 ;;
4992
4993 execute)
4994 $echo \
4995 "Usage: $modename [OPTION]... --mode=execute COMMAND [ARGS]...
4996
4997 Automatically set library path, then run a program.
4998
4999 This mode accepts the following additional options:
5000
5001 -dlopen FILE add the directory containing FILE to the library path
5002
5003 This mode sets the library path environment variable according to \`-dlopen'
5004 flags.
5005
5006 If any of the ARGS are libtool executable wrappers, then they are translated
5007 into their corresponding uninstalled binary, and any of their required library
5008 directories are added to the library path.
5009
5010 Then, COMMAND is executed, with ARGS as arguments."
5011 ;;
5012
5013 finish)
5014 $echo \
5015 "Usage: $modename [OPTION]... --mode=finish [LIBDIR]...
5016
5017 Complete the installation of libtool libraries.
5018
5019 Each LIBDIR is a directory that contains libtool libraries.
5020
5021 The commands that this mode executes may require superuser privileges. Use
5022 the \`--dry-run' option if you just want to see what would be executed."
5023 ;;
5024
5025 install)
5026 $echo \
5027 "Usage: $modename [OPTION]... --mode=install INSTALL-COMMAND...
5028
5029 Install executables or libraries.
5030
5031 INSTALL-COMMAND is the installation command. The first component should be
5032 either the \`install' or \`cp' program.
5033
5034 The rest of the components are interpreted as arguments to that command (only
5035 BSD-compatible install options are recognized)."
5036 ;;
5037
5038 link)
5039 $echo \
5040 "Usage: $modename [OPTION]... --mode=link LINK-COMMAND...
5041
5042 Link object files or libraries together to form another library, or to
5043 create an executable program.
5044
5045 LINK-COMMAND is a command using the C compiler that you would use to create
5046 a program from several object files.
5047
5048 The following components of LINK-COMMAND are treated specially:
5049
5050 -all-static do not do any dynamic linking at all
5051 -avoid-version do not add a version suffix if possible
5052 -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime
5053 -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols
5054 -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
5055 -export-symbols SYMFILE
5056 try to export only the symbols listed in SYMFILE
5057 -export-symbols-regex REGEX
5058 try to export only the symbols matching REGEX
5059 -LLIBDIR search LIBDIR for required installed libraries
5060 -lNAME OUTPUT-FILE requires the installed library libNAME
5061 -module build a library that can dlopened
5062 -no-fast-install disable the fast-install mode
5063 -no-install link a not-installable executable
5064 -no-undefined declare that a library does not refer to external symbols
5065 -o OUTPUT-FILE create OUTPUT-FILE from the specified objects
5066 -release RELEASE specify package release information
5067 -rpath LIBDIR the created library will eventually be installed in LIBDIR
5068 -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries
5069 -static do not do any dynamic linking of libtool libraries
5070 -version-info CURRENT[:REVISION[:AGE]]
5071 specify library version info [each variable defaults to 0]
5072
5073 All other options (arguments beginning with \`-') are ignored.
5074
5075 Every other argument is treated as a filename. Files ending in \`.la' are
5076 treated as uninstalled libtool libraries, other files are standard or library
5077 object files.
5078
5079 If the OUTPUT-FILE ends in \`.la', then a libtool library is created,
5080 only library objects (\`.lo' files) may be specified, and \`-rpath' is
5081 required, except when creating a convenience library.
5082
5083 If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created
5084 using \`ar' and \`ranlib', or on Windows using \`lib'.
5085
5086 If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file
5087 is created, otherwise an executable program is created."
5088 ;;
5089
5090 uninstall)
5091 $echo \
5092 "Usage: $modename [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE...
5093
5094 Remove libraries from an installation directory.
5095
5096 RM is the name of the program to use to delete files associated with each FILE
5097 (typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed
5098 to RM.
5099
5100 If FILE is a libtool library, all the files associated with it are deleted.
5101 Otherwise, only FILE itself is deleted using RM."
5102 ;;
5103
5104 *)
5105 $echo "$modename: invalid operation mode \`$mode'" 1>&2
5106 $echo "$help" 1>&2
5107 exit 1
5108 ;;
5109 esac
5110
5111 echo
5112 $echo "Try \`$modename --help' for more information about other modes."
5113
5114 exit 0
5115
5116 # Local Variables:
5117 # mode:shell-script
5118 # sh-indentation:2
5119 # End:
0
1 man_MANS = pipenightdreams.6
2
3 EXTRA_DIST = $(man_MANS)
0 # Makefile.in generated automatically by automake 1.4 from Makefile.am
1
2 # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
3 # This Makefile.in is free software; the Free Software Foundation
4 # gives unlimited permission to copy and/or distribute it,
5 # with or without modifications, as long as this notice is preserved.
6
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
9 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 # PARTICULAR PURPOSE.
11
12
13 SHELL = @SHELL@
14
15 srcdir = @srcdir@
16 top_srcdir = @top_srcdir@
17 VPATH = @srcdir@
18 prefix = @prefix@
19 exec_prefix = @exec_prefix@
20
21 bindir = @bindir@
22 sbindir = @sbindir@
23 libexecdir = @libexecdir@
24 datadir = @datadir@
25 sysconfdir = @sysconfdir@
26 sharedstatedir = @sharedstatedir@
27 localstatedir = @localstatedir@
28 libdir = @libdir@
29 infodir = @infodir@
30 mandir = @mandir@
31 includedir = @includedir@
32 oldincludedir = /usr/include
33
34 DESTDIR =
35
36 pkgdatadir = $(datadir)/@PACKAGE@
37 pkglibdir = $(libdir)/@PACKAGE@
38 pkgincludedir = $(includedir)/@PACKAGE@
39
40 top_builddir = ..
41
42 ACLOCAL = @ACLOCAL@
43 AUTOCONF = @AUTOCONF@
44 AUTOMAKE = @AUTOMAKE@
45 AUTOHEADER = @AUTOHEADER@
46
47 INSTALL = @INSTALL@
48 INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
49 INSTALL_DATA = @INSTALL_DATA@
50 INSTALL_SCRIPT = @INSTALL_SCRIPT@
51 transform = @program_transform_name@
52
53 NORMAL_INSTALL = :
54 PRE_INSTALL = :
55 POST_INSTALL = :
56 NORMAL_UNINSTALL = :
57 PRE_UNINSTALL = :
58 POST_UNINSTALL = :
59 host_alias = @host_alias@
60 host_triplet = @host@
61 AS = @AS@
62 CC = @CC@
63 CXX = @CXX@
64 DLLTOOL = @DLLTOOL@
65 LD = @LD@
66 LEX = @LEX@
67 LIBTOOL = @LIBTOOL@
68 LN_S = @LN_S@
69 MAKEINFO = @MAKEINFO@
70 NM = @NM@
71 OBJDUMP = @OBJDUMP@
72 PACKAGE = @PACKAGE@
73 RANLIB = @RANLIB@
74 SDL_CFLAGS = @SDL_CFLAGS@
75 SDL_CONFIG = @SDL_CONFIG@
76 SDL_LIBS = @SDL_LIBS@
77 VERSION = @VERSION@
78
79 man_MANS = pipenightdreams.6
80
81 EXTRA_DIST = $(man_MANS)
82 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
83 CONFIG_HEADER = ../src/config.h
84 CONFIG_CLEAN_FILES =
85 man6dir = $(mandir)/man6
86 MANS = $(man_MANS)
87
88 NROFF = nroff
89 DIST_COMMON = Makefile.am Makefile.in
90
91
92 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
93
94 TAR = tar
95 GZIP_ENV = --best
96 all: all-redirect
97 .SUFFIXES:
98 $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
99 cd $(top_srcdir) && $(AUTOMAKE) --gnu man/Makefile
100
101 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
102 cd $(top_builddir) \
103 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
104
105
106 install-man6:
107 $(mkinstalldirs) $(DESTDIR)$(man6dir)
108 @list='$(man6_MANS)'; \
109 l2='$(man_MANS)'; for i in $$l2; do \
110 case "$$i" in \
111 *.6*) list="$$list $$i" ;; \
112 esac; \
113 done; \
114 for i in $$list; do \
115 if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
116 else file=$$i; fi; \
117 ext=`echo $$i | sed -e 's/^.*\\.//'`; \
118 inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
119 inst=`echo $$inst | sed '$(transform)'`.$$ext; \
120 echo " $(INSTALL_DATA) $$file $(DESTDIR)$(man6dir)/$$inst"; \
121 $(INSTALL_DATA) $$file $(DESTDIR)$(man6dir)/$$inst; \
122 done
123
124 uninstall-man6:
125 @list='$(man6_MANS)'; \
126 l2='$(man_MANS)'; for i in $$l2; do \
127 case "$$i" in \
128 *.6*) list="$$list $$i" ;; \
129 esac; \
130 done; \
131 for i in $$list; do \
132 ext=`echo $$i | sed -e 's/^.*\\.//'`; \
133 inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
134 inst=`echo $$inst | sed '$(transform)'`.$$ext; \
135 echo " rm -f $(DESTDIR)$(man6dir)/$$inst"; \
136 rm -f $(DESTDIR)$(man6dir)/$$inst; \
137 done
138 install-man: $(MANS)
139 @$(NORMAL_INSTALL)
140 $(MAKE) $(AM_MAKEFLAGS) install-man6
141 uninstall-man:
142 @$(NORMAL_UNINSTALL)
143 $(MAKE) $(AM_MAKEFLAGS) uninstall-man6
144 tags: TAGS
145 TAGS:
146
147
148 distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
149
150 subdir = man
151
152 distdir: $(DISTFILES)
153 here=`cd $(top_builddir) && pwd`; \
154 top_distdir=`cd $(top_distdir) && pwd`; \
155 distdir=`cd $(distdir) && pwd`; \
156 cd $(top_srcdir) \
157 && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu man/Makefile
158 @for file in $(DISTFILES); do \
159 d=$(srcdir); \
160 if test -d $$d/$$file; then \
161 cp -pr $$d/$$file $(distdir)/$$file; \
162 else \
163 test -f $(distdir)/$$file \
164 || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
165 || cp -p $$d/$$file $(distdir)/$$file || :; \
166 fi; \
167 done
168 info-am:
169 info: info-am
170 dvi-am:
171 dvi: dvi-am
172 check-am: all-am
173 check: check-am
174 installcheck-am:
175 installcheck: installcheck-am
176 install-exec-am:
177 install-exec: install-exec-am
178
179 install-data-am: install-man
180 install-data: install-data-am
181
182 install-am: all-am
183 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
184 install: install-am
185 uninstall-am: uninstall-man
186 uninstall: uninstall-am
187 all-am: Makefile $(MANS)
188 all-redirect: all-am
189 install-strip:
190 $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
191 installdirs:
192 $(mkinstalldirs) $(DESTDIR)$(mandir)/man6
193
194
195 mostlyclean-generic:
196
197 clean-generic:
198
199 distclean-generic:
200 -rm -f Makefile $(CONFIG_CLEAN_FILES)
201 -rm -f config.cache config.log stamp-h stamp-h[0-9]*
202
203 maintainer-clean-generic:
204 mostlyclean-am: mostlyclean-generic
205
206 mostlyclean: mostlyclean-am
207
208 clean-am: clean-generic mostlyclean-am
209
210 clean: clean-am
211
212 distclean-am: distclean-generic clean-am
213
214 distclean: distclean-am
215
216 maintainer-clean-am: maintainer-clean-generic distclean-am
217 @echo "This command is intended for maintainers to use;"
218 @echo "it deletes files that may require special tools to rebuild."
219
220 maintainer-clean: maintainer-clean-am
221
222 .PHONY: install-man6 uninstall-man6 install-man uninstall-man tags \
223 distdir info-am info dvi-am dvi check check-am installcheck-am \
224 installcheck install-exec-am install-exec install-data-am install-data \
225 install-am install uninstall-am uninstall all-redirect all-am all \
226 installdirs mostlyclean-generic distclean-generic clean-generic \
227 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
228
229
230 # Tell versions [3.59,3.63) of GNU make to not export all variables.
231 # Otherwise a system limit (for SysV at least) may be exceeded.
232 .NOEXPORT:
0
1
2
3 PIPENIGHTDREAMS(6) PIPENIGHTDREAMS(6)
4
5
6 NNAAMMEE
7 pipenightdreams - Just another pipe trip (PipeDream clon).
8
9
10 SSYYNNOOPPSSIISS
11 ppiippeenniigghhttddrreeaammss [--datadir <DATADIR>]
12
13
14 DDEESSCCRRIIPPTTIIOONN
15 ppiippeenniigghhttddrreeaammss is a PipeDream style game. The objetive
16 of the game is to carry liquid from some point to the exit
17 using different kinds of pipes. On each level there is a
18 minimum number of required pipes that should be at least
19 reached for it to be completed.
20
21 The score is increased by using as many pipes as possible
22 an by collecting various bonus tokens making the liquid
23 pass through their places. There are also life bonus and,
24 hopefully soon, "freeze tokens".
25
26 The game is not exactly a copy of PipeDream. It's based
27 only on the facts I remember and in many other things
28 which have been added, or changed hoping for making it
29 better.
30
31
32 KKEEYYSS
33 The game is entirely played using the keyboard and the key
34 layout is as follows:
35
36 SPACE Puts the next pipe where the pointer is.
37
38 CURSOR KEYS
39 Move the pointer.
40
41 ENTER Speeds up the liquid (Avoids skillful players to
42 get bored).
43
44 ESC Goes back to the main screen or exits.
45
46
47 BBOONNUUSS TTYYPPEESS
48 The various types of bonus tokens are the following:
49
50
51 LIFE BONUS
52 The purple one with a "L" on it.
53
54 SUPER BONUS
55 The red one with a "B" on it.
56
57 ULTRA BONUS
58 The blue one.
59
60
61
62
63 22 Sep 2001 1
64
65
66
67
68
69 PIPENIGHTDREAMS(6) PIPENIGHTDREAMS(6)
70
71
72 HYPER BONUS
73 The green one.
74
75
76
77 OOPPTTIIOONNSS
78 ----ddaattaaddiirr <<CCUUSSTTOOMM DDAATTAA DDIIRR>> is used when the data direcĀ­
79 tory is not the default one ( //uussrr//sshhaarree//ggaammeess//ppiippeenniigghhttĀ­Ā­
80 ddrreeaammss if installed from a rpm package and
81 //uussrr//llooccaall//sshhaarree//ggaammeess//ppiippeenniigghhttddrreeaammss when installed by
82 compiling the source package).
83
84
85 BBUUGGSS
86 Not known.
87
88
89 SSEEEE AALLSSOO
90 Pipenightdreams home page at
91
92 http://www.libsdl.org/projects/pipenightdreams
93
94
95 AAUUTTHHOORRSS
96 Waldemar A. Baraldi <baraldi@lacasilla.com.ar>
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129 22 Sep 2001 2
130
131
0 #! /bin/sh
1 # Common stub for a few missing GNU programs while installing.
2 # Copyright (C) 1996, 1997 Free Software Foundation, Inc.
3 # Franc,ois Pinard <pinard@iro.umontreal.ca>, 1996.
4
5 # This program is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 2, or (at your option)
8 # any later version.
9
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
14
15 # You should have received a copy of the GNU General Public License
16 # along with this program; if not, write to the Free Software
17 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
18 # 02111-1307, USA.
19
20 if test $# -eq 0; then
21 echo 1>&2 "Try \`$0 --help' for more information"
22 exit 1
23 fi
24
25 case "$1" in
26
27 -h|--h|--he|--hel|--help)
28 echo "\
29 $0 [OPTION]... PROGRAM [ARGUMENT]...
30
31 Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
32 error status if there is no known handling for PROGRAM.
33
34 Options:
35 -h, --help display this help and exit
36 -v, --version output version information and exit
37
38 Supported PROGRAM values:
39 aclocal touch file \`aclocal.m4'
40 autoconf touch file \`configure'
41 autoheader touch file \`config.h.in'
42 automake touch all \`Makefile.in' files
43 bison create \`y.tab.[ch]', if possible, from existing .[ch]
44 flex create \`lex.yy.c', if possible, from existing .c
45 lex create \`lex.yy.c', if possible, from existing .c
46 makeinfo touch the output file
47 yacc create \`y.tab.[ch]', if possible, from existing .[ch]"
48 ;;
49
50 -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
51 echo "missing - GNU libit 0.0"
52 ;;
53
54 -*)
55 echo 1>&2 "$0: Unknown \`$1' option"
56 echo 1>&2 "Try \`$0 --help' for more information"
57 exit 1
58 ;;
59
60 aclocal)
61 echo 1>&2 "\
62 WARNING: \`$1' is missing on your system. You should only need it if
63 you modified \`acinclude.m4' or \`configure.in'. You might want
64 to install the \`Automake' and \`Perl' packages. Grab them from
65 any GNU archive site."
66 touch aclocal.m4
67 ;;
68
69 autoconf)
70 echo 1>&2 "\
71 WARNING: \`$1' is missing on your system. You should only need it if
72 you modified \`configure.in'. You might want to install the
73 \`Autoconf' and \`GNU m4' packages. Grab them from any GNU
74 archive site."
75 touch configure
76 ;;
77
78 autoheader)
79 echo 1>&2 "\
80 WARNING: \`$1' is missing on your system. You should only need it if
81 you modified \`acconfig.h' or \`configure.in'. You might want
82 to install the \`Autoconf' and \`GNU m4' packages. Grab them
83 from any GNU archive site."
84 files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER([^):]*:\([^)]*\)).*/\1/p' configure.in`
85 if test -z "$files"; then
86 files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^):]*\)).*/\1/p' configure.in`
87 test -z "$files" || files="$files.in"
88 else
89 files=`echo "$files" | sed -e 's/:/ /g'`
90 fi
91 test -z "$files" && files="config.h.in"
92 touch $files
93 ;;
94
95 automake)
96 echo 1>&2 "\
97 WARNING: \`$1' is missing on your system. You should only need it if
98 you modified \`Makefile.am', \`acinclude.m4' or \`configure.in'.
99 You might want to install the \`Automake' and \`Perl' packages.
100 Grab them from any GNU archive site."
101 find . -type f -name Makefile.am -print \
102 | sed 's/^\(.*\).am$/touch \1.in/' \
103 | sh
104 ;;
105
106 bison|yacc)
107 echo 1>&2 "\
108 WARNING: \`$1' is missing on your system. You should only need it if
109 you modified a \`.y' file. You may need the \`Bison' package
110 in order for those modifications to take effect. You can get
111 \`Bison' from any GNU archive site."
112 rm -f y.tab.c y.tab.h
113 if [ $# -ne 1 ]; then
114 eval LASTARG="\${$#}"
115 case "$LASTARG" in
116 *.y)
117 SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
118 if [ -f "$SRCFILE" ]; then
119 cp "$SRCFILE" y.tab.c
120 fi
121 SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
122 if [ -f "$SRCFILE" ]; then
123 cp "$SRCFILE" y.tab.h
124 fi
125 ;;
126 esac
127 fi
128 if [ ! -f y.tab.h ]; then
129 echo >y.tab.h
130 fi
131 if [ ! -f y.tab.c ]; then
132 echo 'main() { return 0; }' >y.tab.c
133 fi
134 ;;
135
136 lex|flex)
137 echo 1>&2 "\
138 WARNING: \`$1' is missing on your system. You should only need it if
139 you modified a \`.l' file. You may need the \`Flex' package
140 in order for those modifications to take effect. You can get
141 \`Flex' from any GNU archive site."
142 rm -f lex.yy.c
143 if [ $# -ne 1 ]; then
144 eval LASTARG="\${$#}"
145 case "$LASTARG" in
146 *.l)
147 SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
148 if [ -f "$SRCFILE" ]; then
149 cp "$SRCFILE" lex.yy.c
150 fi
151 ;;
152 esac
153 fi
154 if [ ! -f lex.yy.c ]; then
155 echo 'main() { return 0; }' >lex.yy.c
156 fi
157 ;;
158
159 makeinfo)
160 echo 1>&2 "\
161 WARNING: \`$1' is missing on your system. You should only need it if
162 you modified a \`.texi' or \`.texinfo' file, or any other file
163 indirectly affecting the aspect of the manual. The spurious
164 call might also be the consequence of using a buggy \`make' (AIX,
165 DU, IRIX). You might want to install the \`Texinfo' package or
166 the \`GNU make' package. Grab either from any GNU archive site."
167 file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
168 if test -z "$file"; then
169 file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
170 file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file`
171 fi
172 touch $file
173 ;;
174
175 *)
176 echo 1>&2 "\
177 WARNING: \`$1' is needed, and you do not seem to have it handy on your
178 system. You might have modified some files without having the
179 proper tools for further handling them. Check the \`README' file,
180 it often tells you about the needed prerequirements for installing
181 this package. You may also peek at any GNU archive site, in case
182 some other package would contain this missing \`$1' program."
183 exit 1
184 ;;
185 esac
186
187 exit 0
0 #! /bin/sh
1 # mkinstalldirs --- make directory hierarchy
2 # Author: Noah Friedman <friedman@prep.ai.mit.edu>
3 # Created: 1993-05-16
4 # Public domain
5
6 # $Id: mkinstalldirs,v 1.10 1996/05/03 07:37:52 friedman Exp $
7
8 errstatus=0
9
10 for file
11 do
12 set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
13 shift
14
15 pathcomp=
16 for d
17 do
18 pathcomp="$pathcomp$d"
19 case "$pathcomp" in
20 -* ) pathcomp=./$pathcomp ;;
21 esac
22
23 if test ! -d "$pathcomp"; then
24 echo "mkdir $pathcomp" 1>&2
25
26 mkdir "$pathcomp" || lasterr=$?
27
28 if test ! -d "$pathcomp"; then
29 errstatus=$lasterr
30 fi
31 fi
32
33 pathcomp="$pathcomp/"
34 done
35 done
36
37 exit $errstatus
38
39 # mkinstalldirs ends here
0 Begin3
1 Title: PipeNightDreams
2 Version: 0.9.0
3 Entered-date: 02/07/2001
4 Description: A PipeDream clon.
5 Keywords: Puzzle Pipe
6 Author: Waldemar A. Baraldi <baraldi@lacasilla.com.ar>
7 Maintained-by: Waldemar A. Baraldi <baraldi@lacasilla.com.ar>
8 Primary-site: http://www.libsdl.org/projects/pipenightdreams
9 Home-page: http://www.libsdl.org/projects/pipenightdreams
10 Original-site: http://www.libsdl.org/projects/pipenightdreams
11 Platforms: Linux and other Unices
12 Copying-policy: GNU Public License
13 End
0
1 bin_PROGRAMS = pipenightdreams
2
3 pipenightdreams_SOURCES = object.cpp wallpaper.cpp videomanager.cpp verticalbowl.cpp vertical.cpp tank.cpp surface.cpp str.cpp score.cpp random.cpp pointer.cpp player.cpp pipequeue.cpp pipenightdreams.cpp pipe.cpp mosaic.cpp list.cpp level.ll imagemanager.cpp image.cpp horizontalbowl.cpp horizontal.cpp hash.cpp graphic.cpp exit.cpp eventstream.cpp eventmanager.cpp entry.cpp elbowupright.cpp elbowupleft.cpp elbowdownright.cpp elbowdownleft.cpp cross.cpp canvas.cpp board.cpp main.cpp
4
5 pipenightdreams_LDADD =
6
7 EXTRA_DIST = main.cpp animatedcanvas.h background.h board.cpp board.h canvas.cpp canvas.h cross.cpp cross.h elbowdownleft.cpp elbowdownleft.h elbowdownright.cpp elbowdownright.h elbowupleft.cpp elbowupleft.h elbowupright.cpp elbowupright.h entry.cpp entry.h eventmanager.cpp eventmanager.h eventstream.cpp eventstream.h exit.cpp exit.h graphic.cpp graphic.h hash.cpp hash.h horizontal.cpp horizontal.h horizontalbowl.cpp horizontalbowl.h image.cpp image.h imagemanager.cpp imagemanager.h level.h level.ll list.cpp list.h mosaic.cpp mosaic.h object.h pipe.cpp pipe.h pipenightdreams.cpp pipenightdreams.h pipequeue.cpp pipequeue.h player.cpp player.h playeronestream.h pointer.cpp pointer.h pointercross.h pointerelbowdownleft.h pointerelbowdownright.h pointerelbowupleft.h pointerelbowupright.h pointerhorizontal.h pointerhorizontalbowl.h pointernone.h pointervertical.h pointerverticalbowl.h random.cpp random.h score.cpp score.h str.cpp str.h surface.cpp surface.h systemstream.h tank.cpp tank.h vertical.cpp vertical.h verticalbowl.cpp verticalbowl.h videomanager.cpp videomanager.h wallpaper.cpp wallpaper.h object.cpp
8
0 # Makefile.in generated automatically by automake 1.4 from Makefile.am
1
2 # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
3 # This Makefile.in is free software; the Free Software Foundation
4 # gives unlimited permission to copy and/or distribute it,
5 # with or without modifications, as long as this notice is preserved.
6
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
9 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10 # PARTICULAR PURPOSE.
11
12
13 SHELL = @SHELL@
14
15 srcdir = @srcdir@
16 top_srcdir = @top_srcdir@
17 VPATH = @srcdir@
18 prefix = @prefix@
19 exec_prefix = @exec_prefix@
20
21 bindir = @bindir@
22 sbindir = @sbindir@
23 libexecdir = @libexecdir@
24 datadir = @datadir@
25 sysconfdir = @sysconfdir@
26 sharedstatedir = @sharedstatedir@
27 localstatedir = @localstatedir@
28 libdir = @libdir@
29 infodir = @infodir@
30 mandir = @mandir@
31 includedir = @includedir@
32 oldincludedir = /usr/include
33
34 DESTDIR =
35
36 pkgdatadir = $(datadir)/@PACKAGE@
37 pkglibdir = $(libdir)/@PACKAGE@
38 pkgincludedir = $(includedir)/@PACKAGE@
39
40 top_builddir = ..
41
42 ACLOCAL = @ACLOCAL@
43 AUTOCONF = @AUTOCONF@
44 AUTOMAKE = @AUTOMAKE@
45 AUTOHEADER = @AUTOHEADER@
46
47 INSTALL = @INSTALL@
48 INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
49 INSTALL_DATA = @INSTALL_DATA@
50 INSTALL_SCRIPT = @INSTALL_SCRIPT@
51 transform = @program_transform_name@
52
53 NORMAL_INSTALL = :
54 PRE_INSTALL = :
55 POST_INSTALL = :
56 NORMAL_UNINSTALL = :
57 PRE_UNINSTALL = :
58 POST_UNINSTALL = :
59 host_alias = @host_alias@
60 host_triplet = @host@
61 AS = @AS@
62 CC = @CC@
63 CXX = @CXX@
64 DLLTOOL = @DLLTOOL@
65 LD = @LD@
66 LEX = @LEX@
67 LIBTOOL = @LIBTOOL@
68 LN_S = @LN_S@
69 MAKEINFO = @MAKEINFO@
70 NM = @NM@
71 OBJDUMP = @OBJDUMP@
72 PACKAGE = @PACKAGE@
73 RANLIB = @RANLIB@
74 SDL_CFLAGS = @SDL_CFLAGS@
75 SDL_CONFIG = @SDL_CONFIG@
76 SDL_LIBS = @SDL_LIBS@
77 VERSION = @VERSION@
78
79 bin_PROGRAMS = pipenightdreams
80
81 pipenightdreams_SOURCES = object.cpp wallpaper.cpp videomanager.cpp verticalbowl.cpp vertical.cpp tank.cpp surface.cpp str.cpp score.cpp random.cpp pointer.cpp player.cpp pipequeue.cpp pipenightdreams.cpp pipe.cpp mosaic.cpp list.cpp level.ll imagemanager.cpp image.cpp horizontalbowl.cpp horizontal.cpp hash.cpp graphic.cpp exit.cpp eventstream.cpp eventmanager.cpp entry.cpp elbowupright.cpp elbowupleft.cpp elbowdownright.cpp elbowdownleft.cpp cross.cpp canvas.cpp board.cpp main.cpp
82
83 pipenightdreams_LDADD =
84
85 EXTRA_DIST = main.cpp animatedcanvas.h background.h board.cpp board.h canvas.cpp canvas.h cross.cpp cross.h elbowdownleft.cpp elbowdownleft.h elbowdownright.cpp elbowdownright.h elbowupleft.cpp elbowupleft.h elbowupright.cpp elbowupright.h entry.cpp entry.h eventmanager.cpp eventmanager.h eventstream.cpp eventstream.h exit.cpp exit.h graphic.cpp graphic.h hash.cpp hash.h horizontal.cpp horizontal.h horizontalbowl.cpp horizontalbowl.h image.cpp image.h imagemanager.cpp imagemanager.h level.h level.ll list.cpp list.h mosaic.cpp mosaic.h object.h pipe.cpp pipe.h pipenightdreams.cpp pipenightdreams.h pipequeue.cpp pipequeue.h player.cpp player.h playeronestream.h pointer.cpp pointer.h pointercross.h pointerelbowdownleft.h pointerelbowdownright.h pointerelbowupleft.h pointerelbowupright.h pointerhorizontal.h pointerhorizontalbowl.h pointernone.h pointervertical.h pointerverticalbowl.h random.cpp random.h score.cpp score.h str.cpp str.h surface.cpp surface.h systemstream.h tank.cpp tank.h vertical.cpp vertical.h verticalbowl.cpp verticalbowl.h videomanager.cpp videomanager.h wallpaper.cpp wallpaper.h object.cpp
86 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
87 CONFIG_HEADER = config.h
88 CONFIG_CLEAN_FILES =
89 PROGRAMS = $(bin_PROGRAMS)
90
91
92 DEFS = @DEFS@ -I. -I$(srcdir) -I.
93 CPPFLAGS = @CPPFLAGS@
94 LDFLAGS = @LDFLAGS@
95 LIBS = @LIBS@
96 pipenightdreams_OBJECTS = object.o wallpaper.o videomanager.o \
97 verticalbowl.o vertical.o tank.o surface.o str.o score.o random.o \
98 pointer.o player.o pipequeue.o pipenightdreams.o pipe.o mosaic.o list.o \
99 level.o imagemanager.o image.o horizontalbowl.o horizontal.o hash.o \
100 graphic.o exit.o eventstream.o eventmanager.o entry.o elbowupright.o \
101 elbowupleft.o elbowdownright.o elbowdownleft.o cross.o canvas.o board.o \
102 main.o
103 pipenightdreams_DEPENDENCIES =
104 pipenightdreams_LDFLAGS =
105 CXXFLAGS = @CXXFLAGS@
106 CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
107 CXXLD = $(CXX)
108 CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@
109 LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
110 LEXLIB = @LEXLIB@
111 CFLAGS = @CFLAGS@
112 COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
113 CCLD = $(CC)
114 LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
115 DIST_COMMON = ./stamp-h.in Makefile.am Makefile.in config.h.in level.cc
116
117
118 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
119
120 TAR = tar
121 GZIP_ENV = --best
122 DEP_FILES = .deps/board.P .deps/canvas.P .deps/cross.P \
123 .deps/elbowdownleft.P .deps/elbowdownright.P .deps/elbowupleft.P \
124 .deps/elbowupright.P .deps/entry.P .deps/eventmanager.P \
125 .deps/eventstream.P .deps/exit.P .deps/graphic.P .deps/hash.P \
126 .deps/horizontal.P .deps/horizontalbowl.P .deps/image.P \
127 .deps/imagemanager.P .deps/level.P .deps/list.P .deps/main.P \
128 .deps/mosaic.P .deps/object.P .deps/pipe.P .deps/pipenightdreams.P \
129 .deps/pipequeue.P .deps/player.P .deps/pointer.P .deps/random.P \
130 .deps/score.P .deps/str.P .deps/surface.P .deps/tank.P .deps/vertical.P \
131 .deps/verticalbowl.P .deps/videomanager.P .deps/wallpaper.P
132 SOURCES = $(pipenightdreams_SOURCES)
133 OBJECTS = $(pipenightdreams_OBJECTS)
134
135 all: all-redirect
136 .SUFFIXES:
137 .SUFFIXES: .S .c .cc .cpp .ll .o .s
138 $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
139 cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile
140
141 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
142 cd $(top_builddir) \
143 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
144
145
146 config.h: stamp-h
147 @if test ! -f $@; then \
148 rm -f stamp-h; \
149 $(MAKE) stamp-h; \
150 else :; fi
151 stamp-h: $(srcdir)/config.h.in $(top_builddir)/config.status
152 cd $(top_builddir) \
153 && CONFIG_FILES= CONFIG_HEADERS=src/config.h \
154 $(SHELL) ./config.status
155 @echo timestamp > stamp-h 2> /dev/null
156 $(srcdir)/config.h.in: $(srcdir)/stamp-h.in
157 @if test ! -f $@; then \
158 rm -f $(srcdir)/stamp-h.in; \
159 $(MAKE) $(srcdir)/stamp-h.in; \
160 else :; fi
161 $(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4)
162 cd $(top_srcdir) && $(AUTOHEADER)
163 @echo timestamp > $(srcdir)/stamp-h.in 2> /dev/null
164
165 mostlyclean-hdr:
166
167 clean-hdr:
168
169 distclean-hdr:
170 -rm -f config.h
171
172 maintainer-clean-hdr:
173
174 mostlyclean-binPROGRAMS:
175
176 clean-binPROGRAMS:
177 -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
178
179 distclean-binPROGRAMS:
180
181 maintainer-clean-binPROGRAMS:
182
183 install-binPROGRAMS: $(bin_PROGRAMS)
184 @$(NORMAL_INSTALL)
185 $(mkinstalldirs) $(DESTDIR)$(bindir)
186 @list='$(bin_PROGRAMS)'; for p in $$list; do \
187 if test -f $$p; then \
188 echo " $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`"; \
189 $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \
190 else :; fi; \
191 done
192
193 uninstall-binPROGRAMS:
194 @$(NORMAL_UNINSTALL)
195 list='$(bin_PROGRAMS)'; for p in $$list; do \
196 rm -f $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \
197 done
198
199 .s.o:
200 $(COMPILE) -c $<
201
202 .S.o:
203 $(COMPILE) -c $<
204
205 mostlyclean-compile:
206 -rm -f *.o core *.core
207
208 clean-compile:
209
210 distclean-compile:
211 -rm -f *.tab.c
212
213 maintainer-clean-compile:
214
215 pipenightdreams: $(pipenightdreams_OBJECTS) $(pipenightdreams_DEPENDENCIES)
216 @rm -f pipenightdreams
217 $(CXXLINK) $(pipenightdreams_LDFLAGS) $(pipenightdreams_OBJECTS) $(pipenightdreams_LDADD) $(LIBS)
218 .cc.o:
219 $(CXXCOMPILE) -c $<
220 .cpp.o:
221 $(CXXCOMPILE) -c $<
222 .ll.cc:
223 $(LEX) $(AM_LFLAGS) $(LFLAGS) $< && mv $(LEX_OUTPUT_ROOT).c $@
224
225 tags: TAGS
226
227 ID: $(HEADERS) $(SOURCES) $(LISP)
228 list='$(SOURCES) $(HEADERS)'; \
229 unique=`for i in $$list; do echo $$i; done | \
230 awk ' { files[$$0] = 1; } \
231 END { for (i in files) print i; }'`; \
232 here=`pwd` && cd $(srcdir) \
233 && mkid -f$$here/ID $$unique $(LISP)
234
235 TAGS: $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) $(LISP)
236 tags=; \
237 here=`pwd`; \
238 list='$(SOURCES) $(HEADERS)'; \
239 unique=`for i in $$list; do echo $$i; done | \
240 awk ' { files[$$0] = 1; } \
241 END { for (i in files) print i; }'`; \
242 test -z "$(ETAGS_ARGS)config.h.in$$unique$(LISP)$$tags" \
243 || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags config.h.in $$unique $(LISP) -o $$here/TAGS)
244
245 mostlyclean-tags:
246
247 clean-tags:
248
249 distclean-tags:
250 -rm -f TAGS ID
251
252 maintainer-clean-tags:
253
254 distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
255
256 subdir = src
257
258 distdir: $(DISTFILES)
259 here=`cd $(top_builddir) && pwd`; \
260 top_distdir=`cd $(top_distdir) && pwd`; \
261 distdir=`cd $(distdir) && pwd`; \
262 cd $(top_srcdir) \
263 && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu src/Makefile
264 @for file in $(DISTFILES); do \
265 d=$(srcdir); \
266 if test -d $$d/$$file; then \
267 cp -pr $$d/$$file $(distdir)/$$file; \
268 else \
269 test -f $(distdir)/$$file \
270 || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
271 || cp -p $$d/$$file $(distdir)/$$file || :; \
272 fi; \
273 done
274
275 DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :)
276
277 -include $(DEP_FILES)
278
279 mostlyclean-depend:
280
281 clean-depend:
282
283 distclean-depend:
284 -rm -rf .deps
285
286 maintainer-clean-depend:
287
288 %.o: %.c
289 @echo '$(COMPILE) -c $<'; \
290 $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
291 @-cp .deps/$(*F).pp .deps/$(*F).P; \
292 tr ' ' '\012' < .deps/$(*F).pp \
293 | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
294 >> .deps/$(*F).P; \
295 rm .deps/$(*F).pp
296
297 %.lo: %.c
298 @echo '$(LTCOMPILE) -c $<'; \
299 $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
300 @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \
301 < .deps/$(*F).pp > .deps/$(*F).P; \
302 tr ' ' '\012' < .deps/$(*F).pp \
303 | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
304 >> .deps/$(*F).P; \
305 rm -f .deps/$(*F).pp
306
307 %.o: %.cc
308 @echo '$(CXXCOMPILE) -c $<'; \
309 $(CXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
310 @-cp .deps/$(*F).pp .deps/$(*F).P; \
311 tr ' ' '\012' < .deps/$(*F).pp \
312 | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
313 >> .deps/$(*F).P; \
314 rm .deps/$(*F).pp
315
316 %.lo: %.cc
317 @echo '$(LTCXXCOMPILE) -c $<'; \
318 $(LTCXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
319 @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \
320 < .deps/$(*F).pp > .deps/$(*F).P; \
321 tr ' ' '\012' < .deps/$(*F).pp \
322 | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
323 >> .deps/$(*F).P; \
324 rm -f .deps/$(*F).pp
325
326 %.o: %.cpp
327 @echo '$(CXXCOMPILE) -c $<'; \
328 $(CXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
329 @-cp .deps/$(*F).pp .deps/$(*F).P; \
330 tr ' ' '\012' < .deps/$(*F).pp \
331 | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
332 >> .deps/$(*F).P; \
333 rm .deps/$(*F).pp
334
335 %.lo: %.cpp
336 @echo '$(LTCXXCOMPILE) -c $<'; \
337 $(LTCXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
338 @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \
339 < .deps/$(*F).pp > .deps/$(*F).P; \
340 tr ' ' '\012' < .deps/$(*F).pp \
341 | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
342 >> .deps/$(*F).P; \
343 rm -f .deps/$(*F).pp
344 info-am:
345 info: info-am
346 dvi-am:
347 dvi: dvi-am
348 check-am: all-am
349 check: check-am
350 installcheck-am:
351 installcheck: installcheck-am
352 all-recursive-am: config.h
353 $(MAKE) $(AM_MAKEFLAGS) all-recursive
354
355 install-exec-am: install-binPROGRAMS
356 install-exec: install-exec-am
357
358 install-data-am:
359 install-data: install-data-am
360
361 install-am: all-am
362 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
363 install: install-am
364 uninstall-am: uninstall-binPROGRAMS
365 uninstall: uninstall-am
366 all-am: Makefile $(PROGRAMS) config.h
367 all-redirect: all-am
368 install-strip:
369 $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
370 installdirs:
371 $(mkinstalldirs) $(DESTDIR)$(bindir)
372
373
374 mostlyclean-generic:
375
376 clean-generic:
377
378 distclean-generic:
379 -rm -f Makefile $(CONFIG_CLEAN_FILES)
380 -rm -f config.cache config.log stamp-h stamp-h[0-9]*
381
382 maintainer-clean-generic:
383 -test -z "levelll" || rm -f levelll
384 mostlyclean-am: mostlyclean-hdr mostlyclean-binPROGRAMS \
385 mostlyclean-compile mostlyclean-tags mostlyclean-depend \
386 mostlyclean-generic
387
388 mostlyclean: mostlyclean-am
389
390 clean-am: clean-hdr clean-binPROGRAMS clean-compile clean-tags \
391 clean-depend clean-generic mostlyclean-am
392
393 clean: clean-am
394
395 distclean-am: distclean-hdr distclean-binPROGRAMS distclean-compile \
396 distclean-tags distclean-depend distclean-generic \
397 clean-am
398
399 distclean: distclean-am
400
401 maintainer-clean-am: maintainer-clean-hdr maintainer-clean-binPROGRAMS \
402 maintainer-clean-compile maintainer-clean-tags \
403 maintainer-clean-depend maintainer-clean-generic \
404 distclean-am
405 @echo "This command is intended for maintainers to use;"
406 @echo "it deletes files that may require special tools to rebuild."
407
408 maintainer-clean: maintainer-clean-am
409
410 .PHONY: mostlyclean-hdr distclean-hdr clean-hdr maintainer-clean-hdr \
411 mostlyclean-binPROGRAMS distclean-binPROGRAMS clean-binPROGRAMS \
412 maintainer-clean-binPROGRAMS uninstall-binPROGRAMS install-binPROGRAMS \
413 mostlyclean-compile distclean-compile clean-compile \
414 maintainer-clean-compile tags mostlyclean-tags distclean-tags \
415 clean-tags maintainer-clean-tags distdir mostlyclean-depend \
416 distclean-depend clean-depend maintainer-clean-depend info-am info \
417 dvi-am dvi check check-am installcheck-am installcheck all-recursive-am \
418 install-exec-am install-exec install-data-am install-data install-am \
419 install uninstall-am uninstall all-redirect all-am all installdirs \
420 mostlyclean-generic distclean-generic clean-generic \
421 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
422
423
424 # Tell versions [3.59,3.63) of GNU make to not export all variables.
425 # Otherwise a system limit (for SysV at least) may be exceeded.
426 .NOEXPORT:
0 /***************************************************************************
1 animatedcanvas.h - description
2 -------------------
3 begin : Wed Dec 6 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef ANIMATED_CANVAS_H
18 #define ANIMATED_CANVAS_H
19
20 #include "canvas.h"
21
22 /** Los canvas deben mantener algĆŗn tipo de estado que cambiarĆ”
23 o no cuando se les hagan llamadas a tick().
24 */
25
26 class AnimatedCanvas : public Canvas{
27
28 public:
29 /** Constructor*/
30 AnimatedCanvas():Canvas(){};
31
32 virtual ~AnimatedCanvas(){};
33
34 virtual void tick()=0;
35 };
36 #endif
37
38
0 /***************************************************************************
1 background.h - description
2 -------------------
3 begin : Wed Mar 21 2001
4 copyright : (C) 2001 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef BACKGROUND_H
18 #define BACKGROUND_H
19
20 #include "canvas.h"
21
22 class Background;
23
24 #include "board.h"
25 #include "pipe.h"
26
27 class Background: public Canvas{
28
29 public:
30 Background():Canvas(){};
31
32 int width(){return BoardColumns*PipeWidth;}
33 int height(){return BoardRows*PipeHeight;}
34
35 virtual void repaint(VideoManager * vm, int x, int y, int w, int h)=0;
36 };
37 #endif
38
0 /***************************************************************************
1 board.cpp - description
2 -------------------
3 begin : Thu Aug 17 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "board.h"
18 #include "player.h"
19 #include "mosaic.h"
20 #include "wallpaper.h"
21
22 #define MAX_SPEED 80
23
24 Board::Board():AnimatedCanvas(){
25 int i,j;
26
27 for (i=0;i<BoardRows;i++)
28 for (j=0;j<BoardColumns;j++){
29 board[i][j]=NULL;
30 changes[i][j]=false;
31 }
32 paint_all=true;
33 lps=new List();
34 flow_row=flow_column=-1;
35 entry=exit=NULL;
36 actual_output=Void;
37 actual_input=Void;
38 state=Playing;
39 tick_amount=1;
40 tank=NULL;
41 background=NULL;
42 required=0;
43 still_required=0;
44 required_changed=false;
45 entry_row=-1;
46 entry_column=-1;
47 }
48
49 Board::~Board(){
50 int i,j;
51 for (i=0;i<BoardRows;i++)
52 for (j=0;j<BoardColumns;j++)
53 if (board[i][j]) delete board[i][j];
54 delete lps;
55 if (background) delete background;
56 if (tank) delete tank;
57 }
58
59 void Board::setStartDelay(int delay){
60 if (tank) delete tank;
61 tank=new Tank(delay);
62 tank->setPos(TankX, TankY);
63 }
64
65 void Board::setEntry(Entry * entry, int row, int column){
66 flow_row=row;
67 flow_column=column;
68 actual_input=Void;
69 actual_output=entry->getOutput(Void);
70 setPipe(entry, row, column);
71 entry_row=row;
72 entry_column=column;
73 }
74
75 void Board::setExit(Exit * exit, int row, int column){
76 setPipe(exit, row, column);
77 }
78
79 bool Board::isRemovable(int row, int column){
80 if (board[row][column])
81 return board[row][column]->isRemovable();
82 return true;
83 }
84
85 void Board::setPipe(Pipe * pipe, int row, int column){
86 required_changed=true;
87 changes[row][column]=true;
88 Pipe * aux=board[row][column];
89 if (aux){
90 if (aux->isRemovable()){
91 delete aux;
92 board[row][column]=pipe;
93 pipe->setPos(column*pipe->width()+x, row*pipe->height()+y);
94 }
95 }else{
96 board[row][column]=pipe;
97 pipe->setPos(column*pipe->width()+x, row*pipe->height()+y);
98 }
99 }
100
101 Pipe * Board::getPipe(int row, int column){
102 return board[row][column];
103 }
104
105 BoardState Board::getState(){
106 return state;
107 }
108
109 unsigned int Board::getRequired(){
110 return required;
111 }
112
113 unsigned int Board::getStillRequired(){
114 if (!required_changed) return still_required;
115 else return (still_required=countStillRequired());
116 }
117
118 unsigned int Board::countStillRequired(){
119 int row=entry_row;
120 int column=entry_column;
121 bool end=false;
122 unsigned int used=0;
123
124 required_changed=false;
125
126 CardinalPoint con=board[row][column]->getOutput(Void);//Entry output
127 while (!end){
128 used++;
129 end=true;
130 switch (con){
131 case East:{
132 column++;
133 if (column<BoardColumns)
134 if (board[row][column] != NULL)
135 if (board[row][column]->hasConnection(West))
136 if (!board[row][column]->isRestrictedAsOutput(West)){
137 end=false;
138 con=board[row][column]->getOutput(West);
139 }
140 break;
141 }
142 case South:{
143 row++;
144 if (row<BoardRows)
145 if (board[row][column] != NULL)
146 if (board[row][column]->hasConnection(North))
147 if (!board[row][column]->isRestrictedAsOutput(North)){
148 end=false;
149 con=board[row][column]->getOutput(North);
150 }
151 break;
152 }
153 case West:{
154 column--;
155 if (column>=0)
156 if (board[row][column] != NULL)
157 if (board[row][column]->hasConnection(East))
158 if (!board[row][column]->isRestrictedAsOutput(East)){
159 end=false;
160 con=board[row][column]->getOutput(East);
161 }
162 break;
163 }
164 case North:{
165 row--;
166 if (row>=0)
167 if (board[row][column] != NULL)
168 if (board[row][column]->hasConnection(South))
169 if (!board[row][column]->isRestrictedAsOutput(South)){
170 end=false;
171 con=board[row][column]->getOutput(South);
172 }
173 break;
174 }
175 default:{
176 used--; //La salida no se cuenta como uno usado
177 break;
178 }
179 }
180 }//while
181 used--; //La entrada no se cuenta como usado
182 if (used>required)
183 return 0;
184 else return required-used;
185 }
186
187
188 void Board::addPointer(Pointer * p){
189 lps->insert(lps->getFirst(), (Pointer *)p);
190 }
191
192 void Board::removePointer(Pointer * p){
193 lps->remove(lps->indexOf((Pointer*)p));
194 }
195
196 void Board::movePointer(Pointer *p, int row, int column){
197 if (row>=0 && row<BoardRows && column>=0 && column<BoardColumns){
198 if (p->getRow()>=0 && p->getRow()<BoardRows && p->getColumn()>=0 && p->getColumn()<BoardColumns)
199 changes[p->getRow()][p->getColumn()]=true;
200 p->setRowColumn(row, column);
201 p->setMoved(true);
202 }
203 }
204
205 void Board::setPos(int x, int y){
206 Canvas::setPos(x,y);
207 int i,j;
208 for (i=0;i<BoardRows;i++)
209 for (j=0;j<BoardColumns;j++)
210 if (board[i][j])
211 board[i][j]->setPos(j*board[i][j]->width()+x, i*board[i][j]->height()+y);
212 paint_all=true;
213 }
214
215 void Board::setSpeed(int amount){
216 tick_amount=amount;
217 }
218
219 void Board::setMaxSpeed(){
220 tick_amount=MAX_SPEED;
221 }
222
223 void Board::setRequired(unsigned int value){
224 required=value;
225 required_changed=true;
226 }
227
228 void Board::setBackgroundType(BackgroundType type){
229 background_type=type;
230 }
231
232 void Board::tick(){
233 int aux;
234
235 tank->tick();
236 if (!(tank->isEmpty())){//Descuento del tanque
237 tank->decFullLevel(tick_amount);
238 changes[flow_row][flow_column]=true;
239 }
240 else{//Aumento el actual
241 aux=(getPipe(flow_row, flow_column))->getFullLevel(actual_input);
242 if (aux<(getPipe(flow_row, flow_column))->full()){
243 (getPipe(flow_row, flow_column))->incFullLevel(actual_input, tick_amount);
244 changes[flow_row][flow_column]=true;
245 }
246 else{//Paso al siguiente
247 Pipe * next=NULL;
248 Pipe * last=board[flow_row][flow_column];
249 actual_input=Void;
250 switch (actual_output){
251 case North:{
252 if (flow_row>0){
253 next=getPipe(--flow_row, flow_column);
254 actual_input=South;
255 }
256 break;
257 }
258 case South:{
259 if (flow_row<BoardRows-1){
260 next=getPipe(++flow_row, flow_column);
261 actual_input=North;
262 }
263 break;
264 }
265 case East:{
266 if (flow_column<BoardColumns-1){
267 next=getPipe(flow_row, ++flow_column);
268 actual_input=West;
269 }
270 break;
271 }
272 case West:{
273 if (flow_column>0){
274 next=getPipe(flow_row, --flow_column);
275 actual_input=East;
276 }
277 break;
278 }
279 default:break;
280 }
281 if (actual_output==Void)
282 if (getStillRequired()==0)
283 state=OverWon;
284 else
285 state=OverLost;
286 else
287 if (actual_input==Void){
288 state=OverLost;
289 }else{
290 if (next)
291 if (next->hasConnection(actual_input) && !(next->isRestrictedAsOutput(actual_input))){
292 actual_output=next->getOutput(actual_input);
293 next->incFullLevel(actual_input,tick_amount);
294
295 /** Bonus stuff*/
296 if (!next->getOwner() && last->getOwner())
297 next->setOwner(last->getOwner());
298
299 Player * owner;
300 if ((owner=next->getOwner()))
301 switch (next->getBonus()){
302 case LifeBonus:{
303 owner->incLives();
304 next->setBonus(NormalBonus);
305 break;
306 }
307 case TimeBonus:{
308 //Debera incrementarse el valor del tiempo en board.
309 break;
310 }
311 default:{
312 owner->incScore(next->getBonus());
313 }
314 }
315 /*End of Bonus stuff*/
316
317 changes[flow_row][flow_column]=true;
318 }else state=OverLost;
319 else state=OverLost;
320 }
321 }
322 }
323 }
324
325 void Board::paint(VideoManager * vm){
326 int i,j;
327 Index * index;
328 Pointer * aux;
329 int pc, pr;
330
331 if (!background){
332 Image * ima=vm->getImageManager()->getImage(new Str("board_back.jpg"));
333 switch (background_type){
334 case WallpaperBackground:{
335 background=new WallPaper(ima);
336 break;
337 }
338 case MosaicBackground:{
339 background=new Mosaic(ima);
340 break;
341 }
342 }
343 background->setPos(x, y);
344 }
345
346 /** Pinta todos los pipes.*/
347 if (paint_all){
348 background->paint(vm);
349 for (i=0;i<BoardRows;i++)
350 for (j=0;j<BoardColumns;j++){
351 if (board[i][j]) board[i][j]->paint(vm);
352 changes[i][j]=false;
353 }
354 }else{/** Pinta solo los que han cambiado*/
355 for (i=0;i<BoardRows;i++)
356 for (j=0;j<BoardColumns;j++){
357 if (changes[i][j]){
358 background->repaint(vm, j*PipeWidth, i*PipeHeight, PipeWidth, PipeHeight);
359 if (board[i][j]) board[i][j]->paint(vm);
360 changes[i][j]=false;
361 }
362 }
363 }
364 /** Pinta y marca los punteros para la proxima entrada.*/
365 index=lps->getFirst();
366 for (i=0;i<lps->nObjects();i++){
367 aux=(Pointer*)lps->getObject(index);
368 pr=aux->getRow();
369 pc=aux->getColumn();
370 if (aux->moved() || (flow_column==aux->getColumn() && flow_row==aux->getRow())){
371 aux->setPos(pc*aux->width+x, pr*aux->height+y);
372 aux->paint(vm);
373 if (aux->moved()) aux->setMoved(false); else aux->setMoved(true);
374 }
375 index=lps->getNext(index);
376 }
377 paint_all=false;
378
379 /** Pinta la mancha si el juego esta perdido.*/
380 if (state==OverLost){
381 Image * mancha=vm->getImageManager()->getImage(new Str("splash.png"));
382 int mx=flow_column*PipeWidth+x;
383 int my=flow_row*PipeHeight+y;
384 switch (actual_input){
385 case Void:{ //Esta contra un borde
386 switch (actual_output){
387 case North:my-=PipeHeight/2;break;
388 case South:my+=PipeHeight/2;break;
389 case West:mx-=PipeWidth/2;break;
390 case East:mx+=PipeWidth/2;break;
391 default:break;
392 }
393 break;
394 }
395 case North:my-=PipeHeight/2;break;
396 case South:my+=PipeHeight/2;break;
397 case West:mx-=PipeWidth/2;break;
398 case East:mx+=PipeWidth/2;break;
399 default:break;
400 }
401 vm->setClipping(x, y, width(), height());
402 vm->enableClipping(true);
403 vm->blit(mancha, mx, my);
404 vm->enableClipping(false);
405 }
406 if (tank->isChanged()) tank->paint(vm);
407 }
408
409 int Board::width(){
410 return BoardColumns*PipeWidth;
411 }
412
413 int Board::height(){
414 return BoardRows*PipeHeight;
415 }
416
0 /***************************************************************************
1 board.h - description
2 -------------------
3 begin : Thu Aug 17 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef BOARD_H
18 #define BOARD_H
19
20 #include "animatedcanvas.h"
21
22 enum BoardState {Playing, OverLost, OverWon};
23 enum BackgroundType {WallpaperBackground, MosaicBackground};
24
25 static const int BoardColumns=9;
26 static const int BoardRows=8;
27
28 class Board;
29
30 #include "list.h"
31 #include "pipe.h"
32 #include "pointer.h"
33 #include "entry.h"
34 #include "exit.h"
35 #include "tank.h"
36 #include "background.h"
37
38 class Board: public AnimatedCanvas{
39
40 public:
41
42 static const int TankX=88;
43 static const int TankY=0;
44
45 Board();
46 virtual ~Board();
47
48 int width();
49
50 int height();
51
52 /** Setea la cantidad de ticks hasta comenzar
53 a avanzar el flujo.*/
54 void setStartDelay(int delay);
55
56 /** Asigna la entrada del flujo.*/
57 //void setEntry(Entry * entry, int row, int column);
58 void setEntry(Entry * entry, int row, int column);
59
60 /** Asigna la salida del flujo.*/
61 //void setExit(Exit * exit, int row, int column);
62 void setExit(Exit * exit, int row, int column);
63
64 /** Retorna true si el pipe en row, column es removible.*/
65 bool isRemovable(int row, int column);
66
67 /** Asigna pipe a la posicion row,column. Si las coordenadas son
68 invalidas, el resultado es indefinido. pipe no debe ser NULL.*/
69 void setPipe(Pipe * pipe, int row, int column);
70
71 /** Retorna el pipe en la posicion. Si las coordenadas no son
72 validas, el resultado es indefinido.*/
73 Pipe * getPipe(int row, int column);
74
75
76 /** Retorna el estado del board.*/
77 BoardState getState();
78
79 /** Retorna la cantidad de pipes que son necesarios para completar el nivel.*/
80 unsigned int getRequired();
81
82 /** Retorna la cantiad de pipes que todavĆ” faltan para completar el nivel.*/
83 unsigned int getStillRequired();
84
85 /** Agrega el puntero en la posicion que tenga.*/
86 void addPointer(Pointer * p);
87
88 /** Quita el puntero del board.*/
89 void removePointer(Pointer * p);
90
91 /** Mueve el puntero de posicion a row, column.*/
92 void movePointer(Pointer *p, int row, int column);
93
94 void setPos(int x, int y);
95
96 void setSpeed(int amount);
97
98 void setMaxSpeed();
99
100 void setRequired(unsigned int value);
101
102 void setBackgroundType(BackgroundType type);
103
104 /** SeƱaliza el avance del lƭquido.*/
105 void tick();
106
107 void paint(VideoManager * vm);
108
109 protected:
110
111 unsigned int countStillRequired();
112
113 BackgroundType background_type;
114 Background * background;
115
116 List * lps;
117
118 Pipe * board[BoardRows][BoardColumns];
119
120 Tank * tank;
121
122 bool changes[BoardRows][BoardColumns];
123 bool paint_all;
124
125 // Image * background;
126
127 int flow_row, flow_column;
128
129 Pipe * entry;
130 Pipe * exit;
131
132 int entry_row;
133 int entry_column;
134
135 int start_delay;
136 int tick_amount;
137
138 CardinalPoint actual_output;
139 CardinalPoint actual_input;
140
141 BoardState state;
142
143 unsigned int required;
144 unsigned int still_required;
145 bool required_changed;
146 };
147
148 #endif
149
150
0 /***************************************************************************
1 canvas.cpp - description
2 -------------------
3 begin : Mon Oct 16 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "canvas.h"
18
19 Canvas::Canvas():Graphic(){
20 x=y=0;
21 }
22
23 Canvas::Canvas(int width, int height):Graphic(width, height){
24 x=y=0;
25 }
26
27 void Canvas::setPos(int x, int y){
28 this->x=x;this->y=y;
29 }
30
0 /***************************************************************************
1 canvas.h - description
2 -------------------
3 begin : Fri Sep 1 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef CANVAS_H
18 #define CANVAS_H
19
20 #include "graphic.h"
21 #include "videomanager.h"
22
23 /** Clase abstracta para el manejo de objetos grƔficos.*/
24
25 class Canvas: public Graphic{
26
27 public:
28
29 /** Constructor.*/
30 Canvas();
31
32 Canvas(int width, int height);
33
34 /** Destructor.*/
35 virtual ~Canvas(){};
36
37 /** Setea la posiciĆ³n.*/
38 virtual void setPos(int x, int y);
39
40 /** Pinta el canvas.*/
41 virtual void paint(VideoManager * vm)=0;
42
43 protected:
44
45 int x, y;
46 };
47
48 #endif
49
50
0 /* src/config.h. Generated automatically by configure. */
1 /* src/config.h.in. Generated automatically from configure.in by autoheader. */
2
3 /* Define if lex declares yytext as a char * by default, not a char[]. */
4 #define YYTEXT_POINTER 1
5
6 /* #undef GAME_PREFIX */
7 #define GAME_DATADIR "/usr/local/share/games/pipenightdreams"
8
9 /* Define if you have the SDL_image library (-lSDL_image). */
10 #define HAVE_LIBSDL_IMAGE 1
11
12 /* Name of package */
13 #define PACKAGE "pipenightdreams"
14
15 /* Version number of package */
16 #define VERSION "0.9.0"
17
0 /* src/config.h.in. Generated automatically from configure.in by autoheader. */
1
2 /* Define if lex declares yytext as a char * by default, not a char[]. */
3 #undef YYTEXT_POINTER
4
5 #undef GAME_PREFIX
6 #undef GAME_DATADIR
7
8 /* Define if you have the SDL_image library (-lSDL_image). */
9 #undef HAVE_LIBSDL_IMAGE
10
11 /* Name of package */
12 #undef PACKAGE
13
14 /* Version number of package */
15 #undef VERSION
16
0 /***************************************************************************
1 cross.cpp - description
2 -------------------
3 begin : Thu Aug 17 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "cross.h"
18 #include "pointercross.h"
19
20 Cross::Cross():Pipe(){
21 p=new PointerCross();
22 extra_used_input=Void;
23 extra_full_level=0;
24 ro=Void;
25 extra_ro=Void;
26 }
27
28 Cross::~Cross(){
29 delete p;
30 }
31
32 bool Cross::hasConnection(CardinalPoint con){
33 return (con!=Void);
34 }
35
36 bool Cross::isRemovable(){
37 return !((full_level>0) || (extra_full_level>0)) && !fixed;
38 }
39
40 void Cross::restrictAsOutput(CardinalPoint con){
41 if (con!=Void)
42 if (con==South || con==North)
43 ro=con;
44 else extra_ro=con;
45 }
46
47 bool Cross::isRestrictedAsOutput(CardinalPoint con){
48 return (ro==con || extra_ro==con);
49 }
50
51 CardinalPoint Cross::getOutput(CardinalPoint input){
52 if (input==ro || input==extra_ro) return Void;
53 switch (input){
54 case South: {return North;}
55 case North:return South;
56 case West: return East;
57 case East: return West;
58 default:break;
59 }
60 return Void;
61 }
62
63 void Cross::incFullLevel(CardinalPoint input,unsigned int amount){
64 if (!isRestrictedAsOutput(input)){
65 if ((input==North) || (input==South))
66 if ((used_input==Void) || (used_input==input)){
67 full_level+=amount;
68 used_input=input;
69 }
70 if ((input==West) || (input==East))
71 if ((extra_used_input==Void) || (extra_used_input==input)){
72 extra_full_level+=amount;
73 extra_used_input=input;
74 }
75 }
76 }
77
78 int Cross::getFullLevel(CardinalPoint input){
79 if (input==used_input)
80 return full_level;
81 if (input==extra_used_input)
82 return extra_full_level;
83 return 0;
84 }
85
86 Pointer * Cross::getPointer(){
87 return p;
88 }
89
90 void Cross::paint(VideoManager * vm){
91
92 Image * ima;
93 if (fixed)
94 ima=(vm->getImageManager())->getImage(new Str("cross_b.png"));
95 else
96 ima=(vm->getImageManager())->getImage(new Str("cross.png"));
97
98 vm->blit(ima, x, y);
99
100 if (ro != Void) paintRestriction(vm, ro);
101 if (extra_ro != Void) paintRestriction(vm, extra_ro);
102 if (full_level>0){
103 Image * aux=(vm->getImageManager())->getImage(new Str("flow.png"));
104 int xof=x+PipeWidth/2-aux->width()/2;
105 int yof=aux->height()/2;
106 int total, f;
107 vm->setClipping(x, y, PipeWidth, PipeHeight);
108 vm->enableClipping(true);
109 if (used_input==North){
110 total=y-yof;
111 f=1;
112 }
113 else{
114 total=PipeHeight+y-yof;
115 f=-1;
116 }
117 for (int i=0; i<full_level+1;i+=Gran)
118 vm->blit(aux, xof, total+f*(float)i/(float)full()*(float)PipeHeight);
119 vm->enableClipping(false);
120 }
121 if (extra_full_level>0){
122 Image * aux=(vm->getImageManager())->getImage(new Str("flow.png"));
123 int yof=y+(PipeHeight-aux->height())/2;
124 int total,f;
125 vm->setClipping(x, y, PipeWidth, PipeHeight);
126 vm->enableClipping(true);
127 if (extra_used_input==West){
128 total=x-aux->width()/2;
129 f=1;
130 }
131 else{
132 total=x+PipeWidth-aux->width()/2;
133 f=-1;
134 }
135 for (int i=0; i<extra_full_level+1;i+=Gran)
136 vm->blit(aux, total+f*(float)i/(float)full()*(float)PipeWidth, yof);
137 vm->enableClipping(false);
138 }
139 if (bonus!=NormalBonus) paintBonus(vm, bonus);
140 }
0 /***************************************************************************
1 cross.h - description
2 -------------------
3 begin : Thu Aug 17 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef CROSS_H
18 #define CROSS_H
19
20 #include "pipe.h"
21
22 class Cross: public Pipe{
23
24 public:
25
26 Cross();
27 ~Cross();
28
29 bool hasConnection(CardinalPoint con);
30
31 bool isRemovable();
32
33 void restrictAsOutput(CardinalPoint con);
34
35 bool isRestrictedAsOutput(CardinalPoint con);
36
37 CardinalPoint getOutput(CardinalPoint input);
38
39 void incFullLevel(CardinalPoint input,unsigned int amount);
40
41 int getFullLevel(CardinalPoint input);
42
43 Pointer * getPointer();
44
45 void paint(VideoManager * vm);
46
47 protected:
48
49 int extra_full_level;
50 int extra_used_input;
51 CardinalPoint extra_ro;
52 };
53
54 #endif
55
0 /***************************************************************************
1 elbowdownleft.cpp - description
2 -------------------
3 begin : Thu Aug 17 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "elbowdownleft.h"
18 #include "pointerelbowdownleft.h"
19
20 ElbowDownLeft::ElbowDownLeft():Pipe(){
21 p=new PointerElbowDownLeft();
22 }
23
24 ElbowDownLeft::~ElbowDownLeft(){
25 delete p;
26 }
27
28 bool ElbowDownLeft::hasConnection(CardinalPoint con){
29 return ((con==West) || (con==South));
30 }
31
32 CardinalPoint ElbowDownLeft::getOutput(CardinalPoint input){
33 if (input==ro) return Void;
34 switch (input){
35 case South: return West;
36 case West:return South;
37 default:return Void;
38 }
39 }
40
41 void ElbowDownLeft::restrictAsOutput(CardinalPoint con){
42 if (con==South || con==West) ro=con;
43 }
44
45 bool ElbowDownLeft::isRestrictedAsOutput(CardinalPoint con){
46 return (ro==con);
47 }
48
49 void ElbowDownLeft::incFullLevel(CardinalPoint input,unsigned int amount){
50 if ((input==South || input==West) && ro!=input)
51 if ((used_input==Void) || (used_input==input)){
52 full_level+=amount;
53 used_input=input;
54 }
55 }
56
57 int ElbowDownLeft::getFullLevel(CardinalPoint input){
58 if (input==used_input) return full_level;
59 return 0;
60 }
61
62 Pointer * ElbowDownLeft::getPointer(){
63 return p;
64 }
65
66 void ElbowDownLeft::paint(VideoManager * vm){
67 Image * ima;
68 if (fixed)
69 ima=(vm->getImageManager())->getImage(new Str("elbow_swb.png"));
70 else
71 ima=(vm->getImageManager())->getImage(new Str("elbow_sw.png"));
72 vm->blit(ima, x, y);
73
74 if (ro!=Void) paintRestriction(vm,ro);
75 if (full_level>0){
76 Image * aux=(vm->getImageManager())->getImage(new Str("flow.png"));
77 float fwidth=(float)PipeWidth/2;
78 float fheight=(float)PipeHeight/2;
79 float nov=PI/2;
80 vm->setClipping(x, y, PipeWidth, PipeHeight);
81 vm->enableClipping(true);
82 int xaux=x-aux->width()/2;
83 int yaux=y+PipeHeight-aux->width()/2;
84 if (used_input==South){
85 for (int i=0; i<full_level+1;i+=Gran)
86 vm->blit(aux, xaux+(float)cos((float)i/(float)full() * nov)*fwidth,
87 yaux-(float)sin((float)i/(float)full() * nov)*fheight);
88 }else{
89 for (int i=0; i<full_level+1;i+=Gran)
90 vm->blit(aux, xaux+(float)cos((float)(full()-i)/(float)full() * nov)*fwidth,
91 yaux-(float)sin((float)(full()-i)/(float)full() * nov)*fheight);
92 }
93 vm->enableClipping(false);
94 }
95 if (bonus!=NormalBonus) paintBonus(vm, bonus);
96 }
0 /***************************************************************************
1 elbowdownleft.h - description
2 -------------------
3 begin : Thu Aug 17 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef ELBOW_DOWN_LEFT_H
18 #define ELBOW_DOWN_LEFT_H
19
20 #include "pipe.h"
21
22 class ElbowDownLeft: public Pipe{
23
24 public:
25
26 ElbowDownLeft();
27 ~ElbowDownLeft();
28
29 bool hasConnection(CardinalPoint con);
30
31 CardinalPoint getOutput(CardinalPoint input);
32
33 void restrictAsOutput(CardinalPoint con);
34
35 bool isRestrictedAsOutput(CardinalPoint con);
36
37 void incFullLevel(CardinalPoint input,unsigned int amount);
38
39 int getFullLevel(CardinalPoint input);
40
41 Pointer * getPointer();
42
43 void paint(VideoManager * vm);
44 };
45
46 #endif
47
0 /***************************************************************************
1 elbowdownright.cpp - description
2 -------------------
3 begin : Thu Aug 17 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "elbowdownright.h"
18 #include "pointerelbowdownright.h"
19
20 ElbowDownRight::ElbowDownRight():Pipe(){
21 p=new PointerElbowDownRight();
22 }
23
24 ElbowDownRight::~ElbowDownRight(){
25 delete p;
26 }
27
28 bool ElbowDownRight::hasConnection(CardinalPoint con){
29 return ((con==East) || (con==South));
30 }
31
32 CardinalPoint ElbowDownRight::getOutput(CardinalPoint input){
33 if (input==ro) return Void;
34 switch (input){
35 case South: return East;
36 case East:return South;
37 default:return Void;
38 }
39 }
40
41 void ElbowDownRight::restrictAsOutput(CardinalPoint con){
42 if (con==East || con==South) ro=con;
43 }
44
45 bool ElbowDownRight::isRestrictedAsOutput(CardinalPoint con){
46 return (con==ro);
47 }
48
49 void ElbowDownRight::incFullLevel(CardinalPoint input,unsigned int amount){
50 if ((input==South || input==East) && input!=ro)
51 if ((used_input==Void) || (used_input==input)){
52 full_level+=amount;
53 used_input=input;
54 }
55 }
56
57 int ElbowDownRight::getFullLevel(CardinalPoint input){
58 if (input==used_input) return full_level;
59 return 0;
60 }
61
62 Pointer * ElbowDownRight::getPointer(){
63 return p;
64 }
65
66 void ElbowDownRight::paint(VideoManager * vm){
67 Image * ima;
68 if (fixed)
69 ima=(vm->getImageManager())->getImage(new Str("elbow_seb.png"));
70 else
71 ima=(vm->getImageManager())->getImage(new Str("elbow_se.png"));
72 vm->blit(ima, x, y);
73
74 if (ro!=Void) paintRestriction(vm, ro);
75
76 if (full_level>0){
77 Image * aux=(vm->getImageManager())->getImage(new Str("flow.png"));
78 float fwidth=(float)PipeWidth/2;
79 float fheight=(float)PipeHeight/2;
80 float nov=PI/2;
81 vm->setClipping(x, y, PipeWidth, PipeHeight);
82 vm->enableClipping(true);
83 int xaux=x+PipeWidth-aux->width()/2;
84 int yaux=y+PipeHeight-aux->width()/2;
85 if (used_input==South){
86 for (int i=0; i<full_level+1;i+=Gran)
87 vm->blit(aux, xaux-(float)cos((float)i/(float)full() * nov)*fwidth,
88 yaux-(float)sin((float)i/(float)full() * nov)*fheight);
89 }else{
90 for (int i=0; i<full_level+1;i+=Gran)
91 vm->blit(aux, xaux-(float)cos((float)(full()-i)/(float)full() * nov)*fwidth,
92 yaux-(float)sin((float)(full()-i)/(float)full() * nov)*fheight);
93 }
94 vm->enableClipping(false);
95 }
96 if (bonus!=NormalBonus) paintBonus(vm, bonus);
97 }
0 /***************************************************************************
1 elbowdownright.h - description
2 -------------------
3 begin : Thu Aug 17 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef ELBOW_DOWN_RIGHT_H
18 #define ELBOW_DOWN_RIGHT_H
19
20 #include "pipe.h"
21
22 class ElbowDownRight: public Pipe{
23
24 public:
25
26 ElbowDownRight();
27 ~ElbowDownRight();
28
29 bool hasConnection(CardinalPoint con);
30
31 CardinalPoint getOutput(CardinalPoint input);
32
33 void restrictAsOutput(CardinalPoint con);
34
35 bool isRestrictedAsOutput(CardinalPoint con);
36
37 void incFullLevel(CardinalPoint input,unsigned int amount);
38
39 int getFullLevel(CardinalPoint input);
40
41 Pointer * getPointer();
42
43 void paint(VideoManager * vm);
44 };
45
46 #endif
47
0 /***************************************************************************
1 elbowupleft.cpp - description
2 -------------------
3 begin : Thu Aug 17 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "elbowupleft.h"
18 #include "pointerelbowupleft.h"
19
20 ElbowUpLeft::ElbowUpLeft():Pipe(){
21 p=new PointerElbowUpLeft();
22 }
23
24 ElbowUpLeft::~ElbowUpLeft(){
25 delete p;
26 }
27
28 bool ElbowUpLeft::hasConnection(CardinalPoint con){
29 return ((con==North) || (con==West));
30 }
31
32 CardinalPoint ElbowUpLeft::getOutput(CardinalPoint input){
33 if (input==ro) return Void;
34 switch (input){
35 case North: return West;
36 case West:return North;
37 default:return Void;
38 }
39 }
40
41 void ElbowUpLeft::restrictAsOutput(CardinalPoint con){
42 if (con==North || con==West) ro=con;
43 }
44
45 bool ElbowUpLeft::isRestrictedAsOutput(CardinalPoint con){
46 return (con==ro);
47 }
48
49 void ElbowUpLeft::incFullLevel(CardinalPoint input,unsigned int amount){
50 if ((input==North || input==West) && ro!=input)
51 if ((used_input==Void) || (used_input==input)){
52 full_level+=amount;
53 used_input=input;
54 }
55 }
56
57 int ElbowUpLeft::getFullLevel(CardinalPoint input){
58 if (input==used_input)
59 return full_level;
60 return -1;
61 }
62
63 Pointer * ElbowUpLeft::getPointer(){
64 return p;
65 }
66
67 void ElbowUpLeft::paint(VideoManager * vm){
68 Image * ima;
69 if (fixed)
70 ima=(vm->getImageManager())->getImage(new Str("elbow_nwb.png"));
71 else
72 ima=(vm->getImageManager())->getImage(new Str("elbow_nw.png"));
73 vm->blit(ima, x, y);
74
75 if (ro!=Void) paintRestriction(vm, ro);
76
77 if (full_level>0){
78 Image * aux=(vm->getImageManager())->getImage(new Str("flow.png"));
79 float fwidth=(float)PipeWidth/2;
80 float fheight=(float)PipeHeight/2;
81 float nov=PI/2;
82 vm->setClipping(x, y, PipeWidth, PipeHeight);
83 vm->enableClipping(true);
84 int xaux=x-aux->width()/2;
85 int yaux=y-aux->width()/2;
86 if (used_input==North){
87 for (int i=0; i<full_level+1;i+=Gran)
88 vm->blit(aux, xaux+(float)cos((float)i/(float)full() * nov)*fwidth,
89 yaux+(float)sin((float)i/(float)full() * nov)*fheight);
90 }else{
91 for (int i=0; i<full_level+1;i+=Gran)
92 vm->blit(aux, xaux+(float)cos((float)(full()-i)/(float)full() * nov)*fwidth,
93 yaux+(float)sin((float)(full()-i)/(float)full() * nov)*fheight);
94 }
95 vm->enableClipping(false);
96 }
97 if (bonus!=NormalBonus) paintBonus(vm, bonus);
98 }
0 /***************************************************************************
1 elbowupleft.h - description
2 -------------------
3 begin : Thu Aug 17 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef ELBOW_UP_LEFT_H
18 #define ELBOW_UP_LEFT_H
19
20 #include "pipe.h"
21
22 class ElbowUpLeft: public Pipe{
23
24 public:
25
26 ElbowUpLeft();
27 ~ElbowUpLeft();
28
29 bool hasConnection(CardinalPoint con);
30
31 CardinalPoint getOutput(CardinalPoint input);
32
33 void restrictAsOutput(CardinalPoint con);
34
35 bool isRestrictedAsOutput(CardinalPoint con);
36
37 void incFullLevel(CardinalPoint input,unsigned int amount);
38
39 int getFullLevel(CardinalPoint input);
40
41 Pointer * getPointer();
42
43 void paint(VideoManager * vm);
44 };
45
46 #endif
47
0 /***************************************************************************
1 elbowupright.cpp - description
2 -------------------
3 begin : Thu Aug 17 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "elbowupright.h"
18 #include "pointerelbowupright.h"
19
20 ElbowUpRight::ElbowUpRight():Pipe(){
21 p=new PointerElbowUpRight();
22 }
23
24 ElbowUpRight::~ElbowUpRight(){
25 delete p;
26 }
27
28 bool ElbowUpRight::hasConnection(CardinalPoint con){
29 return ((con==North) || (con==East));
30 }
31
32 CardinalPoint ElbowUpRight::getOutput(CardinalPoint input){
33 switch (input){
34 case North: return East;
35 case East:return North;
36 default:return Void;
37 }
38 }
39
40 void ElbowUpRight::restrictAsOutput(CardinalPoint con){
41 if (con==East || con==North) ro=con;
42 }
43
44 bool ElbowUpRight::isRestrictedAsOutput(CardinalPoint con){
45 return (con==ro);
46 }
47
48 void ElbowUpRight::incFullLevel(CardinalPoint input,unsigned int amount){
49 if ((input==North || input==East) && input!=ro)
50 if ((used_input==Void) || (used_input==input)){
51 full_level+=amount;
52 used_input=input;
53 }
54 }
55
56 int ElbowUpRight::getFullLevel(CardinalPoint input){
57 if (input==used_input)
58 return full_level;
59 return 0;
60 }
61
62 Pointer * ElbowUpRight::getPointer(){
63 return p;
64 }
65
66 void ElbowUpRight::paint(VideoManager * vm){
67 Image * ima;
68 if (fixed)
69 ima=(vm->getImageManager())->getImage(new Str("elbow_neb.png"));
70 else
71 ima=(vm->getImageManager())->getImage(new Str("elbow_ne.png"));
72 vm->blit(ima, x, y);
73
74 if (ro!=Void) paintRestriction(vm, ro);
75
76 if (full_level>0){
77 Image * aux=(vm->getImageManager())->getImage(new Str("flow.png"));
78 float fwidth=(float)PipeWidth/2;
79 float fheight=(float)PipeHeight/2;
80 float nov=PI/2;
81 vm->setClipping(x, y, PipeWidth, PipeHeight);
82 vm->enableClipping(true);
83 int xaux=x+PipeWidth-aux->width()/2;
84 int yaux=y-aux->width()/2;
85 if (used_input==North){
86 for (int i=0; i<full_level+1;i+=Gran)
87 vm->blit(aux, xaux-(float)cos((float)i/(float)full() * nov)*fwidth,
88 yaux+(float)sin((float)i/(float)full() * nov)*fheight);
89 }else{
90 for (int i=0; i<full_level+1;i+=Gran)
91 vm->blit(aux, xaux-(float)cos((float)(full()-i)/(float)full() * nov)*fwidth,
92 yaux+(float)sin((float)(full()-i)/(float)full() * nov)*fheight);
93 }
94 vm->enableClipping(false);
95 }
96 if (bonus!=NormalBonus) paintBonus(vm, bonus);
97 }
98
0 /***************************************************************************
1 elbowupright.h - description
2 -------------------
3 begin : Thu Aug 17 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef ELBOW_UP_RIGHT_H
18 #define ELBOW_UP_RIGHT_H
19
20 #include "pipe.h"
21
22 class ElbowUpRight: public Pipe{
23
24 public:
25
26 ElbowUpRight();
27 ~ElbowUpRight();
28
29 bool hasConnection(CardinalPoint con);
30
31 CardinalPoint getOutput(CardinalPoint input);
32
33 void restrictAsOutput(CardinalPoint con);
34
35 bool isRestrictedAsOutput(CardinalPoint con);
36
37 void incFullLevel(CardinalPoint input,unsigned int amount);
38
39 int getFullLevel(CardinalPoint input);
40
41 Pointer * getPointer();
42
43 void paint(VideoManager * vm);
44 };
45
46 #endif
47
0 /***************************************************************************
1 entry.cpp - description
2 -------------------
3 begin : Wed Jan 10 1996
4 copyright : (C) 1996 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "entry.h"
18
19 Entry::Entry(CardinalPoint connection):Pipe(){
20 con=connection;
21 }
22
23 Entry::~Entry(){}
24
25 bool Entry::hasConnection(CardinalPoint con){
26 return (this->con==con);
27 }
28
29 CardinalPoint Entry::getOutput(CardinalPoint input){
30 return con;
31 }
32
33 void Entry::incFullLevel(CardinalPoint input,unsigned int amount){
34 full_level+=amount;
35 used_input=Void;
36 }
37
38 int Entry::getFullLevel(CardinalPoint input){
39 return this->full_level;
40 }
41
42 Pointer * Entry::getPointer(){
43 return NULL;
44 }
45
46 bool Entry::isRemovable(){
47 return false;
48 }
49
50 void Entry::paint(VideoManager * vm){
51 Image * aux;
52 Image * ima;
53
54 if (con==East || con==West)
55 ima=(vm->getImageManager())->getImage(new Str("entry_h.png"));
56 else
57 ima=(vm->getImageManager())->getImage(new Str("entry_v.png"));
58 aux=new Image(ima);
59 switch (con){
60 case South:{aux->flip(HAxis);aux->flip(VAxis);break;}
61 case West:{aux->flip(VAxis);break;}
62 default:break;
63 }
64 vm->blit(aux, x, y);
65 delete aux;
66
67 if (full_level>0){
68 ima=(vm->getImageManager())->getImage(new Str("flow.png"));
69 int xof=x+PipeWidth/2-ima->width()/2;
70 int yof=y+PipeHeight/2-ima->height()/2;
71 vm->setClipping(x, y, PipeWidth, PipeHeight);
72 vm->enableClipping(true);
73 switch (con){
74 case North:case South:{
75 float factor=0.5*(float)PipeHeight/(float)full();
76 if (con==North) factor=-factor;
77 for (int i=0;i<full_level+Gran;i+=Gran)
78 vm->blit(ima, xof, yof+(float)i*factor);
79 break;
80 }
81 case East: case West:{
82 float factor=0.5*(float)PipeWidth/(float)full();
83 if (con==West) factor=-factor;
84 for (int i=0;i<full_level+Gran;i+=Gran)
85 vm->blit(ima, xof+(float)i*factor, yof);
86 }
87 default:break;
88 }
89 vm->enableClipping(false);
90 }
91 }
92
0 /***************************************************************************
1 entry.h - description
2 -------------------
3 begin : Wed Jan 10 1996
4 copyright : (C) 1996 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef ENTRY_H
18 #define ENTRY_H
19
20 #include "pipe.h"
21
22 class Entry: public Pipe{
23
24 public:
25
26 Entry(CardinalPoint connection);
27 ~Entry();
28
29 bool isRemovable();
30
31 bool hasConnection(CardinalPoint con);
32
33 CardinalPoint getOutput(CardinalPoint input);
34
35 void restrictAsOutput(CardinalPoint con){};
36
37 bool isRestrictedAsOutput(CardinalPoint con){return true;};
38
39 void incFullLevel(CardinalPoint input,unsigned int amount);
40
41 int getFullLevel(CardinalPoint input);
42
43 Pointer * getPointer();
44
45 void paint(VideoManager * vm);
46
47 protected:
48
49 CardinalPoint con;
50 };
51
52 #endif
53
0 /***************************************************************************
1 eventmanager.cpp - description
2 -------------------
3 begin : Fri Sep 15 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "eventmanager.h"
18
19 EventManager::EventManager(){
20
21 SDL_EventState(SDL_MOUSEMOTION, SDL_IGNORE);
22 SDL_EventState(SDL_MOUSEBUTTONDOWN, SDL_IGNORE);
23 SDL_EventState(SDL_MOUSEBUTTONUP, SDL_IGNORE);
24 SDL_EventState(SDL_KEYUP, SDL_IGNORE);
25 SDL_EnableKeyRepeat(SDL_DEFAULT_REPEAT_DELAY, SDL_DEFAULT_REPEAT_INTERVAL);
26 lista_streams=new List();
27 }
28
29 EventManager::~EventManager(){
30 lista_streams->empty(true);
31 delete lista_streams;
32 }
33
34 void EventManager::addStream(EventStream * s){
35 lista_streams->insert(lista_streams->getEnd(), s);
36 }
37
38 void EventManager::removeStream(EventStream * s){
39 lista_streams->remove(lista_streams->indexOf(s));
40 }
41
42 void EventManager::pumpEvents(bool wait=false){
43 SDL_Event event;
44 Index * stream;
45 bool got=false;
46
47 do{
48 while (SDL_PollEvent(&event)>0){
49 got=true;
50 switch (event.type){
51 case SDL_KEYDOWN:{
52 stream=lista_streams->getFirst();
53 while ((stream!=lista_streams->getEnd()) &&
54 ((EventStream*)(lista_streams->getObject(stream)))->put(event.key.keysym.sym)){
55 stream=lista_streams->getNext(stream);
56 }
57 }
58 default:break;
59 }
60 }
61 if (wait && !got) SDL_WaitEvent(NULL);
62 }while (wait && !got);
63 }
64
0 /***************************************************************************
1 eventmanager.h - description
2 -------------------
3 begin : Fri Sep 15 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef EVENT_MANAGER_H
18 #define EVENT_MANAGER_H
19
20 #include "object.h"
21 #include "SDL.h"
22 #include "list.h"
23 #include "eventstream.h"
24
25 class EventManager: public Object{
26
27 public:
28
29 EventManager();
30 ~EventManager();
31
32 void addStream(EventStream * s);
33
34 /** Los streams no son liberados ni al hacer
35 remove ni en el destructor.*/
36 void removeStream(EventStream * s);
37
38 /** Pasa todos los eventos de los dispositivos
39 a los streams. Si no hubo eventos en los dispositivos:
40 si wait=true espera hasta que pueda pasar uno,
41 si wait=false retorna.*/
42
43 void pumpEvents(bool wait=false);
44
45 protected:
46
47 List * lista_streams;
48 };
49 #endif
50
0 /***************************************************************************
1 eventstream.cpp - description
2 -------------------
3 begin : Sat Sep 30 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "eventstream.h"
18
19 EventStream::EventStream():Object(){
20 ul=dl=0;
21 npairs=0;
22 }
23
24 EventStream::~EventStream(){}
25
26 bool EventStream::put(SDLKey e){
27 int i;
28 for (i=0;i<npairs;i++){
29 if (emt[i].sdlKeySym==e){
30 events[ul]=emt[i].event;
31 ul=(ul + 1) % MaxEvents;
32 return true;
33 }
34 }
35 return false;
36 }
37
38 Event EventStream::get(){
39 if (dl!=ul){
40 int i=dl;
41 dl=(dl + 1) % MaxEvents;
42 return events[i];
43 }
44 return NONE;
45 }
46
47 void EventStream::clear(){
48 ul=dl;
49 }
50
0 /***************************************************************************
1 eventstream.h - description
2 -------------------
3 begin : Sat Sep 30 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef EVENT_STREAM_H
18 #define EVENT_STREAM_H
19
20 #include "object.h"
21 #include "SDL.h"
22
23 enum Event {NONE, UP, DOWN, LEFT, RIGHT, HIT, GO, BACK, QUIT};
24
25 class EventStream : public Object{
26
27 public:
28
29 static const int MaxEvents=16;
30
31 EventStream();
32 ~EventStream();
33
34 /** RetornarĆ” true si el evento pertenece a este stream y
35 fue agregado, caso contrario retornarĆ” false.*/
36 bool put(SDLKey e);
37
38 /** Retorna el proximo evento en la cola, None si no hay ninguno.*/
39 Event get();
40
41 void clear();
42
43 protected:
44
45 static const int MaxPairs=16;
46
47 struct EMT{
48 SDLKey sdlKeySym;
49 Event event;
50 }emt[MaxPairs];
51
52 int npairs;
53
54 Event events[MaxEvents];
55 int ul, dl;
56 };
57
58 #endif
59
60
0 /***************************************************************************
1 exit.cpp - description
2 -------------------
3 begin : Sat Oct 21 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "exit.h"
18
19 Exit::Exit(CardinalPoint connection):Pipe(){
20 con=connection;
21 }
22
23 Exit::~Exit(){}
24
25 bool Exit::hasConnection(CardinalPoint con){
26 return (this->con==con);
27 }
28
29 CardinalPoint Exit::getOutput(CardinalPoint input){
30 return Void;
31 }
32
33 bool Exit::isRemovable(){
34 return false;
35 }
36
37 void Exit::incFullLevel(CardinalPoint input,unsigned int amount){
38 full_level+=amount;
39 used_input=Void;
40 }
41
42 int Exit::getFullLevel(CardinalPoint input){
43 return this->full_level;
44 }
45
46 Pointer * Exit::getPointer(){
47 return NULL;
48 }
49
50 void Exit::paint(VideoManager * vm){
51 Image * aux, *ima;
52
53 if (con==East || con==West)
54 ima=(vm->getImageManager())->getImage(new Str("exit_h.png"));
55 else
56 ima=(vm->getImageManager())->getImage(new Str("exit_v.png"));
57 aux=new Image(ima);
58 switch (con){
59 case South:{aux->flip(HAxis);break;}
60 case West:{aux->flip(VAxis);break;}
61 default:break;
62 }
63 vm->blit(aux, x, y);
64 delete aux;
65
66 if (full_level>0){
67 ima=(vm->getImageManager())->getImage(new Str("flow.png"));
68 vm->setClipping(x, y, PipeWidth, PipeHeight);
69 vm->enableClipping(true);
70 switch (con){
71 case North:case South:{
72 int xof=x+PipeWidth/2-ima->width()/2;
73 int yof;
74 float factor=(float)PipeHeight/(float)(full());
75 if (con==North) yof=y-ima->height()/2;
76 else{
77 yof=y+PipeHeight-ima->height()/2;
78 factor =-factor;
79 }
80 for (int i=0;i<full_level/2+Gran;i+=Gran)
81 vm->blit(ima, xof, yof+(float)i*factor);
82 break;
83 }
84 case East: case West:{
85 int xof;
86 int yof=y+PipeHeight/2-ima->height()/2;;
87 float factor=(float)PipeWidth/(float)(full());
88 if (con==West) xof=x-ima->width()/2;
89 else{
90 xof=x+PipeWidth-ima->width()/2;
91 factor =-factor;
92 }
93 for (int i=0;i<full_level/2+Gran;i+=Gran)
94 vm->blit(ima, xof+(float)i*factor, yof);
95 break;
96 }
97 default:break;
98 }
99 vm->enableClipping(false);
100 }
101 }
102
0 /***************************************************************************
1 exit.h - description
2 -------------------
3 begin : Sat Oct 21 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef EXIT_H
18 #define EXIT_H
19
20 #include "pipe.h"
21
22 class Exit: public Pipe{
23
24 public:
25
26 Exit(CardinalPoint connection);
27 ~Exit();
28
29 bool isRemovable();
30
31 bool hasConnection(CardinalPoint con);
32
33 CardinalPoint getOutput(CardinalPoint input);
34
35 void restrictAsOutput(CardinalPoint con){};
36
37 bool isRestrictedAsOutput(CardinalPoint con){return false;};
38
39 void incFullLevel(CardinalPoint input,unsigned int amount);
40
41 int getFullLevel(CardinalPoint input);
42
43 Pointer * getPointer();
44
45 void paint(VideoManager * vm);
46
47 protected:
48
49 CardinalPoint con;
50 };
51
52 #endif
53
0 /***************************************************************************
1 graphic.cpp - description
2 -------------------
3 begin : Sat Oct 14 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "graphic.h"
18 #include <stdlib.h>
19
20 Graphic::Graphic():Surface(){
21 pixels=NULL;
22 clip_active=false;
23 };
24
25 Graphic::Graphic(int width, int height)
26 :Surface(width, height){
27 pixels=NULL;
28 clip_active=false;
29 }
30
31 Graphic::Graphic(Graphic * g){
32 pixels= malloc(g->surface->w*g->surface->h*g->surface->format->BytesPerPixel);
33 memcpy(pixels, g->surface->pixels,g->surface->w*g->surface->h*g->surface->format->BytesPerPixel);
34
35 surface=SDL_CreateRGBSurfaceFrom(pixels,
36 g->surface->w, g->surface->h, g->surface->format->BitsPerPixel,
37 g->surface->pitch, g->surface->format->Rmask, g->surface->format->Gmask,
38 g->surface->format->Bmask, g->surface->format->Amask);
39 clip_active=false;
40 }
41
42 Graphic::~Graphic(){
43 if (pixels) free(pixels);
44 }
45
46 void Graphic::setAlpha(char value=OPAQUE){
47 SDL_SetAlpha(surface, SDL_SRCALPHA, value);
48 }
49
50 void Graphic::enableClipping(bool flag=true){
51
52 if (flag){
53 SDL_Rect rect;
54 rect.x=clip_x;
55 rect.y=clip_y;
56 rect.w=clip_width;
57 rect.h=clip_height;
58 SDL_SetClipRect(surface, &rect);
59 }else
60 SDL_SetClipRect(surface, NULL);
61 }
62
63 void Graphic::setClipping(int x, int y, int width, int height){
64 clip_y=y;
65 clip_x=x;
66 clip_width=width;
67 clip_height=height;
68 }
69
70 void Graphic::flip(Axis a=HAxis){
71 if (surface){
72 if (SDL_MUSTLOCK(surface))
73 if (SDL_LockSurface(surface)<0) return;
74 int i,j,width=surface->w, height=surface->h, aw,bw;
75 Uint32 * p, *q, aux, *ap;
76 p=(Uint32*)(surface->pixels);
77 if (a==HAxis){
78 q=p+width*height-1;
79 height/=2;
80 for (j=0;j<height;j++){
81 for (i=0;i<width;i++){
82 aux=*p;
83 *p++=*q;
84 *q--=aux;
85 }
86 }
87 }
88 else{
89 aw=width>>1;
90 bw=width-1;
91 for (j=0;j<height;j++){
92 ap=p;
93 q=p+bw;
94 for (i=0;i<aw;i++){
95 aux=*p;
96 *p++=*q;
97 *q--=aux;
98 }
99 p=ap+width;
100 }
101 }
102 if (SDL_MUSTLOCK(surface))
103 SDL_UnlockSurface(surface);
104 }
105 }
106
107 void Graphic::fill(int r, int g, int b){
108 SDL_FillRect(surface, NULL, SDL_MapRGB(surface->format, r, g, b));
109 }
110
111 void Graphic::fillRect(int x, int y, int w, int h, int r, int g, int b, int a){
112 SDL_Rect rect;
113
114 rect.x=x;
115 rect.y=y;
116 rect.w=w;
117 rect.h=h;
118
119 SDL_FillRect(surface, &rect, SDL_MapRGBA(surface->format, r, g, b, a));
120 }
121
0 /***************************************************************************
1 graphic.h - description
2 -------------------
3 begin : Sat Oct 14 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef GRAPHIC_H
18 #define GRAPHIC_H
19
20 #include "surface.h"
21 #include "SDL.h"
22 #include <string.h> // Only for Red Hat
23
24
25 #define OPAQUE 255
26 #define TRANSPARENT 0
27
28
29 enum Axis {HAxis, VAxis};
30
31 class Graphic: public Surface{
32
33 public:
34
35 Graphic();
36
37 Graphic(Graphic * g);
38
39 Graphic(int width, int height);
40
41 virtual ~Graphic();
42
43 void setAlpha(char value=OPAQUE);
44
45 /** Enable or disable clipping.*/
46 void enableClipping(bool flag=true);
47
48 /** Establish the cliping zone.*/
49 void setClipping(int top, int left, int bottom, int right);
50
51 virtual void flip(Axis a=HAxis);
52
53 virtual void fill(int r, int g, int b);
54
55 virtual void fillRect(int x, int y, int w, int h, int r, int g, int b, int a);
56
57 protected:
58
59 int clip_x, clip_y, clip_width, clip_height;
60 bool clip_active;
61 void * pixels;
62 };
63
64
65 #endif
66
0 /***************************************************************************
1 hash.cpp - description
2 -------------------
3 begin : Thu Aug 17 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include <stdlib.h>
18 #include <string.h>
19 #include "hash.h"
20 #include <stdio.h>
21
22 Hash::Bucket::Bucket(Str * str, Object * obj){
23 this->str=str;
24 this->obj=obj;
25 }
26
27 Hash::Bucket::~Bucket(){
28 delete str;
29 }
30
31 void Hash::Bucket::setStr(Str * str){
32 if (this->str) delete this->str;
33 this->str=str;
34 }
35
36 void Hash::Bucket::setObject(Object * obj){
37 this->obj=obj;
38 }
39
40 Str * Hash::Bucket::getStr(){
41 return str;
42 }
43
44 Object * Hash::Bucket::getObject(){
45 return obj;
46 }
47
48 int Hash::function(Str * str){
49 int i=0, sum=0;
50 const char * aux=str->get();
51
52 while (aux[i]!='\0') sum+=aux[i++];
53
54 return(sum % nbuckets);
55 }
56
57 Hash::Hash(int bs=256){
58 int i;
59 nbuckets=bs;
60 lbuckets=new (List *)[nbuckets];
61
62 for (i=0;i<nbuckets;i++)
63 lbuckets[i]=new List();
64 }
65
66 Hash::~Hash(){
67 int i;
68 List * list;
69 for (i=0;i<nbuckets;i++){
70 list=lbuckets[i];
71 list->empty(false);
72 delete list;
73 }
74 delete[] lbuckets;
75 }
76
77 Hash::Result Hash::add(Str * str, Object * obj){
78 if (str){
79 // Index * i;
80 List * list;
81 list=lbuckets[function(str)];
82 if (list->nObjects()>0){
83 /*
84 for (i=list->getFirst();i!=list->getEnd();i=list->getNext(i)){
85 if (((Bucket*)list->getObject(i))->getStr()->isEqual(str)){
86 ((Bucket*)list->getObject(i))->setObject(obj);
87 return AddedOverwrite;
88 }
89 }
90 */
91 list->insert(list->getFirst(), new Bucket(str, obj));
92 return AddedCollision;
93 }else{
94 list->insert(list->getFirst(), new Bucket(str, obj));
95 return AddedNoCollision;
96 }
97 }
98 return NotAdded;
99 }
100
101 Hash::Result Hash::remove(Str * str, bool del=false){
102 if (str){
103 Index * i;
104 List * list=lbuckets[function(str)];
105
106 for (i=list->getFirst();i!=list->getEnd();i=list->getNext(i))
107 if (((Bucket *)list->getObject(i))->getStr()->isEqual(str)){
108 if (del)
109 delete ((Bucket *)list->getObject(i))->getObject();
110 list->remove(i, true);
111 delete str;
112 return Removed;
113 }
114 delete str;
115 }
116 return NotFound;
117 }
118
119 Object * Hash::find(Str * str){
120 if (str){
121 Index * i;
122 List * list=lbuckets[function(str)];
123
124 i=list->getFirst();
125 while (i!=list->getEnd()){
126 if (((Bucket *)list->getObject(i))->getStr()->isEqual(str)){
127 delete str;
128 return ((Bucket *)list->getObject(i))->getObject();
129 }
130 i=list->getNext(i);
131 }
132 delete str;
133 }
134 return NULL;
135 }
136
137 void Hash::empty(bool del=true){
138 int i;
139 List * list;
140 for (i=0;i<nbuckets;i++){
141 list=lbuckets[i];
142 if (del){
143 Index * idx=list->getFirst();
144 while (idx!=list->getEnd()){
145 delete ((Bucket*)list->getObject(idx))->getObject();
146 idx=list->getNext(idx);
147 }
148 }
149 list->empty(del);
150 }
151 }
152
0 /***************************************************************************
1 hash.h - description
2 -------------------
3 begin : Tue Aug 22 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef HASH_H
18 #define HASH_H
19
20 #include "object.h"
21 #include "str.h"
22 #include "list.h"
23
24 /** ImplementaciĆ³n de tabla hash. */
25
26 class Hash: public Object{
27
28 public:
29
30 enum Result {AddedNoCollision, AddedCollision, AddedOverwrite,
31 Removed, NotFound, NotAdded};
32
33 /** Constructor default.
34 @param bs Cantidad de buckets a reservar.
35 */
36 Hash(int bs=256);
37
38 /** Destructor. */
39 virtual ~Hash();
40
41 /** Inserta un objeto asociado a una cadena en la tabla.
42 @param str La cadena en cuestiĆ³n, no debe utilizarse ni liberarse,
43 luego de usarla como parƔmetro a esta funcion.
44 @param obj El objeto en cuestion.
45 @return AddedNoCollision, AddedCollision, o AddedOverwrite, NotAdded.
46 */
47 Result add(Str * str, Object * obj);
48
49 /** Busca el objeto asociado a la cadena dada. Retorna NULL
50 si no lo encuentra.*/
51 Object * find(Str * str);
52
53 /** Quita de la tabla el objeto asociado a la cadena str.
54 @param del Si es true el objeto es eliminado.
55 @return Removed o NotFound.
56 */
57 Result remove(Str * str, bool del=false);
58
59 /** Quita todos los objetos de la tabla.
60 @param del Si es true los elimina.
61 */
62 void empty(bool del=true);
63
64 protected:
65
66 int nbuckets;
67 List ** lbuckets;
68
69 virtual int function(Str * str);
70
71 class Bucket: public Object{
72
73 public:
74
75 Bucket(Str * str, Object * obj);
76 ~Bucket();
77
78 void setStr(Str * str);
79 void setObject(Object * obj);
80
81 Str * getStr();
82 Object * getObject();
83
84 protected:
85 Str * str;
86 Object * obj;
87 };
88 };
89 #endif
90
91
0 /***************************************************************************
1 horizontal.cpp - description
2 -------------------
3 begin : Thu Aug 17 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "horizontal.h"
18 #include "pointerhorizontal.h"
19
20 Horizontal::Horizontal():Pipe(){
21 p=new PointerHorizontal();
22 }
23
24 Horizontal::~Horizontal(){
25 delete p;
26 }
27
28 bool Horizontal::hasConnection(CardinalPoint con){
29 return ((con==West) || (con==East));
30 }
31
32 CardinalPoint Horizontal::getOutput(CardinalPoint input){
33 if (input==ro) return Void;
34 switch (input){
35 case West: return East;
36 case East:return West;
37 default:return Void;
38 }
39 }
40
41 void Horizontal::restrictAsOutput(CardinalPoint con){
42 if (con==East || con==West) ro=con;
43 }
44
45 bool Horizontal::isRestrictedAsOutput(CardinalPoint con){
46 return (con==ro);
47 }
48
49 void Horizontal::incFullLevel(CardinalPoint input,unsigned int amount){
50 if (input==West || input==East)
51 if ((used_input==Void || used_input==input) && input!=ro){
52 full_level+=amount;
53 used_input=input;
54 }
55 }
56
57 int Horizontal::getFullLevel(CardinalPoint input){
58 if (input==used_input)
59 return full_level;
60 return 0;
61 }
62
63 Pointer * Horizontal::getPointer(){
64 return p;
65 }
66
67 void Horizontal::paint(VideoManager * vm){
68 Image * ima;
69 if (fixed)
70 ima=(vm->getImageManager())->getImage(new Str("horizontal_b.png"));
71 else
72 ima=(vm->getImageManager())->getImage(new Str("horizontal.png"));
73 vm->blit(ima, x, y);
74
75 if (ro!=Void) paintRestriction(vm, ro);
76
77 paintFlow(vm);
78 }
79
80 void Horizontal::paintFlow(VideoManager * vm){
81
82 if (full_level>0){
83 Image * aux=(vm->getImageManager())->getImage(new Str("flow.png"));
84 int yof=y+(PipeHeight-aux->height())/2;
85 int total,f;
86 vm->setClipping(x, y, PipeWidth, PipeHeight);
87 vm->enableClipping(true);
88 if (used_input==West){
89 total=x-aux->width()/2;
90 f=1;
91 }
92 else{
93 total=x+PipeWidth-aux->width()/2;
94 f=-1;
95 }
96 for (int i=0; i<full_level+2*Gran;i+=Gran)
97 vm->blit(aux, total+f*(float)i/(float)full()*(float)PipeWidth, yof);
98 vm->enableClipping(false);
99 }
100 if (bonus!=NormalBonus) paintBonus(vm, bonus);
101 }
102
0 /***************************************************************************
1 horizontal.h - description
2 -------------------
3 begin : Thu Aug 17 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef HORIZONTAL_H
18 #define HORIZONTAL_H
19
20 #include "pipe.h"
21
22 class Horizontal: public Pipe{
23
24 public:
25
26 Horizontal();
27 ~Horizontal();
28
29 bool hasConnection(CardinalPoint con);
30
31 CardinalPoint getOutput(CardinalPoint input);
32
33 void restrictAsOutput(CardinalPoint con);
34
35 bool isRestrictedAsOutput(CardinalPoint con);
36
37 void incFullLevel(CardinalPoint input,unsigned int amount);
38
39 int getFullLevel(CardinalPoint input);
40
41 Pointer * getPointer();
42
43 void paint(VideoManager * vm);
44
45 protected:
46
47 void paintFlow(VideoManager * vm);
48 };
49
50 #endif
51
0 /***************************************************************************
1 horizontalbowl.cpp - description
2 -------------------
3 begin : Thu Dec 28 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "pipe.h"
18 #include "horizontalbowl.h"
19 #include "pointerhorizontalbowl.h"
20
21 HorizontalBowl::HorizontalBowl():Horizontal(){
22 delete p; /* Esto es asqueroso pero no encontrĆ© otra soluciĆ³n para
23 llamar solo a Pipe()*/
24 p=new PointerHorizontalBowl();
25 bowl_level=0;
26 }
27
28 void HorizontalBowl::incFullLevel(CardinalPoint input,unsigned int amount){
29 if (input==West || input==East)
30 if ((used_input==Void || used_input==input) && input!=ro){
31 if (bowl_level>=BowlCapacity)
32 full_level+=amount;
33 else
34 if (full_level>DefaultCapacity/2)
35 bowl_level+=amount;
36 else
37 full_level+=amount;
38 used_input=input;
39 }
40 }
41
42 void HorizontalBowl::paint(VideoManager * vm){
43
44 Image * ima;
45 if (fixed)
46 ima=(vm->getImageManager())->getImage(new Str("bowl_hb.png"));
47 else
48 ima=(vm->getImageManager())->getImage(new Str("bowl_h.png"));
49 vm->blit(ima, x, y);
50
51 if (ro!=Void) paintRestriction(vm, ro);
52
53 paintFlow(vm);
54
55 if (bowl_level>BowlCapacity/2){
56 Image * aux=(vm->getImageManager())->getImage(new Str("flow_big.png"));
57 vm->blit(aux, x, y);
58 }
59 if (bonus!=NormalBonus) paintBonus(vm, bonus);
60 }
61
0 /***************************************************************************
1 horizontalbowl.h - description
2 -------------------
3 begin : Mon Jan 1 1996
4 copyright : (C) 1996 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef HORIZONTAL_BOWL_H
18 #define HORIZONTAL_BOWL_H
19
20 #include "horizontal.h"
21
22 class HorizontalBowl: public Horizontal{
23
24 public:
25
26 HorizontalBowl();
27
28 void incFullLevel(CardinalPoint input,unsigned int amount);
29
30 void paint(VideoManager * vm);
31
32 protected:
33
34 static const int BowlCapacity=500;
35 int bowl_level;
36 };
37
38 #endif
39
0 /***************************************************************************
1 image.cpp - description
2 -------------------
3 begin : Sat Aug 19 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "image.h"
18 #include "SDL_image.h"
19 #include <stdio.h>
20
21 Image::Image(Str * filename=NULL):Graphic(){
22 if (filename) load(filename);
23 }
24
25 Image::Image(Image * im):Graphic(im){}
26
27 void Image::load(Str * filename){
28 SDL_Surface * aux_surface;
29
30 IMG_InvertAlpha(1);
31 if (surface) SDL_FreeSurface(surface);
32 aux_surface=IMG_Load(filename->get());
33 if (!aux_surface){
34 printf("Fatal Error : File %s not found\n", filename->get());
35 exit(-1);
36 }
37 surface=SDL_DisplayFormatAlpha(aux_surface);
38 SDL_FreeSurface(aux_surface);
39 delete filename;
40 }
41
0 /***************************************************************************
1 image.h - description
2 -------------------
3 begin : Sat Aug 19 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17
18 #ifndef IMAGE_H
19 #define IMAGE_H
20
21 #include "graphic.h"
22 #include "str.h"
23 #include "SDL.h"
24
25 class Image: public Graphic{
26
27 public:
28
29 /** Constructor.
30 @param filename La imagen filename es cargada. Debe ser distinto de NULL.
31 */
32 Image(Str * filename=NULL);
33
34 Image(Image * im);
35
36 /** Destructor.*/
37 virtual ~Image(){};
38
39 protected:
40
41 void load(Str * filename);
42 };
43 #endif
44
0 /***************************************************************************
1 imagemanager.cpp - description
2 -------------------
3 begin : Sat Aug 19 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "imagemanager.h"
18
19 ImageManager::ImageManager():Object(){
20 hash=new Hash();
21 dirs=new List();
22 base_dir=new Str("");
23 dirs->insert(dirs->getFirst(), new Str(""));
24 }
25
26 ImageManager::~ImageManager(){
27 hash->empty(true);
28 dirs->empty(true);
29 delete base_dir;
30 delete hash;
31 delete dirs;
32 }
33
34 void ImageManager::setBaseDir(Str * dir){
35 delete base_dir;
36 base_dir=dir;
37 }
38
39 Image * ImageManager::preLoadImage(Str * filename){
40 Str * aux;
41 Str * sub_dir=NULL;
42 FILE * file;
43 Image * ima=NULL;
44 Index * ind = dirs->getFirst();
45 while (!ima && ind!=dirs->getEnd()){
46 sub_dir=new Str((Str*)(dirs->getObject(ind)));
47 sub_dir->concat("/");
48 sub_dir->concat(filename);
49 aux=new Str(base_dir);
50 aux->concat("/");
51 aux->concat(sub_dir);
52 if ((file=fopen(aux->get(), "r"))){
53 fclose(file);
54 ima = new Image(new Str(aux));
55 hash->add(sub_dir, ima);
56 delete aux;
57 delete filename;
58 }else{
59 delete aux;
60 delete sub_dir;
61 }
62 ind=dirs->getNext(ind);
63 }
64 return (ima);
65 }
66
67 Image * ImageManager::getImage(Str * filename){
68 Image * ima=NULL;
69 Index * ind = dirs->getFirst();
70 Str * aux;
71 Str slash = Str("/");
72 while ((!ima) && (ind!=dirs->getEnd())){
73 aux = new Str((Str*)(dirs->getObject(ind)));
74 aux->concat(&slash);
75 aux->concat(filename);
76 ima = (Image *)hash->find(aux);
77 ind=dirs->getNext(ind);
78 }
79 if (!ima) ima=preLoadImage(new Str(filename));
80 if (ima){
81 delete filename;
82 return ima;
83 }
84 printf("Fatal error: File %s not found\n", filename->get());
85 delete filename;
86 exit(-1);
87 }
88
89 void ImageManager::addDir(Str * dir){
90 dirs->insert(dirs->getEnd(), dir);
91 }
92
93 void ImageManager::addDirList(List * dir_list){
94 Index * ind=dir_list->getFirst();
95 while (!dir_list->isEnd(ind)){
96 addDir((Str*)(dir_list->getObject(ind)));
97 ind=dir_list->getNext(ind);
98 }
99 dir_list->empty(false);
100 delete dir_list;
101 }
102
103 void ImageManager::clearDirs(){
104 dirs->empty(true);
105 dirs->insert(dirs->getFirst(), new Str(""));
106 }
107
108 void ImageManager::empty(){
109 hash->empty(true);
110 clearDirs();
111 }
112
0 /***************************************************************************
1 imagemanager.h - description
2 -------------------
3 begin : Sat Aug 19 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef IMAGE_MANAGER_H
18 #define IMAGE_MANAGER_H
19
20 #include "object.h"
21 #include "str.h"
22 #include "hash.h"
23 #include "image.h"
24
25 /** Es la encargada de manejar la carga y liberaciĆ³n de grupos de
26 imƔgenes.
27 */
28
29 class ImageManager: public Object{
30
31 public:
32 /** Constructor default. */
33 ImageManager();
34
35 /** Destructor.*/
36 virtual ~ImageManager();
37
38 /** Asigna el directorio base de las imagenes.*/
39 void setBaseDir(Str * dir);
40
41 /** Precarga una imagen. En caso de que el archivo no exista
42 no la precarga. Si una imagen con el mismo nombre ya existe
43 el comportamiento es indefinido.
44 */
45 Image * preLoadImage(Str * filename);
46
47 /** Retorna una imagen. La carga si no la tiene ya cargada.
48 retorna NULL si el archivo no existe.*/
49 Image * getImage(Str * filename);
50
51 /** Agrega un directorio a la lista de busqueda de imagenes*/
52 void addDir(Str * dir);
53
54 /** Vacia la lista de directorios.*/
55 void clearDirs();
56
57 /** Agrega una lista de directorios*/
58 void addDirList(List * dir_list);
59
60 void empty();
61
62 protected:
63
64 Hash * hash;
65 List * dirs;
66 Str * base_dir;
67
68 };
69
70 #endif
71
72
0 /***************************************************************************
1 level.h - description
2 -------------------
3 begin : Fri Dec 8 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef LEVEL_H
18 #define LEVEL_H
19
20 #include "object.h"
21 #include "str.h"
22 #include "entry.h"
23 #include "exit.h"
24 #include "list.h"
25 #include "board.h"
26
27 class Level: public Object{
28 public:
29
30 /** Constructor default.*/
31 Level();
32
33 /** Destructor*/
34 ~Level();
35
36 /** Returns the entry*/
37 Entry * getEntry(int& row, int& column);
38
39 /** Returns the exit*/
40 Exit * getExit(int& row, int& column);
41
42 /** Returns the probability coeficient of fixed pipes*/
43 int getFixedCoef();
44
45 /** Returns the probability coeficient of restricted pipes*/
46 int getRestrictionCoef();
47
48 /** Returns the time to wait until start*/
49 int getStartDelay();
50
51 /** Returns the speed*/
52 int getSpeed();
53
54 /** Returns the number of required pipes.*/
55 int getRequired();
56
57 /** Returns a list with the graph directories*/
58 List * getGraphDirs();
59
60 /** Returns the first pipe index*/
61 int getPipeIndex();
62
63 /** Returns the background type*/
64 BackgroundType getBackgroundType();
65
66 /** Returns the next pipe, NULL if it does not exist*/
67 Pipe * getPipe(int& i, int& row, int& column);
68
69 /** Carga el nivel en el board.*/
70 int load(Str * filename);
71
72 protected:
73
74 enum PipeType {ElbowNW, ElbowNE, ElbowSW, ElbowSE,
75 BowlH, BowlV, Vert, Horiz, CrossPipe};
76
77 int numberAssignment();
78 Str * stringAssignment();
79 CardinalPoint sideAssignment();
80 PipeType pipeTypeAssignment();
81 Bonus bonusAssignment();
82 bool boolAssignment();
83 BackgroundType backgroundAssignment();
84
85 void ee();
86 void pipe();
87 void level();
88 void printError(Str * s);
89
90 int token;
91 int level_number;
92
93 bool error;
94 int error_line;
95
96 bool entry_ready;
97 bool exit_ready;
98
99 int start_delay;
100 int restrict_coef;
101 int fixed_coef;
102 int speed;
103 int required;
104 BackgroundType background;
105
106 List * graph_dirs;
107
108 struct {
109 int row;
110 int column;
111 PipeType type;
112 CardinalPoint restricted_output1;
113 CardinalPoint restricted_output2;
114 Bonus bonus;
115 bool fixed;
116 }pipetable[BoardRows*BoardColumns]; //Full Board
117 int npipes;
118 };
119
120 #endif
121
0 /************************************************************************
1 -------------------
2 begin : Fri Dec 8 2000
3 copyright : (C) 2000 by Waldemar Baraldi
4 email : baraldi@lacasilla.com.ar
5 ***************************************************************************/
6
7 /***************************************************************************
8 * *
9 * This program is free software; you can redistribute it and/or modify *
10 * it under the terms of the GNU General Public License as published by *
11 * the Free Software Foundation; either version 2 of the License, or *
12 * (at your option) any later version. *
13 * *
14 ***************************************************************************/
15
16 %{
17 #include "level.h"
18 #include "pipe.h"
19 #include "elbowupleft.h"
20 #include "elbowupright.h"
21 #include "elbowdownleft.h"
22 #include "elbowdownright.h"
23 #include "vertical.h"
24 #include "horizontal.h"
25 #include "verticalbowl.h"
26 #include "horizontalbowl.h"
27 #include "cross.h"
28 #include "entry.h"
29 #include "exit.h"
30
31 #define NUMBER 1
32 #define LEVEL 2
33 #define SPEED 3
34 #define GRAPH_DIR 4
35 #define PIPENIGHTDREAMS 5
36 #define ENTRY 6
37 #define EXIT 7
38 #define ROW 8
39 #define COLUMN 9
40 #define SIDE 10
41 #define O_BLOCK 11
42 #define C_BLOCK 12
43 #define DOUBLE_COUTE 13
44 #define EQUAL 15
45 #define SEMICOLON 16
46 #define EOFILE 17
47 #define NORTH 18
48 #define SOUTH 19
49 #define WEST 20
50 #define EAST 21
51 #define STRING 22
52 #define START_DELAY 23
53 #define RESTRICT_COEF 24
54 #define FIXED_COEF 25
55 #define PIPE 26
56 #define REQUIRED 150
57
58 #define TYPE 27
59 // Possible values for TYPE
60 #define ELBOW_NW 28
61 #define ELBOW_NE 29
62 #define ELBOW_SW 30
63 #define ELBOW_SE 31
64 #define BOWL_H 32
65 #define BOWL_V 33
66 #define HORIZONTAL 34
67 #define VERTICAL 35
68 #define CROSS 36
69
70 #define RESTRICTED_OUTPUT 37
71
72 #define BONUS 38
73 // Possible values for BONUS
74 #define NORMAL 40
75 #define SUPER 41
76 #define ULTRA 42
77 #define HYPER 43
78 #define EXTRA_LIFE 44
79 #define EXTRA_TIME 45
80
81 #define FIXED 46
82
83 #define TRUE 47
84 #define FALSE 48
85
86 #define BACKGROUND 49
87 //Posibles valores para background
88 #define WALLPAPER 50
89 #define MOSAIC 51
90
91
92 #define INVALID 100
93
94 int nline;
95 %}
96
97 %option noyywrap
98 %option nounput
99
100 DIGIT [0-9]
101 SEP [ \t]+
102
103 %%
104
105 #.+\n nline++;
106 \n nline++;
107 {DIGIT}+ return NUMBER;
108 level return LEVEL;
109 speed return SPEED;
110 entry return ENTRY;
111 exit return EXIT;
112 row return ROW;
113 column return COLUMN;
114 side return SIDE;
115 graph_dir return GRAPH_DIR;
116 pipenightdreams return PIPENIGHTDREAMS;
117 start_delay return START_DELAY;
118 restrict_coef return RESTRICT_COEF;
119 fixed_coef return FIXED_COEF;
120 = return EQUAL;
121 \{ return O_BLOCK;
122 \} return C_BLOCK;
123 \" return DOUBLE_COUTE;
124 ; return SEMICOLON;
125 <<EOF>> return EOF;
126 north return NORTH;
127 south return SOUTH;
128 west return WEST;
129 east return EAST;
130 pipe return PIPE;
131 type return TYPE;
132 elbow_nw return ELBOW_NW;
133 elbow_ne return ELBOW_NE;
134 elbow_sw return ELBOW_SW;
135 elbow_se return ELBOW_SE;
136 bowl_h return BOWL_H;
137 bowl_v return BOWL_V;
138 horizontal return HORIZONTAL;
139 vertical return VERTICAL;
140 cross return CROSS;
141 restricted_output return RESTRICTED_OUTPUT;
142 bonus return BONUS;
143 normal return NORMAL;
144 super return SUPER;
145 ultra return ULTRA;
146 hyper return HYPER;
147 life return EXTRA_LIFE;
148 time return EXTRA_TIME;
149 fixed return FIXED;
150 background return BACKGROUND;
151 wallpaper return WALLPAPER;
152 mosaic return MOSAIC;
153 required return REQUIRED;
154 yes return TRUE;
155 true return TRUE;
156 no return FALSE;
157 false return FALSE;
158 \".+\" return STRING;
159 {SEP}
160 . return INVALID;
161 %%
162
163 Level::Level(){
164 level_number=0;
165 error=false;
166 entry_ready=false;
167 npipes=0;
168 start_delay=-1;
169 restrict_coef=-1;
170 fixed_coef=-1;
171 speed=1;
172 required=0;
173 graph_dirs=NULL;
174 background=MosaicBackground;
175 }
176
177 Level::~Level(){
178 if (graph_dirs){
179 graph_dirs->empty(true);
180 delete graph_dirs;
181 }
182 }
183
184 void Level::printError(Str * s){
185 error=true;
186 printf("Level error:%i:%s\n", nline, s->get());
187 delete s;
188 }
189
190 CardinalPoint Level::sideAssignment(){
191 int aux_token;
192
193 if (yylex()==EQUAL){
194 aux_token=yylex();
195 token=yylex();
196 switch (aux_token){
197 case NORTH: return North;
198 case SOUTH: return South;
199 case WEST: return West;
200 case EAST: return East;
201 default: printError(new Str("Invalid side"));
202 }
203 }else
204 printError(new Str("'=' expected"));
205 return Void;
206 }
207
208 int Level::numberAssignment(){
209 int aux;
210
211 if (yylex()==EQUAL)
212 if (yylex()==NUMBER){
213 aux=atoi(yytext);
214 token=yylex();
215 return aux;
216 }else printError(new Str("number expected"));
217 else printError(new Str("'=' expected"));
218 return 0;
219 }
220
221 Str * Level::stringAssignment(){
222 Str * s;
223
224 if (yylex()==EQUAL)
225 if (yylex()==STRING){
226 s=new Str(yytext);
227 token=yylex();
228 return s;
229 }else printError(new Str("string expected"));
230 else printError(new Str("'=' expected"));
231 return NULL;
232 }
233
234 Level::PipeType Level::pipeTypeAssignment(){
235 int aux_token;
236 if (yylex()==EQUAL){
237 aux_token=yylex();
238 token=yylex();
239 switch (aux_token){
240 case ELBOW_NW : return ElbowNW;
241 case ELBOW_NE : return ElbowNE;
242 case ELBOW_SW : return ElbowSW;
243 case ELBOW_SE : return ElbowSE;
244 case BOWL_H : return BowlH;
245 case BOWL_V : return BowlV;
246 case VERTICAL : return Vert;
247 case HORIZONTAL: return Horiz;
248 case CROSS : return CrossPipe;
249 default:{
250 printError(new Str("pipe type not valid"));
251 }
252 }
253 }else printError(new Str("'=' expected"));
254 return ElbowNW;
255 }
256
257 Bonus Level::bonusAssignment(){
258 int aux_token;
259 if (yylex()==EQUAL){
260 aux_token=yylex();
261 token=yylex();
262 switch (aux_token){
263 case NORMAL : return NormalBonus;
264 case SUPER : return SuperBonus;
265 case ULTRA : return UltraBonus;
266 case HYPER : return HyperBonus;
267 case EXTRA_LIFE: return LifeBonus;
268 case EXTRA_TIME: return TimeBonus;
269 default:{
270 printError(new Str("bonus type not valid"));
271 break;
272 }
273 }
274 }else printError(new Str("'=' expected"));
275 return NormalBonus;
276 }
277
278 bool Level::boolAssignment(){
279 bool aux;
280 if (yylex()==EQUAL){
281 switch (yylex()){
282 case TRUE : {aux=true;break;}
283 case FALSE : {aux=false;break;}
284 default:{
285 printError(new Str("not boolean type"));
286 break;
287 }
288 }
289 token=yylex();
290 return aux;
291 }else printError(new Str("'=' expected"));
292 return false;
293 }
294
295 BackgroundType Level::backgroundAssignment(){
296 int aux_token;
297 if (yylex()==EQUAL){
298 aux_token=yylex();
299 token=yylex();
300 switch (aux_token){
301 case WALLPAPER : return WallpaperBackground;
302 case MOSAIC : return MosaicBackground;
303 default:break;
304 }
305 }else printError(new Str("'=' expected"));
306 return MosaicBackground;
307 }
308
309
310 Entry * Level::getEntry(int& row, int& column){
311 Entry * entry= new Entry(pipetable[0].restricted_output1);
312 row=pipetable[0].row;
313 column=pipetable[0].column;
314 return entry;
315 }
316
317 Exit * Level::getExit(int& row, int& column){
318 Exit * exit= new Exit(pipetable[1].restricted_output1);
319 row=pipetable[1].row;
320 column=pipetable[1].column;
321 return exit;
322 }
323
324 int Level::getFixedCoef(){
325 return fixed_coef;
326 }
327
328 int Level::getRestrictionCoef(){
329 return restrict_coef;
330 }
331
332 int Level::getStartDelay(){
333 return start_delay;
334 }
335
336 int Level::getSpeed(){
337 return speed;
338 }
339
340 int Level::getRequired(){
341 return required;
342 }
343
344 BackgroundType Level::getBackgroundType(){
345 return background;
346 }
347
348 List * Level::getGraphDirs(){
349 List * list=new List();
350 Index * ind=graph_dirs->getFirst();
351 while (!graph_dirs->isEnd(ind)){
352 list->insert(list->getEnd(), new Str((Str*)(graph_dirs->getObject(ind))));
353 ind=graph_dirs->getNext(ind);
354 }
355 return list;
356 }
357
358 int Level::getPipeIndex(){
359 return 2;
360 }
361
362 Pipe * Level::getPipe(int& i, int& row, int& column){
363 Pipe * pipe;
364
365 if (i < npipes && i > 1){
366 switch (pipetable[i].type){
367 case ElbowNW:{
368 pipe=new ElbowUpLeft();
369 break;
370 }
371 case ElbowNE:{
372 pipe=new ElbowUpRight();
373 break;
374 }
375 case ElbowSW:{
376 pipe=new ElbowDownLeft();
377 break;
378 }
379 case ElbowSE:{
380 pipe=new ElbowDownRight();
381 break;
382 }
383 case Vert:{
384 pipe=new Vertical();
385 break;
386 }
387 case Horiz:{
388 pipe=new Horizontal();
389 break;
390 }
391 case BowlH:{
392 pipe=new HorizontalBowl();
393 break;
394 }
395 case BowlV:{
396 pipe=new VerticalBowl();
397 break;
398 }
399 case CrossPipe:{
400 pipe=new Cross();
401 break;
402 }
403 }
404 pipe->setBonus(pipetable[i].bonus);
405 if (pipetable[i].restricted_output1 != Void)
406 pipe->restrictAsOutput(pipetable[i].restricted_output1);
407 if (pipetable[i].restricted_output2 != Void)
408 pipe->restrictAsOutput(pipetable[i].restricted_output2);
409 pipe->setFixed(pipetable[i].fixed);
410 row=pipetable[i].row;
411 column=pipetable[i].column;
412 i++;
413 return pipe;
414 }
415 return NULL;
416 }
417
418 void Level::ee(){
419 int row=0, column=0;
420 CardinalPoint con=North;
421 int aux_token=token;
422
423 if (token==ENTRY || token==EXIT){
424 if (yylex()==O_BLOCK){
425 token=yylex();
426 while (token!=C_BLOCK && !error){
427 switch (token){
428 case ROW:{
429 row=numberAssignment();
430 break;
431 }
432 case COLUMN:{
433 column=numberAssignment();
434 break;
435 }
436 case SIDE:{
437 con=sideAssignment();
438 break;
439 }
440 default:{
441 if (aux_token==ENTRY)
442 printError(new Str("invalid word in entry structure"));
443 else
444 printError(new Str("invalid word in exit structure"));
445 }
446 }
447 }
448 if (!error) {
449 token=yylex();
450 if (aux_token==ENTRY){
451 pipetable[0].row=row;
452 pipetable[0].column=column;
453 pipetable[0].restricted_output1=con;
454 entry_ready=true;
455 }else{
456 pipetable[1].row=row;
457 pipetable[1].column=column;
458 pipetable[1].restricted_output1=con;
459 exit_ready=true;
460 }
461 }
462 }else printError(new Str("'{' expected"));
463 }else printError(new Str("'entry' or 'exit' expected"));
464 }
465
466 void Level::pipe(){
467
468 pipetable[npipes].row=0;
469 pipetable[npipes].column=0;
470 pipetable[npipes].type=ElbowNW;
471 pipetable[npipes].restricted_output1=Void;
472 pipetable[npipes].restricted_output2=Void;
473 pipetable[npipes].bonus=NormalBonus;
474 pipetable[npipes].fixed=false;
475
476 if (token==PIPE){
477 if (yylex()==O_BLOCK){
478 token=yylex();
479 while (token!=C_BLOCK && !error){
480 switch (token){
481 case ROW:{
482 pipetable[npipes].row=numberAssignment();
483 break;
484 }
485 case COLUMN:{
486 pipetable[npipes].column=numberAssignment();
487 break;
488 }
489 case TYPE:{
490 pipetable[npipes].type=pipeTypeAssignment();
491 break;
492 }
493 case RESTRICTED_OUTPUT:{
494 if (pipetable[npipes].restricted_output1!=Void){
495 if (pipetable[npipes].restricted_output2!=Void)
496 pipetable[npipes].restricted_output1=pipetable[npipes].restricted_output2;
497 pipetable[npipes].restricted_output2=sideAssignment();
498 }else pipetable[npipes].restricted_output1=sideAssignment();
499 break;
500 }
501 case BONUS:{
502 pipetable[npipes].bonus=bonusAssignment();
503 break;
504 }
505 case FIXED:{
506 pipetable[npipes].fixed=boolAssignment();
507 break;
508 }
509 default:printError(new Str("invalid word in pipe structure"));
510 }
511 }
512 npipes++;
513 token=yylex();
514 }else printError(new Str("'{' expected"));
515 }else printError(new Str("'pipe' expected"));
516 }
517
518
519 void Level::level(){
520 Str * s;
521
522 /** Default values for a level*/
523 entry_ready=false;
524 exit_ready=false;
525 level_number=0;
526 error=false;
527 npipes=2;
528 start_delay=0;
529 restrict_coef=0;
530 fixed_coef=0;
531 speed=1;
532 if (graph_dirs) graph_dirs->empty(true);
533 else graph_dirs=new List();
534
535 pipetable[0].row=0;
536 pipetable[0].column=0;
537 pipetable[0].restricted_output1=East;
538
539 pipetable[1].row=0;
540 pipetable[1].column=1;
541 pipetable[1].restricted_output1=West;
542
543 if ((token=yylex())==PIPENIGHTDREAMS){
544 if (yylex()==O_BLOCK){
545 token=yylex();
546 while (token!=C_BLOCK && !error){
547 switch (token){
548 case LEVEL:{
549 level_number=numberAssignment();
550 break;
551 }
552 case SPEED:{
553 speed=numberAssignment();
554 break;
555 }
556 case GRAPH_DIR:{
557 s=stringAssignment();
558 if (!error){
559 s->crop(1, s->lenght()-1);
560 graph_dirs->insert(graph_dirs->getEnd(), s);
561 }
562 break;
563 }
564 case START_DELAY:{
565 start_delay=numberAssignment();
566 break;
567 }
568 case RESTRICT_COEF:{
569 restrict_coef=numberAssignment();
570 break;
571 }
572 case FIXED_COEF:{
573 fixed_coef=numberAssignment();
574 break;
575 }
576 case BACKGROUND:{
577 background=backgroundAssignment();
578 break;
579 }
580 case REQUIRED:{
581 required=numberAssignment();
582 break;
583 }
584 case ENTRY:case EXIT:{
585 ee();
586 break;
587 }
588 case PIPE:{
589 pipe();
590 break;
591 }
592 default:printError(new Str("invalid word in level structure"));
593 }
594 }
595 if (!entry_ready && !error) printError(new Str("no entry available"));
596 if (!exit_ready && !error) printError(new Str("no exit available"));
597 }else printError(new Str("'{' expected"));
598 }else printError(new Str("'pipenightdreams' not found"));
599 }
600
601 int Level::load(Str * filename){
602 YY_FLUSH_BUFFER;
603 nline=1;
604 if (!(yyin=fopen(filename->get(), "r"))){
605 delete filename;
606 return 1;
607 }
608 delete filename;
609 level();
610 fclose(yyin);
611 if (error) return -1;
612 return 0;
613 }
614
0 /***************************************************************************
1 list.cpp - description
2 -------------------
3 begin : Fri Apr 14 2000
4 copyright : (C) 2000 by W. Baraldi & D. Scarpa
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 #include <stdio.h>
9 #include "list.h"
10
11 Index::Index(Object * obj){
12 next=prev=NULL;
13 this->obj=obj;
14 }
15
16 Index::~Index(){}
17
18 Object * Index::getObject(){
19 return obj;
20 }
21
22 Index * Index::getNext(){
23 return next;
24 }
25
26 Index * Index::getPrev(){
27 return prev;
28 }
29
30 void Index::setNext(Index * index){
31 next=index;
32 }
33
34 void Index::setPrev(Index * index){
35 prev=index;
36 }
37
38 List::List(){
39 thelist=thelast=NULL;
40 count=0;
41 }
42
43 List::~List(){}
44
45 bool List::isEmpty(){
46 return (!thelist);
47 }
48
49 Index * List::getFirst(){
50 return thelist;
51 }
52
53 Index * List::getLast(){
54 return thelast;
55 }
56
57 Index * List::getEnd(){
58 return NULL;
59 }
60
61 Index * List::indexOf(Object * obj, int& i){
62 Index * index=getFirst();
63 i=0;
64 while (index != getEnd()){
65 if (getObject(index)==obj) return index;
66 index=getNext(index);
67 i++;
68 }
69 return NULL;
70 }
71
72 Index * List::indexOf(Object * obj){
73 int none;
74
75 return indexOf(obj, none);
76 }
77
78 Index * List::indexOf(int i){
79 Index * index=getFirst();
80 int h;
81
82 while ((h<i) && (index!=getEnd()))
83 index=getNext(index);
84 return index;
85 }
86
87 int List::positionOf(Object * obj){
88 int none;
89
90 indexOf(obj, none);
91 return none;
92 }
93
94 bool List::isEnd(Index * index){
95 return (!index);
96 }
97
98 List::Result List::insert(Index * index, Object * obj){
99
100 Index * w=new Index(obj);
101
102 if (isEmpty()) //inserciĆ³n en la lista vacia
103 thelist=thelast=w;
104 else{
105 if (!index) { //inserciĆ³n en el Ćŗltimo lugar
106 w->setPrev(thelast);
107 thelast->setNext(w);
108 thelast=w;
109 }
110 else{
111 w->setNext(index);
112 w->setPrev(index->getPrev());
113 index->setPrev(w);
114 if (w->getPrev()) (w->getPrev())->setNext(w);
115 else thelist=w;
116 }
117 }
118 count++;
119 return Inserted;
120 }
121
122 List::Result List::insert(int i, Object * obj){
123
124 return (insert(indexOf(i), obj));
125 }
126
127 List::Result List::remove(Index * index, bool del=false){
128 if (isEmpty()) return EmptyList;
129 if (!index) return NullIndex;
130
131 if (!index->getNext()){
132 if (!index->getPrev()){
133 if (thelist==index){thelist=thelast=NULL;}
134 else return InvalidIndex;
135 }
136 else{
137 (index->getPrev())->setNext(NULL);
138 thelast=index->getPrev();
139 }
140 }
141 else{
142 if (!index->getPrev()){
143 (index->getNext())->setPrev(NULL);
144 thelist=index->getNext();
145 }
146 else{
147 (index->getNext())->setPrev(index->getPrev());
148 (index->getPrev())->setNext(index->getNext());
149 }
150 }
151 if (del) delete index->getObject();
152 delete index;
153 count--;
154 return Removed;
155 }
156
157 void List::empty(bool del=true){
158 while (!isEmpty())
159 remove(getFirst(), del);
160 }
161
162 Index * List::getNext(Index * index){
163 return (index->getNext());
164 }
165
166 Index * List::getPrev(Index * index){
167 return (index->getPrev());
168 }
169
170 Object * List::getObject(Index * index){
171 return (index->getObject());
172 }
173
174 int List::nObjects(){
175 return count;
176 }
177
178
179
0 /***************************************************************************
1 list.h - description
2 -------------------
3 begin : Fri Apr 14 2000
4 copyright : (C) 2000 by W. Baraldi & D. Scarpa
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 #ifndef LIST_H
9 #define LIST_H
10
11 #include "object.h"
12
13 /**
14 Clase de implementaciĆ³n de vagones de lista doblemente enlazada.
15 */
16
17 class Index: public Object{
18
19 public:
20
21 Index(Object * obj);
22 ~Index();
23 Object * getObject();
24 Index * getNext();
25 Index * getPrev();
26 void setNext(Index * index);
27 void setPrev(Index * index);
28
29 private:
30
31 Object * obj;
32 Index * next;
33 Index * prev;
34 };
35
36 /**
37 Lista doblemente enlazada.
38 */
39
40 class List : public Object{
41
42 public:
43
44 enum Result {Inserted, Removed, NullIndex, EmptyList,
45 InvalidIndex, NotFound, OutOfRange};
46
47 /** Constructor default.*/
48 List();
49
50 /** Destructor.*/
51 ~List();
52
53 /**
54 @return true si la lista esta vacĆ­a.
55 */
56 bool isEmpty();
57
58 /**
59 @return el primer Ć­ndice de la lista.
60 */
61 Index * getFirst();
62
63 /**
64 @return el Ćŗltimo Ć­ndice de la lista.
65 */
66 Index * getLast();
67
68 /**
69 @return el final de la lista. Si la lista estĆ” vacĆ­a getFirts(),
70 getLast() y getEnd retornan el mismo valor.
71 */
72 Index * getEnd();
73
74 /**
75 @return el Ć­ndice asociado al objeto obj. Si el objeto no estĆ” en la
76 lista retorna NULL.
77 */
78 Index * indexOf(Object * obj);
79
80 /**
81 @return el Ć­ndice asociado a la posiciĆ³n.
82 */
83 Index * indexOf(int i);
84
85 /**
86 @return la posicion del objeto obj.
87 */
88 int positionOf(Object * obj);
89
90 /**
91 @return true si index es el final de la lista.
92 */
93 bool isEnd(Index * index);
94
95 /**
96 Inserta el objeto obj en la posiciĆ³n index. No se controla que
97 el ƭndice parƔmetro pertenezca a la lista.
98 */
99 Result insert(Index * index, Object * obj);
100
101 /**
102 Inserta el objeto obj en la posiciĆ³n i.
103 */
104 Result insert(int i, Object * obj);
105
106 /**
107 Elimina de la lista el elemento en la posiciĆ³n index.
108 Hace un delete si del es true.
109 */
110 Result remove(Index * index, bool del=false);
111
112 /**
113 VacĆ­a la lista. Si del es true hace un delete de todos los objetos.
114 */
115 void empty(bool del=true);
116
117 /**
118 @param index Un Ć­ndice distinto de NULL y de getEnd().
119 @return el prĆ³ximo index del dado. Si index es el final retorna NULL.
120 */
121 Index * getNext(Index * index);
122
123 /**
124 @param index Un Ć­ndice distinto de NULL y de getEnd().
125 @return el Ć­ndice anterior al dado. Si index es el primero retorna NULL.
126 */
127 Index * getPrev(Index * index);
128
129 /**
130 @param index Un Ć­ndice distinto de NULL y de getEnd().
131 @return el objeto en la posiciĆ³n index.
132 */
133 Object * getObject(Index * index);
134
135 /**
136 @retorna la cantidad de objetos en la lista.
137 */
138 int nObjects();
139
140 private:
141
142 Index * thelist;
143 int count;
144 Index * thelast;
145 Index * indexOf(Object * obj, int& i);
146 };
147
148 #endif
149
150
0 /***************************************************************************
1 main.cpp - description
2 -------------------
3 begin : Thu Aug 17 15:27:08 ART 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "config.h"
18 #include <stdlib.h>
19 #include <stdio.h>
20 #include <unistd.h>
21 #include "pipenightdreams.h"
22 #include "hash.h"
23 #include "str.h"
24
25 int main(int argc, char *argv[])
26 {
27 Str * data_dir=NULL;
28 int level=1;
29
30 if (argc >1)
31 if (!strcmp("--datadir", argv[1]))
32 data_dir=new Str(argv[2]);
33
34 if (!data_dir){
35 if (argc>1){
36 printf("Invalid Data Dir\nUse pipenightdreams --datadir <DATA DIR>\n");
37 printf("Using default: %s\n", GAME_DATADIR);
38 }
39 data_dir=new Str(GAME_DATADIR);
40 }
41
42
43
44 PipeNightDreams * g = new PipeNightDreams();
45 g->setDataDir(data_dir);
46 g->setStartingLevel(level);
47 g->run();
48 delete g;
49 }
0 /***************************************************************************
1 mosaic.cpp - description
2 -------------------
3 begin : Wed Mar 21 2001
4 copyright : (C) 2001 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "mosaic.h"
18
19 Mosaic::Mosaic(Image * image):Background(){
20 this->image=image;
21 image->setAlpha(OPAQUE);
22 }
23
24 Mosaic::~Mosaic(){
25 //delete image;
26 }
27
28 void Mosaic::repaint(VideoManager * vm, int x, int y, int w, int h){
29 vm->blit(image, this->x+x, this->y+y);
30 }
31
32 void Mosaic::paint(VideoManager * vm){
33 int i,j;
34 for (i=0;i<BoardColumns;i++)
35 for (j=0;j<BoardRows;j++)
36 vm->blit(image, i*PipeWidth+x, j*PipeHeight+y);
37 }
38
0 /***************************************************************************
1 mosaic.h - description
2 -------------------
3 begin : Wed Mar 21 2001
4 copyright : (C) 2001 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef MOSAIC_H
18 #define MOSAIC_H
19
20 #include "background.h"
21
22 class Mosaic: public Background{
23
24 public:
25 Mosaic(Image * image);
26 ~Mosaic();
27
28 void repaint(VideoManager * vm, int x, int y, int w, int h);
29 void paint(VideoManager * vm);
30
31 protected:
32
33 Image * image;
34 };
35
36 #endif
37
0 /***************************************************************************
1 object.cpp - description
2 -------------------
3 begin : Sun Sep 23 2001
4 copyright : (C) 2001 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "object.h"
18
19 Object * Object::all[DSIZE];
20 int Object::index=0;
21
0 /***************************************************************************
1 object.h - description
2 -------------------
3 begin : Thu Apr 20 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 #ifndef OBJECT_H
9 #define OBJECT_H
10
11 #include <math.h>
12 #include <stdlib.h>
13 #include <stdio.h>
14 #include <typeinfo>
15
16 #define PI 3.1415
17 #define DSIZE 1024*1024
18
19 class Object{
20 public:
21 Object(){
22 /* if (index<DSIZE)
23 all[index++]=this;*/
24 }
25
26 virtual ~Object(){
27 /* bool ready=false;
28 for (int i=0;i<DSIZE && !ready;i++){
29 if (all[i]==this){
30 all[i]=NULL;
31 ready=true;
32 }
33 }*/
34 }
35
36 virtual void reportLeaks(){
37 int end=DSIZE;
38 if (index<DSIZE)
39 end=index;
40 else
41 printf("Not complete\n");
42
43 for (int i=0;i<end;i++){
44 if (all[i]!=NULL)
45 printf("%s\n", typeid(*(all[i])).name());
46 }
47 }
48 protected:
49 static int index;
50 static Object * all[];
51 };
52
53
54 #endif
55
0 /***************************************************************************
1 pipe.cpp - description
2 -------------------
3 begin : Wed Jan 10 1996
4 copyright : (C) 1996 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "pipe.h"
18
19 Pipe::Pipe():AnimatedCanvas(){
20 full_level=0;
21 used_input=Void;
22 ro=Void;
23 fixed=false;
24 bonus=NormalBonus;
25 this->owner=NULL;
26 }
27
28
29 bool Pipe::isRemovable(){
30 return !(full_level>0) && !fixed;
31 }
32
33 void Pipe::setFixed(bool flag=true){
34 fixed=flag;
35 }
36
37 void Pipe::setBonus(Bonus bonus=NormalBonus){
38 this->bonus=bonus;
39 }
40
41 Bonus Pipe::getBonus(){
42 return bonus;
43 }
44
45 void Pipe::setOwner(Player * owner){
46 this->owner=owner;
47 }
48
49 Player * Pipe::getOwner(){
50 return owner;
51 }
52
53 void Pipe::paintRestriction(VideoManager * vm, CardinalPoint con){
54 Image * ima;
55 switch (con){
56 case West:{
57 ima=(vm->getImageManager())->getImage(new Str("arrow_w.png"));
58 vm->blit(ima, x, y);
59 break;
60 }
61 case South:{
62 ima=(vm->getImageManager())->getImage(new Str("arrow_s.png"));
63 vm->blit(ima, x, y);
64 break;
65 }
66 case East:{
67 ima=(vm->getImageManager())->getImage(new Str("arrow_e.png"));
68 vm->blit(ima, x, y);
69 break;
70 }
71 case North:{
72 ima=(vm->getImageManager())->getImage(new Str("arrow_n.png"));
73 vm->blit(ima, x, y);
74 break;
75 }
76 default:break;
77 }
78 }
79
80 void Pipe::paintBonus(VideoManager * vm, Bonus bonus){
81 Image * ima;
82 switch (bonus){
83 case SuperBonus:{
84 ima=(vm->getImageManager())->getImage(new Str("super_bonus.png"));
85 vm->blit(ima, x, y);
86 break;
87 }
88 case UltraBonus:{
89 ima=(vm->getImageManager())->getImage(new Str("ultra_bonus.png"));
90 vm->blit(ima, x, y);
91 break;
92 }
93 case HyperBonus:{
94 ima=(vm->getImageManager())->getImage(new Str("hyper_bonus.png"));
95 vm->blit(ima, x, y);
96 break;
97 }
98 case LifeBonus:{
99 ima=(vm->getImageManager())->getImage(new Str("life_bonus.png"));
100 vm->blit(ima, x, y);
101 break;
102 }
103 default:break;
104 }
105 }
106
107
0 /***************************************************************************
1 pipe.h - description
2 -------------------
3 begin : Thu Aug 17 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef PIPE_H
18 #define PIPE_H
19
20 #include "animatedcanvas.h"
21 #include "pointer.h"
22 #include "videomanager.h"
23
24 #define NORMAL_BONUS_VALUE 5
25 #define SUPER_BONUS_VALUE 10
26 #define ULTRA_BONUS_VALUE 25
27 #define HYPER_BONUS_VALUE 50
28
29 enum CardinalPoint {Void, South, West, North, East};
30 enum Bonus {NormalBonus, SuperBonus, UltraBonus,
31 HyperBonus, LifeBonus, TimeBonus};
32
33 static const int PipeWidth=60;
34 static const int PipeHeight=60;
35
36 class Player;//Can understan this fucking need
37
38 class Pipe: public AnimatedCanvas{
39
40 public:
41
42 /** Constructor default. */
43 Pipe();
44
45 /** Destructor. */
46 virtual ~Pipe(){}
47
48 int width(){return PipeWidth;}
49 int height(){return PipeHeight;}
50 virtual int full(){return DefaultCapacity;}
51
52 /** Retorna true si existe una conexiĆ³n en ese punto cardinal. */
53 virtual bool hasConnection(CardinalPoint con)=0;
54
55 /** Retorna true si el pipe puede ser reemplazado por otro.*/
56 virtual bool isRemovable();
57
58 /** Setea la capacidad de ser removido de un pipe*/
59 virtual void setFixed(bool flag=true);
60
61 /** Setea el tipo de bonus*/
62 virtual void setBonus(Bonus bonus=NormalBonus);
63
64 /** Retorna el tipo de bonus*/
65 virtual Bonus getBonus();
66
67 /** Setea el owner del pipe*/
68 virtual void setOwner(Player * owner);
69
70 /** Retorna el owner del pipe*/
71 virtual Player * getOwner();
72
73 /** Restringe la conexiĆ³n como salida.
74 No hace nada si la conexiĆ³n no existe.*/
75 virtual void restrictAsOutput(CardinalPoint con)=0;
76
77 /** Retorna true si la conexiĆ³n esta restruingida como salida.*/
78 virtual bool isRestrictedAsOutput(CardinalPoint con)=0;
79
80 /** Retorna la salida de ese punto cardinal. El resultado es Void
81 si no existe el input.*/
82 virtual CardinalPoint getOutput(CardinalPoint input)=0;
83
84 /** Incrementa el nivel de llenado en 1 para la conexiĆ³n con ese input.
85 El resultado es 0 si no existe input.*/
86 virtual void incFullLevel(CardinalPoint input, unsigned int amount)=0;
87
88 /** Retorna el nivel de llenado para ese input. Si el input no existe
89 retorna -1.*/
90 virtual int getFullLevel(CardinalPoint input)=0;
91
92 /** Retorna una referencia al puntero asociado.*/
93 virtual Pointer * getPointer()=0;
94
95 /** Para uso futuro. Cambiarla a abstracta e
96 implementarla en cada pipe*/
97 void tick(){};
98
99 protected:
100
101 static const int Gran=50;
102 static const int DefaultCapacity=1000;
103
104 virtual void paintRestriction(VideoManager * vm, CardinalPoint con);
105 virtual void paintBonus(VideoManager * vm, Bonus bonus);
106
107 int full_level;
108 CardinalPoint used_input;
109 Pointer * p;
110 CardinalPoint ro;
111 bool fixed;
112 Bonus bonus;
113 Player * owner;
114 };
115 #endif
116
117
0 /***************************************************************************
1 pipenightdreams.cpp - description
2 -------------------
3 begin : Thu Aug 17 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "pipenightdreams.h"
18 #include "SDL.h"
19 #include "str.h"
20 #include "imagemanager.h"
21 #include "eventmanager.h"
22 #include "playeronestream.h"
23 #include "level.h"
24 #include "score.h"
25
26 PipeNightDreams::PipeNightDreams(){
27 SDL_Init(SDL_INIT_VIDEO);
28
29 video_manager=new VideoManager();
30 video_manager->setCaption(new Str("PipeNightDreams"));
31 event_manager=new EventManager();
32 sys = new SystemStream();
33 event_manager->addStream(sys);
34 data_dir=new Str();
35 images_dir=new Str();
36 starting_level=1;
37 }
38
39 PipeNightDreams::~PipeNightDreams(){
40 delete data_dir;
41 delete images_dir;
42 delete video_manager;
43 delete event_manager;
44 delete nextlevel;
45 delete tryagain;
46 SDL_Quit();
47 reportLeaks();
48 }
49
50 void PipeNightDreams::setStartingLevel(int level){
51 starting_level=level;
52 }
53
54 void PipeNightDreams::setDataDir(Str * dir_name){
55 delete data_dir;
56 delete images_dir;
57 data_dir=dir_name;
58
59 images_dir=new Str(data_dir);
60 images_dir->concat("/images/");
61 video_manager->getImageManager()->setBaseDir(new Str(images_dir));
62 }
63
64 void PipeNightDreams::run(){
65 char aux[128];
66 quit=false;
67
68 load();
69 showMainMenu();
70
71 while (!quit){
72 PlayerOneStream * pone = new PlayerOneStream();
73 player= new Player(pone);
74 player->setPos(0,0);
75
76 bool game_over=false;
77 int level_number=starting_level;
78 BoardState bs;
79
80 event_manager->addStream(pone);
81 event_manager->pumpEvents();
82
83 board=new Board();
84 Level * level=new Level();
85
86 Str * str= new Str(data_dir);
87 sprintf(aux, "/levels/%i.level", level_number);
88 str->concat(aux);
89 int error=level->load(str);
90 switch (error){
91 case 1:{
92 showFinal();
93 break;
94 }
95 case -1:{
96 delete level;
97 game_over=true;
98 break;
99 }
100 default:{
101 sprintf(aux, "PipeNightDreams : Level %i", level_number);
102 video_manager->setCaption(new Str(aux));
103 break;
104 }
105 }
106
107
108 while (!game_over){
109 int entry_row, entry_column, exit_row, exit_column;
110 Entry * aux_entry=level->getEntry(entry_row, entry_column);
111 Exit * aux_exit=level->getExit(exit_row, exit_column);
112
113 board->setPos(100,0);
114 board->setStartDelay(level->getStartDelay());
115 board->setSpeed(level->getSpeed());
116 board->setBackgroundType(level->getBackgroundType());
117 board->setEntry(aux_entry, entry_row, entry_column);
118 board->setExit(aux_exit, exit_row, exit_column);
119 board->setRequired(level->getRequired());
120 video_manager->getImageManager()->addDirList(level->getGraphDirs());
121 player->setRestrictionCoef(level->getRestrictionCoef());
122 player->setFixedCoef(level->getFixedCoef());
123
124 int i=level->getPipeIndex();
125 int pipe_row, pipe_column;
126 Pipe * aux_pipe=level->getPipe(i, pipe_row, pipe_column);
127
128 while (aux_pipe != NULL){
129 board->setPipe(aux_pipe, pipe_row, pipe_column);
130 aux_pipe=level->getPipe(i, pipe_row, pipe_column);
131 }
132
133 play();
134 bs=board->getState();
135 delete board;
136 if (bs==Playing){
137 game_over=true;
138 (video_manager->getImageManager())->empty();
139 }else{
140 sys->clear();
141 switch (bs){
142 case OverLost:{
143 if (player->lives()>0){
144 player->decLives();
145 SDL_Delay(750);
146 showTryAgain();
147 board=new Board();
148 }else{
149 game_over=true;
150 (video_manager->getImageManager())->empty();
151 showGameOver();
152 }
153 break;
154 }
155 case OverWon:{
156 (video_manager->getImageManager())->empty();
157 level_number++; //Incremento el nivel
158 board=new Board();
159
160 delete level;
161 level=new Level();
162 Str * str= new Str(data_dir);
163 sprintf(aux, "/levels/%i.level", level_number);
164 str->concat(aux);
165 int error=level->load(str);
166 switch (error){
167 case 1:{
168 showFinal();
169 game_over=true;
170 break;
171 }
172 case -1:{
173 game_over=true;
174 break;
175 }
176 default:{
177 showNextLevel();
178 sprintf(aux, "PipeNightDreams : Level %i", level_number);
179 video_manager->setCaption(new Str(aux));
180 break;
181 }
182 }
183 break;
184 }
185 default:break;
186 }
187 }
188 }
189 delete player;
190 delete level;
191 showMainMenu();
192 }
193 }
194
195 void PipeNightDreams::showIntro(){}
196
197 void PipeNightDreams::showOptions(){}
198
199 void PipeNightDreams::play(){
200 Event event;
201 int c,d;
202 player->setBoard(board);
203 while (event!=BACK && board->getState()==Playing){
204 c=SDL_GetTicks();
205 event=sys->get();
206 player->play();
207 player->tick();
208 if (player->isChanged())
209 player->paint(video_manager);
210 board->tick();
211 board->paint(video_manager);
212 video_manager->flush();
213 event_manager->pumpEvents();
214 d=SDL_GetTicks();
215 if (d-c<(int)(1000/FPS)){
216 SDL_Delay((int)(1000/FPS)-(d-c));
217 }
218 }
219 }
220
221 void PipeNightDreams::showMainMenu(){
222 Event event;
223 Str * aux;
224 Image * main;
225 Image * enter;
226 bool paint=false;
227
228 aux=new Str(images_dir);
229 aux->concat("start.jpg");
230 main=new Image(aux);
231
232 aux=new Str(images_dir);
233 aux->concat("entertostart.png");
234 enter=new Image(aux);
235
236 video_manager->setCaption(new Str("PipeNightDreams"));
237 video_manager->blit(main, 0,0);
238 video_manager->flush();
239 do{
240 SDL_Delay(300);
241 if (paint=!paint) video_manager->blit(enter, 248, 440);
242 else video_manager->blit(main, 248, 440, 248, 440, 143, 15);
243 video_manager->flush();
244 event_manager->pumpEvents(false);
245 event=sys->get();
246 }while (event!=GO && event!=BACK);
247 delete main;
248 delete enter;
249
250 if (event==BACK) quit=true;
251 }
252
253 void PipeNightDreams::showGameOver(){
254 Event event;
255 Image * gameover;
256 Str * aux;
257
258 aux= new Str(images_dir);
259 aux->concat("gameover.png");
260 gameover=new Image(aux);
261
262 video_manager->blit(gameover, 100+270-gameover->width()/2,240-gameover->height()/2);
263 video_manager->flush();
264 delete gameover;
265
266 do{
267 event_manager->pumpEvents(true);
268 event=sys->get();
269 }while (event!=GO);
270 }
271
272 void PipeNightDreams::showHallOfFame(){
273 }
274
275 void PipeNightDreams::showNextLevel(){
276 Event event;
277
278 video_manager->blit(nextlevel, 100+270-nextlevel->width()/2,240-nextlevel->height()/2);
279 video_manager->flush();
280
281 do{
282 event_manager->pumpEvents(true);
283 event=sys->get();
284 }while (event!=GO);
285 }
286
287 void PipeNightDreams::showTryAgain(){
288 Event event;
289 video_manager->blit(tryagain, 100+270-tryagain->width()/2,240-tryagain->height()/2);
290 video_manager->flush();
291
292 do{
293 event_manager->pumpEvents(true);
294 event=sys->get();
295 }while (event!=GO);
296 }
297
298 void PipeNightDreams::showFinal(){
299 Event event;
300 Image * done;
301 Str * aux;
302
303 aux= new Str(images_dir);
304 aux->concat("alllevelsdone.png");
305 done=new Image(aux);
306
307 video_manager->blit(done, 100+270-done->width()/2,240-done->height()/2);
308 video_manager->flush();
309 delete done;
310
311 do{
312 event_manager->pumpEvents(true);
313 event=sys->get();
314 }while (event!=GO);
315 }
316
317 void PipeNightDreams::load(){
318 Image * loading;
319 Str * aux;
320
321 aux= new Str(images_dir);
322 aux->concat("loading.png");
323 loading=new Image(aux);
324 video_manager->blit(loading, 320-loading->width()/2,240-loading->height()/2);
325 video_manager->flush();
326 delete loading;
327
328 aux= new Str(images_dir);
329 aux->concat("tryagain.png");
330 tryagain=new Image(aux);
331
332 aux= new Str(images_dir);
333 aux->concat("nextlevel.png");
334 nextlevel=new Image(aux);
335 }
336
0 /***************************************************************************
1 pipenightdreams.h - description
2 -------------------
3 begin : Thu Aug 17 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef PIPE_NIGHT_DREAMS_H
18 #define PIPE_NIGHT_DREAMS_H
19
20 #include "videomanager.h"
21 #include "imagemanager.h"
22 #include "eventmanager.h"
23 #include "object.h"
24 #include "board.h"
25 #include "player.h"
26 #include "systemstream.h"
27
28 #define FPS 20
29
30 class PipeNightDreams: public Object{
31
32 public:
33
34 PipeNightDreams();
35 ~PipeNightDreams();
36
37 /** The method to assign the data dir */
38 void setDataDir(Str * dir_name);
39
40 void setStartingLevel(int level);
41
42 /** The method that run the game. */
43 void run();
44
45 protected:
46
47 /** Introduction display.*/
48 void showIntro();
49 /** Options Menu display.*/
50 void showOptions();
51 /** Level execution.*/
52 void play();
53 /** Main Menu.*/
54 void showMainMenu();
55 /** Game Over screen.*/
56 void showGameOver();
57 /** Hall of Fame screen.*/
58 void showHallOfFame();
59 /** Next Level Screen*/
60 void showNextLevel();
61 /**Try Again Screen*/
62 void showTryAgain();
63 /** Final screen*/
64 void showFinal();
65 /** Load main graphics*/
66 void load();
67
68 VideoManager * video_manager;
69 ImageManager * image_manager;
70 EventManager * event_manager;
71
72 private:
73
74 bool game_over;
75 bool quit;
76 SystemStream * sys;
77 Str * data_dir;
78 Str * images_dir;
79 Board * board;
80 Player * player;
81 Image * nextlevel;
82 Image * tryagain;
83 int starting_level;
84 };
85
86 #endif
87
0 /***************************************************************************
1 pipequeue.cpp - description
2 -------------------
3 begin : Sat Sep 30 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "pipequeue.h"
18 #include "cross.h"
19 #include "horizontal.h"
20 #include "vertical.h"
21 #include "elbowupright.h"
22 #include "elbowdownright.h"
23 #include "elbowupleft.h"
24 #include "elbowdownleft.h"
25 #include "horizontalbowl.h"
26 #include "verticalbowl.h"
27 #include "random.h"
28
29 PipeQueue::PipeQueue():AnimatedCanvas(){
30 index=0;
31 change=true;
32 res_coef=0;
33 fixed_coef=0;
34 filled=false;
35 }
36
37 PipeQueue::~PipeQueue(){
38 if (filled)
39 for (int i=0;i<MaxPipes;i++)
40 delete queue[i];
41 }
42
43 int PipeQueue::width(){
44 return PipeWidth;
45 }
46
47 int PipeQueue::height(){
48 return PipeHeight;
49 }
50
51 Pipe * PipeQueue::getPipe(int pos){
52 change=true;
53 if (!filled) fillUp();
54 return queue[(pos+index)%MaxPipes];
55 }
56
57 Pipe * PipeQueue::getHead(){
58 if (!filled) fillUp();
59
60 Pipe * aux=queue[index];
61 queue[index]=generatePipe();
62 index=(index+1)% MaxPipes;
63 change=true;
64 return aux;
65 }
66
67 void PipeQueue::setRestrictionCoef(unsigned int coef){
68 if (coef > 100)
69 res_coef=100;
70 else res_coef=coef;
71 }
72
73 void PipeQueue::setFixedCoef(unsigned int coef){
74 if (coef > 100)
75 fixed_coef=100;
76 else fixed_coef=coef;
77
78 }
79
80 bool PipeQueue::isChanged(){
81 return change;
82 }
83
84 void PipeQueue::fillUp(){
85 for (index=0;index<MaxPipes;index++)
86 queue[index]=generatePipe();
87 index=0;
88 change=true;
89 filled=true;
90 }
91
92 void PipeQueue::paint(VideoManager * vm){
93 if (change){
94 int i,j;
95 Image * ima=vm->getImageManager()->getImage(new Str("queue_one.png"));
96 vm->blit(ima, x,y);
97
98 //Pintar los pipes
99 j=index;
100 for (i=0;i<MaxPipes;i++){
101 j=(j+MaxPipes -1)% MaxPipes;
102 queue[j]->setPos(x+27, y+5+i*queue[j]->height());
103 queue[j]->paint(vm);
104 }
105 }
106 change=false;
107 }
108
109 Pipe * PipeQueue::generatePipe(){
110
111 Pipe * aux=NULL;
112 Random * r=new Random();
113 switch ((r->getRandomNumber(0, 6))){
114
115 case 0: {
116 aux=new Cross();
117 if ((unsigned int)r->getRandomNumber(1,100)<=fixed_coef)
118 aux->setFixed(true);
119 for (int i=0;i<2;i++)
120 if ((unsigned int)r->getRandomNumber(1,100)<=res_coef)
121 switch (r->getRandomNumber(0, 3)){
122 case 0:{
123 if (!aux->isRestrictedAsOutput(South))
124 aux->restrictAsOutput(North);
125 break;
126 }
127 case 1:{
128 if (!aux->isRestrictedAsOutput(North))
129 aux->restrictAsOutput(South);
130 break;
131 }
132 case 2:{
133 if (!aux->isRestrictedAsOutput(East))
134 aux->restrictAsOutput(West);
135 break;
136 }
137 case 3:{
138 if (!aux->isRestrictedAsOutput(West))
139 aux->restrictAsOutput(East);
140 break;
141 }
142 default:break;
143 }
144 break;
145 }
146 case 1: {
147 if ((unsigned int)r->getRandomNumber(0,3))
148 aux=new Horizontal();
149 else aux= new HorizontalBowl();
150 if ((unsigned int)r->getRandomNumber(1,100)<=fixed_coef)
151 aux->setFixed(true);
152 if ((unsigned int)r->getRandomNumber(1,100)<=res_coef)
153 switch (r->getRandomNumber(0, 1)){
154 case 0:{
155 aux->restrictAsOutput(West);
156 break;
157 }
158 case 1:{
159 aux->restrictAsOutput(East);
160 break;
161 }
162 default:break;
163 }
164 break;
165 }
166 case 2: {
167 if ((unsigned int)r->getRandomNumber(0,3))
168 aux= new Vertical();
169 else aux= new VerticalBowl();
170 if ((unsigned int)r->getRandomNumber(1,100)<=fixed_coef)
171 aux->setFixed(true);
172 if ((unsigned int)r->getRandomNumber(1,100)<=res_coef)
173 switch (r->getRandomNumber(0, 1)){
174 case 0:{
175 aux->restrictAsOutput(North);
176 break;
177 }
178 case 1:{
179 aux->restrictAsOutput(South);
180 break;
181 }
182 default:break;
183 }
184 break;
185 }
186 case 3: {
187 aux= new ElbowUpRight();
188 if ((unsigned int)r->getRandomNumber(1,100)<=fixed_coef)
189 aux->setFixed(true);
190 if ((unsigned int)r->getRandomNumber(1,100)<=res_coef)
191 switch (r->getRandomNumber(0, 1)){
192 case 0:{
193 aux->restrictAsOutput(North);
194 break;
195 }
196 case 1:{
197 aux->restrictAsOutput(East);
198 break;
199 }
200 default:break;
201 }
202 break;
203 }
204 case 4: {
205 aux= new ElbowUpLeft();
206 if ((unsigned int)r->getRandomNumber(1,100)<=fixed_coef)
207 aux->setFixed(true);
208 if ((unsigned int)r->getRandomNumber(1,100)<=res_coef)
209 switch (r->getRandomNumber(0, 1)){
210 case 0:{
211 aux->restrictAsOutput(North);
212 break;
213 }
214 case 1:{
215 aux->restrictAsOutput(West);
216 break;
217 }
218 default:break;
219 }
220 break;
221 }
222 case 5: {
223 aux= new ElbowDownRight();
224 if ((unsigned int)r->getRandomNumber(1,100)<=fixed_coef)
225 aux->setFixed(true);
226 if ((unsigned int)r->getRandomNumber(1,100)<=res_coef)
227 switch (r->getRandomNumber(0, 1)){
228 case 0:{
229 aux->restrictAsOutput(South);
230 break;
231 }
232 case 1:{
233 aux->restrictAsOutput(East);
234 break;
235 }
236 default:break;
237 }
238 break;
239 }
240 case 6: {
241 aux= new ElbowDownLeft();
242 if ((unsigned int)r->getRandomNumber(1,100)<=fixed_coef)
243 aux->setFixed(true);
244 if ((unsigned int)r->getRandomNumber(1,100)<=res_coef)
245 switch (r->getRandomNumber(0, 1)){
246 case 0:{
247 aux->restrictAsOutput(South);
248 break;
249 }
250 case 1:{
251 aux->restrictAsOutput(West);
252 break;
253 }
254 default:break;
255 }
256 }
257 break;
258 }
259 delete r;
260 return aux;
261 }
262
0 /***************************************************************************
1 pipequeue.h - description
2 -------------------
3 begin : Sat Sep 30 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef PIPE_QUEUE_H
18 #define PIPE_QUEUE_H
19
20 #include "animatedcanvas.h"
21 #include "pipe.h"
22 #include "videomanager.h"
23
24 class PipeQueue : public AnimatedCanvas{
25
26 public:
27
28 static const int MaxPipes=3;
29
30 PipeQueue();
31 ~PipeQueue();
32
33 int width();
34
35 int height();
36
37 /** Retorna el Pipe que se encuentra en la cabeza
38 de la cola y lo quita agregando luego uno por la cola.*/
39 Pipe * getHead();
40
41 /** Retorna el pipe en la posicion.*/
42 Pipe * getPipe(int pos);
43
44 /** Asigna una probabilidad entre 1..100 de agregar restricciones
45 de direccion.*/
46 void setRestrictionCoef(unsigned int coef);
47
48 /** Asigna una probabilidad entre 1..100 de agregar pipes fijos.*/
49 void setFixedCoef(unsigned int coef);
50
51 bool isChanged();
52
53 /** paint heredado.*/
54 void paint(VideoManager * vm);
55
56 void tick(){};
57
58 protected:
59
60 void fillUp();
61
62 Pipe * queue[MaxPipes];
63 int index;
64 bool change;
65 unsigned int res_coef;
66 unsigned int fixed_coef;
67 bool filled;
68
69 Pipe * generatePipe();
70
71 };
72
73 #endif
74
0 /***************************************************************************
1 player.cpp - description
2 -------------------
3 begin : Sat Sep 30 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "player.h"
18
19 #define MAX_LIVES 8
20
21 Player::Player(EventStream * es):AnimatedCanvas(){
22 stream=es;
23 score=0;
24 start_row=0;
25 start_column=0;
26 change=true;
27 rest_coef=0;
28 fixed_coef=0;
29 nlives=StartLives;
30 score=new Score();
31 queue=new PipeQueue();
32 required=new Score();
33 }
34
35 Player::~Player(){
36 delete queue;
37 delete score;
38 delete required;
39 }
40
41 int Player::width(){
42 return PlayerWidth;
43 }
44 int Player::height(){
45 return PlayerHeight;
46 }
47
48
49 void Player::setPos(int x, int y){
50 Canvas::setPos(x,y);
51 queue->setPos(x,y);
52 score->setPos(x+10,y+200);
53 required->setPos(x+10,y+260);
54 }
55
56 void Player::setStartRowColumn(int row, int column){
57 start_row=row;
58 start_column=column;
59 }
60
61 void Player::setBoard(Board * bd){
62 board=bd;
63
64 pointer=queue->getPipe(0)->getPointer();
65 board->addPointer(pointer);
66 board->movePointer(pointer,start_row,start_column);
67
68 stream->clear();
69 }
70
71 void Player::incLives(){
72 nlives++;
73 change=true;
74 }
75
76 void Player::decLives(){
77 if (nlives>0) nlives--;
78 change=true;
79 }
80
81 unsigned int Player::lives(){
82 return nlives;
83 }
84
85 bool Player::isChanged(){
86 return change || queue->isChanged() || score->isChanged() || required->isChanged();
87 }
88
89 void Player::play(){
90 Event event;
91
92 event=stream->get();
93 switch (event){
94 case UP:{
95 if (pointer->getRow()> 0)
96 board->movePointer(pointer, pointer->getRow()-1, pointer->getColumn());
97 break;
98 }
99 case DOWN:{
100 if (pointer->getRow()<BoardRows-1)
101 board->movePointer(pointer, pointer->getRow()+1, pointer->getColumn());
102 break;
103 }
104 case LEFT:{
105 if (pointer->getColumn()>0)
106 board->movePointer(pointer, pointer->getRow(), pointer->getColumn()-1);
107 break;
108 }
109 case RIGHT:{
110 if (pointer->getColumn()<BoardColumns-1)
111 board->movePointer(pointer, pointer->getRow(), pointer->getColumn()+1);
112 break;
113 }
114 case HIT:{
115 int r=pointer->getRow(),c=pointer->getColumn();
116 if (board->isRemovable(r,c)){
117 board->removePointer(pointer);
118 Pipe * aux = queue->getHead();
119 aux->setOwner(this);
120 board->setPipe(aux, r, c);
121 pointer=queue->getPipe(0)->getPointer();
122 board->movePointer(pointer,r, c);
123 board->addPointer(pointer);
124 }
125 break;
126 }
127 case GO:{
128 board->setMaxSpeed();
129 }
130 default:break;
131 }
132 }
133
134 void Player::paint(VideoManager * vm){
135
136 //Pintar el background
137 if (change){
138 //Dibuja las vidas
139 vm->fillRect(x+LivesX,y+LivesY,MAX_LIVES*LivesWidth,LivesHeight, 0,0,0,255);
140
141 //Dibuja el liquido
142 vm->fillRect(x+LivesX,y+LivesY, lives()*LivesWidth, LivesHeight, 103,234,16,255);
143 vm->blit(vm->getImageManager()->getImage(new Str("lives_one.png")), x,y+215);
144
145 vm->blit(vm->getImageManager()->getImage(new Str("panel.png")), x,y+275);
146 change=false;
147 }
148 // Pintar puntaje
149 if (score->isChanged()){
150 score->paint(vm);
151 vm->blit(vm->getImageManager()->getImage(new Str("score_one.png")),x,y+185);
152 }
153
154 // Pintar required
155 if (required->isChanged()){
156 required->paint(vm);
157 vm->blit(vm->getImageManager()->getImage(new Str("required_one.png")),x,y+240);
158 }
159
160 //Pintar la cola
161 if (queue->isChanged())
162 queue->paint(vm);
163 }
164
165 void Player::setRestrictionCoef(unsigned int coef){
166 queue->setRestrictionCoef(coef);
167 }
168
169 void Player::setFixedCoef(unsigned int coef){
170 queue->setFixedCoef(coef);
171 }
172
173 void Player::tick(){
174 score->tick();
175
176 unsigned int still_required=board->getStillRequired();
177
178 if ((int)still_required<required->getValue())
179 required->dec(required->getValue()-(int)still_required);
180 else
181 if ((int)still_required>required->getValue())
182 required->inc((int)still_required-required->getValue());
183 required->tick();
184 }
185
186 void Player::incScore(Bonus bonus){
187 switch (bonus){
188 case NormalBonus:{
189 score->inc(NORMAL_BONUS_VALUE);
190 break;
191 }
192 case SuperBonus:{
193 score->inc(SUPER_BONUS_VALUE);
194 break;
195 }
196 case UltraBonus:{
197 score->inc(ULTRA_BONUS_VALUE);
198 break;
199 }
200 case HyperBonus:{
201 score->inc(HYPER_BONUS_VALUE);
202 break;
203 }
204 default:break;
205 }
206 }
207
208 unsigned int Player::scoreValue(){
209 return score->getValue();
210 }
211
0 /***************************************************************************
1 player.h - description
2 -------------------
3 begin : Sat Sep 30 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef PLAYER_H
18 #define PLAYER_H
19
20 #include "animatedcanvas.h"
21 #include "pipe.h"
22 #include "pipequeue.h"
23 #include "eventstream.h"
24 #include "board.h"
25 #include "score.h"
26
27 class Player : protected AnimatedCanvas{
28
29 public:
30
31 static const int PlayerWidth=88;
32 static const int PlayerHeight=240;
33 static const int StartLives=3;
34 static const int LivesX=10;
35 static const int LivesY=230;
36 static const int LivesWidth=9;
37 static const int LivesHeight=9;
38
39 Player(EventStream * es);
40 virtual ~Player();
41
42 int width();
43 int height();
44
45 void setPos(int x, int y);
46 void setStartRowColumn(int row, int column);
47 void setBoard(Board * bd);
48
49 inline void setRestrictionCoef(unsigned int coef);
50 inline void setFixedCoef(unsigned int coef);
51
52 void incLives();
53 void decLives();
54 unsigned int lives();
55 bool isChanged();
56 void incScore(Bonus bonus);
57 void setRequired(int required);
58 void incRequired(int inc);
59 void decRequired(int dec);
60 unsigned int scoreValue();
61
62 void play();
63 void paint(VideoManager * vm);
64 void tick();
65
66 protected:
67
68 unsigned int nlives;
69 unsigned int rest_coef;
70 unsigned int fixed_coef;
71 int start_row, start_column;
72 bool change;
73 Pointer * pointer;
74 PipeQueue * queue;
75 EventStream * stream;
76 Board * board;
77 Score * score;
78 Score * required;
79 };
80
81 #endif
82
0 /***************************************************************************
1 playeronestream.h - description
2 -------------------
3 begin : Sat Sep 30 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef PLAYER_ONE_STREAM_H
18 #define PLAYER_ONE_STREAM_H
19
20 #include "eventstream.h"
21 #include "SDL.h"
22
23 class PlayerOneStream : public EventStream{
24
25 public:
26
27 PlayerOneStream(){
28 emt[0]=(struct EMT){SDLK_UP, UP};
29 emt[1]=(struct EMT){SDLK_DOWN, DOWN};
30 emt[2]=(struct EMT){SDLK_LEFT, LEFT};
31 emt[3]=(struct EMT){SDLK_RIGHT, RIGHT};
32 emt[4]=(struct EMT){SDLK_SPACE, HIT};
33 emt[5]=(struct EMT){SDLK_ESCAPE, BACK};
34 emt[6]=(struct EMT){SDLK_RETURN, GO};
35 npairs=7;
36 }
37 };
38 #endif
39
0 /***************************************************************************
1 pointer.cpp - description
2 -------------------
3 begin : Thu Sep 14 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "pointer.h"
18
19 Pointer::Pointer(int row=0, int column=0){
20 this->row=row;
21 this->column=column;
22 this->moved_flag=true;
23 }
24
25 Pointer::~Pointer(){ delete image_name;}
26
27 void Pointer::setRow(int row){
28 this->row=row;
29 }
30
31 void Pointer::setColumn(int column){
32 this->column=column;
33 }
34
35 void Pointer::setRowColumn(int row, int column){
36 this->row=row;
37 this->column=column;
38 }
39
40 void Pointer::setMoved(bool flag){
41 moved_flag=flag;
42 }
43
44 bool Pointer::moved(){
45 return moved_flag;
46 }
47
48 int Pointer::getRow(){
49 return row;
50 }
51
52 int Pointer::getColumn(){
53 return column;
54 }
55
56 void Pointer::paint(VideoManager * vm){
57 ima=((ImageManager *)(vm->getImageManager()))->getImage(new Str(image_name));
58 vm->blit(ima, x, y);
59 }
60
61
0 /***************************************************************************
1 pointer.h - description
2 -------------------
3 begin : Thu Sep 14 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef POINTER_H
18 #define POINTER_H
19
20 #include "canvas.h"
21
22 class Board;
23
24 class Pointer: public Canvas{
25
26 public:
27 static const int width=60;
28 static const int height=60;
29
30 /** Constructor default.*/
31 Pointer(int row=0, int column=0);
32
33 /** Destructor.*/
34 ~Pointer();
35
36 int getRow();
37 int getColumn();
38
39 void paint(VideoManager * vm);
40
41 protected:
42
43 friend class Board;
44
45 inline void setRow(int row);
46 inline void setColumn(int column);
47 inline void setRowColumn(int row, int column);
48 inline void setMoved(bool flag);
49 inline bool moved();
50
51 Str * image_name;
52 Image * ima;
53
54 int row, column;
55 bool moved_flag;
56 };
57
58 #endif
59
0 /***************************************************************************
1 pointercross.h - description
2 -------------------
3 begin : Fri Sep 15 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef POINTER_CROSS_H
18 #define POINTER_CROSS_H
19
20 #include "pointer.h"
21
22 class PointerCross: public Pointer{
23
24 public:
25
26 PointerCross():Pointer(){
27 image_name=new Str("pcross.png");
28 }
29 };
30 #endif
31
0 /***************************************************************************
1 pointerelbowdownleft.h - description
2 -------------------
3 begin : Fri Sep 15 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef POINTER_ELBOW_DOWN_LEFT_H
18 #define POINTER_ELBOW_DOWN_LEFT_H
19
20 #include "pointer.h"
21
22 class PointerElbowDownLeft: public Pointer{
23
24 public:
25
26 PointerElbowDownLeft():Pointer(){
27 image_name=new Str("pelbow_sw.png");
28 }
29 };
30 #endif
31
0 /***************************************************************************
1 pointerelbowdownright.h - description
2 -------------------
3 begin : Thu Sep 14 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef POINTER_ELBOW_DOWN_RIGHT_H
18 #define POINTER_ELBOW_DOWN_RIGHT_H
19
20 #include "pointer.h"
21
22 class PointerElbowDownRight: public Pointer{
23
24 public:
25
26 PointerElbowDownRight():Pointer(){
27 image_name=new Str("pelbow_se.png");
28 }
29 };
30 #endif
31
0 /***************************************************************************
1 pointerelbowupleft.h - description
2 -------------------
3 begin : Fri Sep 15 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef POINTER_ELBOW_UP_LEFT_H
18 #define POINTER_ELBOW_UP_LEFT_H
19
20 #include "pointer.h"
21
22 class PointerElbowUpLeft: public Pointer{
23
24 public:
25
26 PointerElbowUpLeft():Pointer(){
27 image_name=new Str("pelbow_nw.png");
28 }
29 };
30 #endif
31
0 /***************************************************************************
1 pointerelbowupright.h - description
2 -------------------
3 begin : Fri Sep 15 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef POINTER_ELBOW_UP_RIGHT_H
18 #define POINTER_ELBOW_UP_RIGHT_H
19
20 #include "pointer.h"
21
22 class PointerElbowUpRight: public Pointer{
23
24 public:
25
26 PointerElbowUpRight():Pointer(){
27 image_name=new Str("pelbow_ne.png");
28 }
29 };
30 #endif
31
0 /***************************************************************************
1 pointerhorizontal.h - description
2 -------------------
3 begin : Fri Sep 15 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef POINTER_HORIZONTAL_H
18 #define POINTER_HORIZONTAL_H
19
20 #include "pointer.h"
21
22 class PointerHorizontal: public Pointer{
23
24 public:
25
26 PointerHorizontal():Pointer(){
27 image_name=new Str("phorizontal.png");
28 }
29 };
30 #endif
31
0 /***************************************************************************
1 pointerhorizontalbowl.h - description
2 -------------------
3 begin : Mon Jan 1 1996
4 copyright : (C) 1996 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef POINTER_HORIZONTAL_BOWL_H
18 #define POINTER_HORIZONTAL_BOWL_H
19
20 #include "pointer.h"
21
22 class PointerHorizontalBowl: public Pointer{
23
24 public:
25 PointerHorizontalBowl():Pointer(){
26 image_name=new Str("pbowl_h.png");
27 }
28 };
29
30
31 #endif
32
0 /***************************************************************************
1 pointernone.h - description
2 -------------------
3 begin : Fri Sep 15 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef POINTER_NONE_H
18 #define POINTER_NONE_H
19
20 #include "pointer.h"
21
22 class PointerNone: public Pointer{
23
24 public:
25
26 PointerNone():Pointer(){
27 image_name=new Str("pnone.png");
28 }
29 };
30 #endif
31
0 /***************************************************************************
1 pointervertical.h - description
2 -------------------
3 begin : Fri Sep 15 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef POINTER_VERTICAL_H
18 #define POINTER_VERTICAL_H
19
20 #include "pointer.h"
21
22 class PointerVertical: public Pointer{
23
24 public:
25
26 PointerVertical():Pointer(){
27 image_name=new Str("pvertical.png");
28 }
29 };
30 #endif
31
0 /***************************************************************************
1 pointerverticalbowl.h - description
2 -------------------
3 begin : Thu Dec 28 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef POINTER_VERTICAL_BOWL_H
18 #define POINTER_VERTICAL_BOWL_H
19
20 #include "pointer.h"
21
22 class PointerVerticalBowl: public Pointer{
23
24 public:
25 PointerVerticalBowl():Pointer(){
26 image_name=new Str("pbowl_v.png");
27 }
28 };
29
30 #endif
31
0 /***************************************************************************
1 random.cpp - description
2 -------------------
3 begin : Tue Dec 12 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "random.h"
18 #include <stdio.h>
19
20 int Random::getRandomNumber(int low, int high){
21 int result=(int)((float)(high-low+1)*(float)random()/(RAND_MAX))+low;
22 return result;
23 }
24
0 /***************************************************************************
1 random.h - description
2 -------------------
3 begin : Tue Dec 12 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef RANDOM_H
18 #define RANDOM_H
19
20 #include "object.h"
21 #include <stdlib.h>
22
23 class Random: public Object{
24 public:
25 Random():Object(){};
26 ~Random(){};
27
28 int getRandomNumber(int low, int high);
29 };
30
31 #endif
32
0 /***************************************************************************
1 score.cpp - description
2 -------------------
3 begin : Sun Mar 11 2001
4 copyright : (C) 2001 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "score.h"
18 #include <math.h>
19
20 Score::Score(int value=0){
21 this->value=value;
22 delta=0;
23 changed=true;
24 }
25
26 Score::~Score(){}
27
28 void Score::inc(unsigned int value){
29 changed=true;
30 delta+=value;
31 }
32
33 void Score::dec(unsigned int value){
34 changed=true;
35 delta-=value;
36 }
37
38 int Score::getValue(){
39 return value+delta;
40 }
41
42 bool Score::isChanged(){
43 return changed;
44 }
45
46 void Score::sumUp(){
47 if (delta > 0)
48 value+=delta;
49 else
50 if (delta<0)
51 if ((unsigned int)abs(delta)<value)
52 value-=(unsigned int)abs(delta);
53 delta=0;
54 }
55
56 void Score::paint(VideoManager * vm){
57 // Borra
58 vm->fillRect(x,y,ScoreWidth,ScoreHeight,0,0,0,255);
59 // Dibuja los numeros
60 int p=x+ScoreWidth-2;
61 unsigned int i;
62 int aux_value=value;
63 Image * ima;
64 for (i=0; i<Digits;i++){
65 switch (aux_value%10){
66 case 0:{
67 ima=(vm->getImageManager())->getImage(new Str("0.png"));
68 break;
69 }
70 case 1:{
71 ima=(vm->getImageManager())->getImage(new Str("1.png"));
72 break;
73 }
74 case 2:{
75 ima=(vm->getImageManager())->getImage(new Str("2.png"));
76 break;
77 }
78 case 3:{
79 ima=(vm->getImageManager())->getImage(new Str("3.png"));
80 break;
81 }
82 case 4:{
83 ima=(vm->getImageManager())->getImage(new Str("4.png"));
84 break;
85 }
86 case 5:{
87 ima=(vm->getImageManager())->getImage(new Str("5.png"));
88 break;
89 }
90 case 6:{
91 ima=(vm->getImageManager())->getImage(new Str("6.png"));
92 break;
93 }
94 case 7:{
95 ima=(vm->getImageManager())->getImage(new Str("7.png"));
96 break;
97 }
98 case 8:{
99 ima=(vm->getImageManager())->getImage(new Str("8.png"));
100 break;
101 }
102 case 9:{
103 ima=(vm->getImageManager())->getImage(new Str("9.png"));
104 break;
105 }
106 default:break;
107 }
108 p-=ima->width();
109 vm->blit(ima,p,y+2);
110 aux_value/=10;
111 }
112 changed=false;
113 }
114
115 void Score::tick(){
116 changed=true;
117 if ((unsigned int)abs(delta) > TickValue){
118 if (delta > 0){
119 delta-=TickValue;
120 value+=TickValue;
121 }else{
122 delta+=TickValue;
123 if (value - TickValue > 0)
124 value-=TickValue;
125 else
126 value=0;
127 }
128 }else{
129 value+=delta;
130 delta=0;
131 }
132 }
133
0 /***************************************************************************
1 score.h - description
2 -------------------
3 begin : Sun Mar 11 2001
4 copyright : (C) 2001 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef SCORE_H
18 #define SCORE_H
19
20 #include "animatedcanvas.h"
21
22 class Score : public AnimatedCanvas{
23
24 public:
25
26 Score(int value=0);
27 virtual ~Score();
28
29 void inc(unsigned int value);
30
31 void dec(unsigned int value);
32
33 void sumUp();
34
35 int getValue();
36
37 bool isChanged();
38
39 void paint(VideoManager * vm);
40
41 void tick();
42
43 private:
44 static const unsigned int TickValue=1;
45 static const unsigned int ScoreWidth = 80;
46 static const unsigned int ScoreHeight = 15;
47 static const unsigned int Digits = 8;
48
49 unsigned int value;
50 int delta;
51 bool changed;
52 };
53
54 #endif
55
0 timestamp
0 timestamp
0 /***************************************************************************
1 str.cpp - description
2 -------------------
3 begin : Tue Aug 1 2000
4 copyright : (C) 2000 by W. Baraldi & D. Scarpa
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 #include "str.h"
9 #include <string.h>
10
11 const char Str::nul = '\0';
12
13 Str::Str(const char * string=NULL){
14 s=NULL;
15 set(string);
16 }
17
18 Str::Str(Str * str){
19 s=NULL;
20 if (str) set(str->s);
21 }
22
23 Str::~Str(){
24 if (s) delete[] s;
25 }
26
27 void Str::set(const char * string=NULL){
28 if (s) delete[] s;
29 if (string){
30 s=new char[strlen(string)+1];
31 strcpy(s, string);
32 }else s=NULL;
33 }
34
35 void Str::set(const Str * str){
36 set(((Str*)(str))->get());
37 }
38
39 const char * Str::get(){
40 if (s)
41 return (s);
42 else
43 return (&nul);
44 }
45
46 bool Str::contains(const char * string){
47 return (strstr(s, string));
48 }
49
50 bool Str::contains(Str * str){
51 return (strstr(s, str->s));
52 }
53
54 void Str::concat(const char * string){
55 char * aux=NULL;
56 if (string){
57 aux=new char[strlen(s)+strlen(string)+1];
58 strcpy(aux, s),
59 strcat(aux, string);
60 free(s);
61 }
62 s=aux;
63 }
64
65 void Str::concat(Str * str){
66 concat(str->s);
67 }
68
69 int Str::lenght(){
70 return (strlen(s));
71 }
72
73 bool Str::isEqual(Str * str, bool case_sensitive = true){
74 if (case_sensitive){
75 return (!strcmp(s, str->s));
76 }
77 return (!strcasecmp(s, str->s));
78 }
79
80 void Str::crop(unsigned int start, unsigned int end){
81 if (end>strlen(s)-1) end=strlen(s)-1;
82 if (start<end){
83 char * aux=new char[strlen(s)+1];
84 char * aux2=s+start;
85 strncpy(aux, aux2, end-start);
86 aux[end-start]='\0';
87 delete[] s;
88 s=aux;
89 }else
90 set();
91 }
92
93 int Str::toInt(){
94 return atoi(s);
95 }
96
97 bool Str::toBool(){
98 if (!strcasecmp("f", s)) return (false);
99 if (!strcasecmp("false", s)) return (false);
100 if (!strcasecmp("t", s)) return (true);
101 if (!strcasecmp("true", s)) return (true);
102 return false;
103 }
104
105 float Str::toFloat(){
106 return (atof(s));
107 }
108
0 /***************************************************************************
1 str.h - description
2 -------------------
3 begin : Tue Aug 1 2000
4 copyright : (C) 2000 by W. Baraldi & D. Scarpa
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /**
9 This program is free software; you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation; either version 2 of the License, or
12 (at your option) any later version.
13 */
14
15 #ifndef STR_H
16 #define STR_H
17
18 #include "object.h"
19 #include <stdlib.h>
20 #include <string.h>
21
22 class Str: public Object{
23
24 public:
25
26 /**
27 Contructor default, asigna la cadena pasada como const char * .
28 Para crear una cadena nula usar : new Str()
29 */
30
31 Str(const char * string=NULL);
32
33 /**
34 Contructor copy, crea una copia del Str pasado como parƔmetro
35 */
36
37 Str(Str * str);
38
39 /**
40 Destructor
41 */
42 ~Str();
43
44 /**
45 Asigna la cadena parƔmetro
46 */
47 void set(const char * string=NULL);
48
49 /**
50 Asigna la cadena parƔmetro
51 */
52 void set(const Str * str);
53
54 /**
55 Retorna la cadena como const char *.
56 No debe alterarse la cadena obtenida ya que no es una copia.
57 */
58 const char * get();
59
60 /**
61 Concatena la cadena const char * enviada
62 */
63 void concat(const char * string);
64
65 /**
66 Concatena la cadena enviada
67 */
68 void concat(Str * str);
69
70 /**
71 Retorna true si la cadena const char * enviada esta contenida.
72 */
73 bool contains(const char * string);
74
75 /**
76 Retorna true si la cadena parƔmetro esta contenida.
77 */
78 bool contains(Str * str);
79
80 /** Retorna la longitud de la cadena.*/
81 int lenght();
82
83 /** Compara con la cadena parƔmetro. Si case_sensitive es true entonces
84 lo harĆ” case sensitive.*/
85 bool isEqual(Str * str, bool case_sensitive = true);
86
87 /** Deja solo la parte contenida entre start y end.*/
88 void crop(unsigned int start, unsigned int end);
89
90 /**
91 Retorna el int resultado de convertir la cadena.
92 */
93 int toInt();
94
95 /**
96 Retorna el bool resultado de convertir la cadena. Los valores reconocidos como
97 false son : "f" o "false" y como true : "t" y "true", sin sensibilidad a mayĆŗsculas
98 o minĆŗsculas. El valor default devuelto es false;
99 */
100 bool toBool();
101
102 /**
103 Retorna el float resultado de convertir la cadena.
104 */
105 float toFloat();
106
107 protected:
108 char * s;
109 static const char nul;
110 };
111
112 #endif
113
114
0 /***************************************************************************
1 surface.cpp - description
2 -------------------
3 begin : Sat Oct 14 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "surface.h"
18 #include <stdio.h>
19
20 Surface::Surface(){
21 surface=NULL;
22 }
23
24 Surface::Surface(int width, int height){
25 SDL_Rect rect;
26 SDL_Surface * aux_surface;
27
28 rect.x=0;
29 rect.y=0;
30 rect.w=width;
31 rect.h=height;
32
33 aux_surface=SDL_CreateRGBSurface(SDL_HWSURFACE, width, height,
34 32, 0xff, 0x00ff,0x0000ff,0x000000ff);
35 surface=SDL_DisplayFormatAlpha(aux_surface);
36 SDL_FreeSurface(aux_surface);
37 }
38
39 Surface::~Surface(){
40 if (surface) SDL_FreeSurface(surface);
41 }
42
43 int Surface::width(){
44 if (surface) return surface->w;
45 return 0;
46 }
47
48 int Surface::height(){
49 if (surface) return surface->h;
50 return 0;
51 }
52
0 /***************************************************************************
1 surface.h - description
2 -------------------
3 begin : Sat Oct 14 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef SURFACE_H
18 #define SURFACE_H
19
20 #include "object.h"
21 #include "SDL.h"
22
23 class VideoManager;
24
25 class Surface: public Object{
26
27 public:
28
29 Surface();
30
31 /** Constructor.*/
32 Surface(int width, int height);
33
34 /** Destructor.*/
35 virtual ~Surface();
36
37 /**
38 @return El ancho de la surface.
39 */
40 virtual int width();
41
42 /**
43 @return El alto de la surface.
44 */
45 virtual int height();
46
47 protected:
48
49 friend class VideoManager;
50 SDL_Surface * surface;
51
52 };
53 #endif
54
0 /***************************************************************************
1 systemstream.h - description
2 -------------------
3 begin : Sat Sep 30 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef SYSTEM_STREAM_H
18 #define SYSTEM_STREAM_H
19
20 #include "eventstream.h"
21 #include "SDL.h"
22
23 class SystemStream : public EventStream{
24
25 public:
26
27 /** En un futuro no muy lejano esto debiera poder sobrescribirse.*/
28
29 SystemStream(){
30 emt[0]=(struct EMT){SDLK_UP, UP};
31 emt[1]=(struct EMT){SDLK_DOWN, DOWN};
32 emt[2]=(struct EMT){SDLK_LEFT, LEFT};
33 emt[3]=(struct EMT){SDLK_RIGHT, RIGHT};
34 emt[4]=(struct EMT){SDLK_SPACE, HIT};
35 emt[5]=(struct EMT){SDLK_ESCAPE, BACK};
36 emt[6]=(struct EMT){SDLK_RETURN, GO};
37 npairs=7;
38 }
39 };
40
41 #endif
42
0 /***************************************************************************
1 tank.cpp - description
2 -------------------
3 begin : Fri Dec 29 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16 #include "tank.h"
17
18 #define MAX_STATE 20
19
20 Tank::Tank(unsigned int full_level):AnimatedCanvas(){
21 this->full_level=full_level%(Capacity-1);
22 state=0;
23 changed=true;
24 }
25
26 Tank::~Tank(){}
27
28 void Tank::decFullLevel(unsigned int amount){
29 if (full_level>0 && (unsigned int)full_level>amount)
30 full_level-=amount;
31 else full_level=0;
32 changed=true;
33 }
34
35 bool Tank::isEmpty(){
36 return full_level<=0;
37 }
38
39 bool Tank::isChanged(){
40 return changed;
41 }
42
43 void Tank::paint(VideoManager * vm){
44 int f=(int)((float)TankHeight*(float)full_level/(float)Capacity);
45 Image * ima;
46
47 // Borra
48 vm->fillRect(x,y,TankWidth,TankHeight-f, 0,0,0,OPAQUE);
49 //Dibuja el liquido
50 vm->fillRect(x,y+TankHeight-f, TankWidth, f, 103,234,16,OPAQUE);
51 //Pinta el frente
52 ima=(vm->getImageManager())->getImage(new Str("tank.png"));
53 vm->blit(ima,x,y);
54 changed=false;
55 }
56
57 void Tank::tick(){
58 state=(state+1)%MAX_STATE;
59 }
60
61
0 /***************************************************************************
1 tank.h - description
2 -------------------
3 begin : Fri Dec 29 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef TANK_H
18 #define TANK_H
19
20 #include "animatedcanvas.h"
21
22 class Tank: public AnimatedCanvas{
23
24 public:
25
26 /** Crea una tanque full_level lleno*/
27 Tank(unsigned int full_level);
28
29 /** Destructor*/
30 ~Tank();
31
32 /**Disminuye la cantidad en 1.*/
33 void decFullLevel(unsigned int amount);
34
35 /** Retorna true si el tanque esta vacio.*/
36 bool isEmpty();
37
38 void paint(VideoManager * vm);
39
40 bool isChanged();
41
42 void tick();
43
44 protected:
45
46 static const unsigned int Capacity=2000;
47 static const unsigned int TankWidth=12;
48 static const unsigned int TankHeight=180;
49
50 int full_level;
51 int state;
52 bool changed;
53 };
54 #endif
55
0 /***************************************************************************
1 vertical.cpp - description
2 -------------------
3 begin : Thu Aug 17 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "vertical.h"
18 #include "pointervertical.h"
19
20 Vertical::Vertical(){
21 p=new PointerVertical();
22 }
23
24 Vertical::~Vertical(){
25 delete p;
26 }
27
28 bool Vertical::hasConnection(CardinalPoint con){
29 return (con==South || con==North);
30 }
31
32 CardinalPoint Vertical::getOutput(CardinalPoint input){
33 if (input==ro) return Void;
34 switch (input){
35 case South: return North;
36 case North:return South;
37 default:return Void;
38 }
39 }
40
41 void Vertical::restrictAsOutput(CardinalPoint con){
42 if (con==North || con==South) ro=con;
43 }
44
45 bool Vertical::isRestrictedAsOutput(CardinalPoint con){
46 return (con==ro);
47 }
48
49 void Vertical::incFullLevel(CardinalPoint input,unsigned int amount){
50 if ((input==North || input==South) && input!=ro)
51 if ((used_input==Void) || (used_input==input)){
52 full_level+=amount;
53 used_input=input;
54 }
55 }
56
57 int Vertical::getFullLevel(CardinalPoint input){
58 if (used_input==input)
59 return full_level;
60 return -1;
61 }
62
63 Pointer * Vertical::getPointer(){
64 return p;
65 }
66
67 void Vertical::paint(VideoManager * vm){
68
69 Image * ima;
70 if (fixed)
71 ima=(vm->getImageManager())->getImage(new Str("vertical_b.png"));
72 else
73 ima=(vm->getImageManager())->getImage(new Str("vertical.png"));
74 vm->blit(ima, x, y);
75
76 if (ro!=Void) paintRestriction(vm, ro);
77
78 paintFlow(vm);
79 }
80
81 void Vertical::paintFlow(VideoManager * vm){
82 if (full_level>0){
83 Image * aux=(vm->getImageManager())->getImage(new Str("flow.png"));
84 int xof=x+PipeWidth/2-aux->width()/2;
85 int yof=aux->height()/2;
86 int total, f;
87 vm->setClipping(x, y, PipeWidth, PipeHeight);
88 vm->enableClipping(true);
89 if (used_input==North){
90 total=y-yof;
91 f=1;
92 }
93 else{
94 total=PipeHeight+y-yof;
95 f=-1;
96 }
97 for (int i=0; i<full_level+Gran;i+=Gran)
98 vm->blit(aux, xof, total+f*(float)i/(float)full()*(float)PipeHeight);
99 vm->enableClipping(false);
100 }
101 if (bonus!=NormalBonus) paintBonus(vm, bonus);
102 }
103
0 /***************************************************************************
1 vertical.h - description
2 -------------------
3 begin : Thu Aug 17 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16 #ifndef VERTICAL_H
17 #define VERTICAL_H
18
19 #include "pipe.h"
20
21 class Vertical: public Pipe{
22
23 public:
24
25 Vertical();
26 ~Vertical();
27
28 bool hasConnection(CardinalPoint con);
29
30 CardinalPoint getOutput(CardinalPoint input);
31
32 void restrictAsOutput(CardinalPoint con);
33
34 bool isRestrictedAsOutput(CardinalPoint con);
35
36 void incFullLevel(CardinalPoint input,unsigned int amount);
37
38 int getFullLevel(CardinalPoint input);
39
40 Pointer * getPointer();
41
42 void paint(VideoManager * vm);
43
44 protected:
45
46 void paintFlow(VideoManager * vm);
47
48 };
49
50 #endif
51
0 /***************************************************************************
1 verticalbowl.cpp - description
2 -------------------
3 begin : Thu Dec 28 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "verticalbowl.h"
18 #include "pointerverticalbowl.h"
19
20 VerticalBowl::VerticalBowl():Vertical(){
21 delete p; /* Esto es asqueroso pero no encontrĆ© otra soluciĆ³n para
22 llamar solo a Pipe()*/
23 p=new PointerVerticalBowl();
24 bowl_level=0;
25 }
26
27 void VerticalBowl::incFullLevel(CardinalPoint input,unsigned int amount){
28 if ((input==North || input==South) && input!=ro)
29 if ((used_input==Void) || (used_input==input)){
30 if (bowl_level>=BowlCapacity)
31 full_level+=amount;
32 else
33 if (full_level>DefaultCapacity/2)
34 bowl_level+=amount;
35 else
36 full_level+=amount;
37 used_input=input;
38 }
39 }
40
41 void VerticalBowl::paint(VideoManager * vm){
42
43 Image * ima;
44 if (fixed)
45 ima=(vm->getImageManager())->getImage(new Str("bowl_vb.png"));
46 else
47 ima=(vm->getImageManager())->getImage(new Str("bowl_v.png"));
48 vm->blit(ima, x, y);
49
50 if (ro!=Void) paintRestriction(vm, ro);
51
52 paintFlow(vm);
53
54 if (bowl_level>BowlCapacity/2){
55 ima=(vm->getImageManager())->getImage(new Str("flow_big.png"));
56 vm->blit(ima, x, y);
57 }
58 if (bonus!=NormalBonus) paintBonus(vm, bonus);
59 }
60
61
0 /***************************************************************************
1 verticalbowl.h - description
2 -------------------
3 begin : Thu Dec 28 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef VERTICAL_BOWL_H
18 #define VERTICAL_BOWL_H
19
20 #include "vertical.h"
21
22 class VerticalBowl: public Vertical{
23
24 public:
25
26 VerticalBowl();
27
28 void incFullLevel(CardinalPoint input,unsigned int amount);
29
30 void paint(VideoManager * vm);
31
32 protected:
33
34 static const int BowlCapacity=500;
35 int bowl_level;
36
37 };
38 #endif
39
0 /***************************************************************************
1 videomanager.cpp - description
2 -------------------
3 begin : Thu Aug 17 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "videomanager.h"
18
19 int max(int a, int b){
20 return (a>b?a:b);
21 }
22
23 int min(int a, int b){
24 return (a<b?a:b);
25 }
26
27 VideoManager::VideoManager():Graphic(){
28 int depth;
29
30 //Init video in 640x480x16 by default
31
32 if ((depth=SDL_VideoModeOK(640, 480, 16, 0)))
33 surface=SDL_SetVideoMode(640, 480, depth, 0);
34 else printf("Modo no soportado\n");
35
36 im=new ImageManager();
37 nrects=0;
38 }
39
40 VideoManager::~VideoManager(){
41 surface=NULL;
42 delete im;
43 }
44
45 void VideoManager::setCaption(Str * str){
46 SDL_WM_SetCaption(str->get(), NULL);
47 delete str;
48 }
49
50 void VideoManager::blit(Surface * s, int x, int y, int rx, int ry, int rw, int rh){
51 SDL_Rect rsrc, rdst;
52
53 rsrc.x=rx;
54 rsrc.y=ry;
55 rsrc.w=rw;
56 rsrc.h=rh;
57
58 rdst.x=x;
59 rdst.y=y;
60
61 SDL_BlitSurface(s->surface, &rsrc, surface, &rdst);
62 addRect(rdst.x, rdst.y, (unsigned int)rdst.w, (unsigned int)rdst.h);
63 }
64
65 void VideoManager::blit(Surface * s, int x, int y){
66 SDL_Rect rdst;
67
68 rdst.x=x;
69 rdst.y=y;
70 SDL_BlitSurface(s->surface, NULL, surface, &rdst);
71 addRect(rdst.x, rdst.y, (unsigned int)rdst.w, (unsigned int)rdst.h);
72 }
73
74 void VideoManager::flush(){
75 SDL_UpdateRects(surface, nrects, rects);
76 nrects=0;
77 }
78
79 ImageManager * VideoManager::getImageManager(){
80 return im;
81 }
82
83 void VideoManager::fillRect(int x, int y, int w, int h, int r, int g, int b, int a){
84 Graphic::fillRect(x,y,w,h,r,g,b,a);
85
86 SDL_Rect rect;
87 rect.x=x;
88 rect.y=y;
89 rect.w=w;
90 rect.h=h;
91 addRect(rect.x, rect.y, (unsigned int)rect.w, (unsigned int)rect.h);
92 }
93
94 void VideoManager::addRect(int x, int y, unsigned int w, unsigned int h){
95 SDL_Rect rect;
96 rect.x=x;
97 rect.y=y;
98 rect.w=w;
99 rect.h=h;
100 int i=0;
101 bool ready=false;
102 while (i<nrects && !ready){
103 if ((rects[i].x==rect.x && rects[i].y==rect.y) ||
104 ((rects[i].x + rects[i].w)==(rect.x + rect.w) && rects[i].y==rect.y) ||
105 (rects[i].x==rect.x && (rects[i].y + rects[i].h)==(rect.y + rect.w)) ||
106 ((rects[i].x + rects[i].w)==(rect.x + rect.w) && (rects[i].y + rects[i].h)==(rect.y + rect.w))){
107 rects[i].x = min(rects[i].x, rect.x);
108 rects[i].y = min(rects[i].y, rect.y);
109 rects[i].w = max(rects[i].w, rect.w);
110 rects[i].h = max(rects[i].h, rect.h);
111 ready=true;
112 }
113 i++;
114 }
115 if (!ready) {
116 rects[nrects].x = rect.x;
117 rects[nrects].y = rect.y;
118 rects[nrects].w = rect.w;
119 rects[nrects].h = rect.h;
120 nrects++;
121 }
122 }
123
124
0 /***************************************************************************
1 videomanager.h - description
2 -------------------
3 begin : Thu Aug 17 2000
4 copyright : (C) 2000 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef VIDEO_MANAGER_H
18 #define VIDEO_MANAGER_H
19
20 #include "graphic.h"
21 #include "SDL.h"
22 #include "surface.h"
23 #include "imagemanager.h"
24 #include "list.h"
25 #include "str.h"
26
27 class VideoManager: public Graphic{
28
29 public:
30
31 static const int max_rects=512;
32
33 /** The constructor initializes the video.*/
34 VideoManager();
35
36 /** Closes the video. */
37 ~VideoManager();
38
39 void setCaption(Str * str);
40
41 /** Pinta el rectangulo (rx,ry,rw,rh) de la surface s
42 en la posicion (x,y)*/
43 void blit(Surface * s, int x, int y, int rx, int ry, int rw, int rh);
44
45 /** Pinta la surface en la posicion (x,y)*/
46
47 void blit(Surface * s, int x, int y);
48
49 /** Llena un rectangulo (x,y,w,h) con el color de componentes (r,g,b,a)*/
50 void fillRect(int x, int y, int w, int h, int r, int g, int b, int a);
51
52 /** Realiza la actualizaciĆ³n en pantalla de todos los rectangulos.*/
53 void flush();
54
55 /** Retorna el image manager asociado.*/
56 ImageManager * getImageManager();
57
58 protected:
59
60 class Rect;
61
62 inline void addRect(int x, int y, unsigned int w, unsigned int h);
63
64 ImageManager * im;
65 SDL_Rect rects[max_rects];
66
67 int nrects;
68 };
69
70 #endif
71
72
0 /***************************************************************************
1 wallpaper.cpp - description
2 -------------------
3 begin : Wed Mar 21 2001
4 copyright : (C) 2001 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #include "wallpaper.h"
18
19 WallPaper::WallPaper(Image * image):Background(){
20 this->image=image;
21 image->setAlpha(OPAQUE);
22 }
23
24 WallPaper::~WallPaper(){
25 //delete image;
26 }
27
28 void WallPaper::repaint(VideoManager * vm, int x, int y, int w, int h){
29 /** Pinta el rectangulo (rx,ry,rw,rh) de la surface s
30 en la posicion (x,y)*/
31 vm->blit(image, this->x+x, this->y+y, x, y, w, h);
32 }
33
34 void WallPaper::paint(VideoManager * vm){
35 vm->blit(image, x, y);
36 }
37
38
0 /***************************************************************************
1 wallpaper.h - description
2 -------------------
3 begin : Wed Mar 21 2001
4 copyright : (C) 2001 by Waldemar Baraldi
5 email : baraldi@lacasilla.com.ar
6 ***************************************************************************/
7
8 /***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17 #ifndef WALLPAPER_H
18 #define WALLPAPER_H
19
20 #include "background.h"
21
22 class WallPaper: public Background{
23
24 public:
25 WallPaper(Image * image);
26 virtual ~WallPaper();
27
28 void repaint(VideoManager * vm, int x, int y, int w, int h);
29 void paint(VideoManager * vm);
30
31 protected:
32
33 Image * image;
34 };
35
36 #endif
37
0 timestamp
0 timestamp