forked from len0rd/rockbox
puzzles: refactor and resync with upstream
This brings puzzles up-to-date with upstream revision 2d333750272c3967cfd5cd3677572cddeaad5932, though certain changes made by me, including cursor-only Untangle and some compilation fixes remain. Upstream code has been moved to its separate subdirectory and future syncs can be done by simply copying over the new sources. Change-Id: Ia6506ca5f78c3627165ea6791d38db414ace0804
This commit is contained in:
parent
03dd4b92be
commit
881746789a
329 changed files with 27350 additions and 1043 deletions
|
@ -19,3 +19,10 @@ out how to do that with a wildcard or something.
|
||||||
Kudos to Simon (duh), and Frank, for telling me about it.
|
Kudos to Simon (duh), and Frank, for telling me about it.
|
||||||
|
|
||||||
Franklin Wei (__builtin)
|
Franklin Wei (__builtin)
|
||||||
|
|
||||||
|
April 2017: Changes made to move upstream sources to a separate
|
||||||
|
subdirectory, where they are completely unmodified from the
|
||||||
|
original. Updating the upstream version is now as simple as copying a
|
||||||
|
fresh set of sources to src/. Several hacks were used to accomplish
|
||||||
|
this: a global include specified on the command line, and a directory
|
||||||
|
of dummy header files.
|
||||||
|
|
|
@ -1,26 +1,26 @@
|
||||||
rockbox.c
|
rockbox.c
|
||||||
rbwrappers.c
|
rbwrappers.c
|
||||||
|
rbmalloc.c
|
||||||
combi.c
|
src/combi.c
|
||||||
divvy.c
|
src/divvy.c
|
||||||
drawing.c
|
src/drawing.c
|
||||||
dsf.c
|
src/dsf.c
|
||||||
findloop.c
|
src/findloop.c
|
||||||
grid.c
|
src/grid.c
|
||||||
latin.c
|
src/latin.c
|
||||||
laydomino.c
|
src/laydomino.c
|
||||||
loopgen.c
|
src/loopgen.c
|
||||||
malloc.c
|
/*src/malloc.c*/ /* we have our own */
|
||||||
maxflow.c
|
src/maxflow.c
|
||||||
midend.c
|
src/midend.c
|
||||||
misc.c
|
src/misc.c
|
||||||
penrose.c
|
src/penrose.c
|
||||||
printing.c
|
src/printing.c
|
||||||
random.c
|
src/random.c
|
||||||
tdq.c
|
src/tdq.c
|
||||||
tree234.c
|
src/tree234.c
|
||||||
version.c
|
src/version.c
|
||||||
|
|
||||||
#ifdef COMBINED
|
#ifdef COMBINED
|
||||||
list.c
|
src/list.c
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -1,51 +1,51 @@
|
||||||
blackbox.c
|
src/blackbox.c
|
||||||
bridges.c
|
src/bridges.c
|
||||||
cube.c
|
src/cube.c
|
||||||
dominosa.c
|
src/dominosa.c
|
||||||
fifteen.c
|
src/fifteen.c
|
||||||
/*filling.c*/
|
/*src/filling.c*/
|
||||||
flip.c
|
src/flip.c
|
||||||
flood.c
|
src/flood.c
|
||||||
galaxies.c
|
src/galaxies.c
|
||||||
guess.c
|
src/guess.c
|
||||||
inertia.c
|
src/inertia.c
|
||||||
/*keen.c*/
|
/*src/keen.c*/
|
||||||
lightup.c
|
src/lightup.c
|
||||||
/*loopy.c*/
|
/*src/loopy.c*/
|
||||||
magnets.c
|
src/magnets.c
|
||||||
map.c
|
src/map.c
|
||||||
/*mines.c*/
|
/*src/mines.c*/
|
||||||
net.c
|
src/net.c
|
||||||
netslide.c
|
src/netslide.c
|
||||||
/*palisade.c*/
|
/*src/palisade.c*/
|
||||||
pattern.c
|
src/pattern.c
|
||||||
pegs.c
|
src/pegs.c
|
||||||
range.c
|
src/range.c
|
||||||
rect.c
|
src/rect.c
|
||||||
samegame.c
|
src/samegame.c
|
||||||
signpost.c
|
src/signpost.c
|
||||||
singles.c
|
src/singles.c
|
||||||
sixteen.c
|
src/sixteen.c
|
||||||
slant.c
|
src/slant.c
|
||||||
/*solo.c*/
|
/*src/solo.c*/
|
||||||
tents.c
|
src/tents.c
|
||||||
/*towers.c*/
|
/*src/towers.c*/
|
||||||
tracks.c
|
src/tracks.c
|
||||||
twiddle.c
|
src/twiddle.c
|
||||||
/*undead.c*/
|
/*src/undead.c*/
|
||||||
/*unequal.c*/
|
/*src/unequal.c*/
|
||||||
unruly.c
|
src/unruly.c
|
||||||
untangle.c
|
src/untangle.c
|
||||||
|
|
||||||
/* disabled for now */
|
/* disabled for now */
|
||||||
/*unfinished/group.c*/
|
/*src/unfinished/group.c*/
|
||||||
/*unfinished/separate.c*/
|
/*src/unfinished/separate.c*/
|
||||||
/*unfinished/slide.c*/
|
/*src/unfinished/slide.c*/
|
||||||
/*unfinished/sokoban.c*/
|
/*src/unfinished/sokoban.c*/
|
||||||
|
|
||||||
/* no c200v2 */
|
/* no c200v2 */
|
||||||
#if PLUGIN_BUFFER_SIZE > 0x14000
|
#if PLUGIN_BUFFER_SIZE > 0x14000
|
||||||
pearl.c
|
src/pearl.c
|
||||||
/*loopy.c*/
|
/*src/loopy.c*/
|
||||||
/*solo.c*/
|
/*src/solo.c*/
|
||||||
#endif
|
#endif
|
||||||
|
|
1
apps/plugins/puzzles/dummy/assert.h
Normal file
1
apps/plugins/puzzles/dummy/assert.h
Normal file
|
@ -0,0 +1 @@
|
||||||
|
|
0
apps/plugins/puzzles/dummy/math.h
Normal file
0
apps/plugins/puzzles/dummy/math.h
Normal file
0
apps/plugins/puzzles/dummy/stdlib.h
Normal file
0
apps/plugins/puzzles/dummy/stdlib.h
Normal file
|
@ -1,120 +0,0 @@
|
||||||
#!/usr/bin/perl
|
|
||||||
|
|
||||||
use strict;
|
|
||||||
use warnings;
|
|
||||||
|
|
||||||
open my $footerfile, "<", shift @ARGV or die "footer: open: $!\n";
|
|
||||||
my $footer = "";
|
|
||||||
$footer .= $_ while <$footerfile>;
|
|
||||||
close $footerfile;
|
|
||||||
|
|
||||||
for my $arg (@ARGV) {
|
|
||||||
$arg =~ /(.*\/)?([^\/]+)\.html$/ or die;
|
|
||||||
my $filename = $2;
|
|
||||||
open my $gamefile, "<", $arg or die "$arg: open: $!\n";
|
|
||||||
my $unfinished = 0;
|
|
||||||
my $docname = $filename;
|
|
||||||
chomp(my $puzzlename = <$gamefile>);
|
|
||||||
while ($puzzlename =~ s/^([^:=]+)(=([^:]+))?://) {
|
|
||||||
if ($1 eq "unfinished") {
|
|
||||||
$unfinished = 1;
|
|
||||||
} elsif ($1 eq "docname") {
|
|
||||||
$docname = $3;
|
|
||||||
} else {
|
|
||||||
die "$arg: unknown keyword '$1'\n";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
my $instructions = "";
|
|
||||||
$instructions .= $_ while <$gamefile>;
|
|
||||||
close $gamefile;
|
|
||||||
|
|
||||||
open my $outpage, ">", "${filename}.html";
|
|
||||||
|
|
||||||
my $unfinishedtitlefragment = $unfinished ? "an unfinished puzzle " : "";
|
|
||||||
my $unfinishedheading = $unfinished ? "<h2 align=center>an unfinished puzzle</h2>\n" : "";
|
|
||||||
my $unfinishedpara;
|
|
||||||
my $links;
|
|
||||||
if ($unfinished) {
|
|
||||||
$unfinishedpara = <<EOF;
|
|
||||||
<p>
|
|
||||||
You have found your way to a page containing an <em>unfinished</em>
|
|
||||||
puzzle in my collection, not linked from the <a href="../">main
|
|
||||||
puzzles page</a>. Don't be surprised if things are hard to understand
|
|
||||||
or don't work as you expect.
|
|
||||||
EOF
|
|
||||||
$links = <<EOF;
|
|
||||||
<p align="center">
|
|
||||||
<a href="../">Back to main puzzles page</a> (which does not link to this)
|
|
||||||
EOF
|
|
||||||
} else {
|
|
||||||
$unfinishedpara = "";
|
|
||||||
$links = <<EOF;
|
|
||||||
<p align="center">
|
|
||||||
<a href="../doc/${docname}.html#${docname}">Full instructions</a>
|
|
||||||
|
|
|
||||||
<a href="../">Back to main puzzles page</a>
|
|
||||||
EOF
|
|
||||||
}
|
|
||||||
|
|
||||||
print $outpage <<EOF;
|
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=ASCII" />
|
|
||||||
<title>${puzzlename}, ${unfinishedtitlefragment}from Simon Tatham's Portable Puzzle Collection</title>
|
|
||||||
<script type="text/javascript" src="${filename}.js"></script>
|
|
||||||
</head>
|
|
||||||
<body onLoad="initPuzzle();">
|
|
||||||
<h1 align=center>${puzzlename}</h1>
|
|
||||||
${unfinishedheading}
|
|
||||||
<h2 align=center>from Simon Tatham's Portable Puzzle Collection</h2>
|
|
||||||
|
|
||||||
${unfinishedpara}
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
<div id="puzzle" style="display: none">
|
|
||||||
<p align=center>
|
|
||||||
<input type="button" id="new" value="New game">
|
|
||||||
<input type="button" id="restart" value="Restart game">
|
|
||||||
<input type="button" id="undo" value="Undo move">
|
|
||||||
<input type="button" id="redo" value="Redo move">
|
|
||||||
<input type="button" id="solve" value="Solve game">
|
|
||||||
<input type="button" id="specific" value="Enter game ID">
|
|
||||||
<input type="button" id="random" value="Enter random seed">
|
|
||||||
<select id="gametype"></select>
|
|
||||||
</p>
|
|
||||||
<div align=center>
|
|
||||||
<div id="resizable" style="position:relative; left:0; top:0">
|
|
||||||
<canvas style="display: block" id="puzzlecanvas" width="1px" height="1px" tabindex="1">
|
|
||||||
</canvas>
|
|
||||||
<div id="statusbarholder" style="display: block">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<p>
|
|
||||||
Link to this puzzle:
|
|
||||||
<a id="permalink-desc">by game ID</a>
|
|
||||||
<a id="permalink-seed">by random seed</a>
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div id="apology">
|
|
||||||
Sorry, this Javascript puzzle doesn't seem to work in your web
|
|
||||||
browser. Perhaps you have Javascript disabled, or perhaps your browser
|
|
||||||
doesn't provide a feature that the puzzle code requires (such as
|
|
||||||
<a href="https://developer.mozilla.org/en-US/docs/JavaScript/Typed_arrays">typed arrays</a>).
|
|
||||||
These puzzles have been successfully run in Firefox 19, Chrome 26,
|
|
||||||
Internet Explorer 10 and Safari 6.
|
|
||||||
</div>
|
|
||||||
<hr>
|
|
||||||
|
|
||||||
${instructions}
|
|
||||||
|
|
||||||
${links}
|
|
||||||
|
|
||||||
${footer}
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
EOF
|
|
||||||
|
|
||||||
close $outpage;
|
|
||||||
}
|
|
|
@ -1,206 +0,0 @@
|
||||||
/***************************************************************************
|
|
||||||
* __________ __ ___.
|
|
||||||
* Open \______ \ ____ ____ | | _\_ |__ _______ ___
|
|
||||||
* Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
|
|
||||||
* Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
|
|
||||||
* Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
|
|
||||||
* \/ \/ \/ \/ \/
|
|
||||||
* $Id$
|
|
||||||
*
|
|
||||||
* Copyright (C) 2014 Franklin Wei, Benjamin Brown
|
|
||||||
*
|
|
||||||
* This program is free software; you can redistribute it and/or
|
|
||||||
* modify it under the terms of the GNU General Public License
|
|
||||||
* as published by the Free Software Foundation; either version 2
|
|
||||||
* of the License, or (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
|
||||||
* KIND, either express or implied.
|
|
||||||
*
|
|
||||||
***************************************************************************/
|
|
||||||
|
|
||||||
#ifndef _XWORLD_KEYMAPS_H
|
|
||||||
#define _XWORLD_KEYMAPS_H
|
|
||||||
|
|
||||||
/* Handle the "nice" targets that have directional buttons with normal names */
|
|
||||||
#if (CONFIG_KEYPAD == PHILIPS_HDD1630_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == PHILIPS_HDD6330_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == PHILIPS_SA9200_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == CREATIVE_ZENXFI2_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == CREATIVE_ZENXFI3_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == SANSA_CONNECT_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == SANSA_C200_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == SANSA_CLIP_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == SANSA_E200_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == SANSA_FUZE_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == GIGABEAT_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == GIGABEAT_S_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == SAMSUNG_YH92X_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == SAMSUNG_YH820_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == IAUDIO_X5M5_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == CREATIVE_ZEN_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == SONY_NWZ_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == CREATIVEZVM_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == SAMSUNG_YPR0_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == IRIVER_H300_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == HM801_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == HM60X_PAD)
|
|
||||||
#define BTN_UP BUTTON_UP
|
|
||||||
#define BTN_DOWN BUTTON_DOWN
|
|
||||||
#define BTN_LEFT BUTTON_LEFT
|
|
||||||
#define BTN_RIGHT BUTTON_RIGHT
|
|
||||||
|
|
||||||
#if (CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD)
|
|
||||||
#define BTN_UP_LEFT BUTTON_BACK
|
|
||||||
#define BTN_UP_RIGHT BUTTON_PLAYPAUSE
|
|
||||||
#define BTN_DOWN_LEFT BUTTON_BOTTOMLEFT
|
|
||||||
#define BTN_DOWN_RIGHT BUTTON_BOTTOMRIGHT
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if (CONFIG_KEYPAD == HM60X_PAD)
|
|
||||||
#define BTN_FIRE BUTTON_POWER
|
|
||||||
#define BTN_PAUSE BUTTON_SELECT
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if (CONFIG_KEYPAD == PHILIPS_HDD1630_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == PHILIPS_HDD6330_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == PHILIPS_SA9200_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == CREATIVE_ZENXFI2_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == CREATIVE_ZENXFI3_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == SANSA_CONNECT_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == SANSA_C200_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == ONDAVX747_PAD)
|
|
||||||
#define BTN_FIRE BUTTON_VOL_UP
|
|
||||||
#define BTN_PAUSE BUTTON_VOL_DOWN
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == SANSA_FUZE_PAD)
|
|
||||||
#define BTN_FIRE BUTTON_HOME
|
|
||||||
#define BTN_PAUSE BUTTON_SELECT
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == SAMSUNG_YH92X_PAD)
|
|
||||||
#define BTN_FIRE BUTTON_FFWD
|
|
||||||
#define BTN_PAUSE BUTTON_REW
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == SANSA_E200_PAD)
|
|
||||||
#define BTN_FIRE BUTTON_REC
|
|
||||||
#define BTN_PAUSE BUTTON_POWER
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == SANSA_CLIP_PAD)
|
|
||||||
#define BTN_FIRE BUTTON_SELECT
|
|
||||||
#define BTN_PAUSE BUTTON_POWER
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == CREATIVE_ZEN_PAD)
|
|
||||||
#define BTN_FIRE BUTTON_SELECT
|
|
||||||
#define BTN_PAUSE BUTTON_BACK
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == CREATIVEZVM_PAD)
|
|
||||||
#define BTN_FIRE BUTTON_PLAY
|
|
||||||
#define BTN_PAUSE BUTTON_MENU
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == SAMSUNG_YPR0_PAD)
|
|
||||||
#define BTN_FIRE BUTTON_USER
|
|
||||||
#define BTN_PAUSE BUTTON_MENU
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == SONY_NWZ_PAD)
|
|
||||||
#define BTN_FIRE BUTTON_PLAY
|
|
||||||
#define BTN_PAUSE BUTTON_BACK
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == IRIVER_H300_PAD)
|
|
||||||
#define BTN_FIRE BUTTON_REC
|
|
||||||
#define BTN_PAUSE BUTTON_MODE
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == HM801_PAD)
|
|
||||||
#define BTN_FIRE BUTTON_PREV
|
|
||||||
#define BTN_PAUSE BUTTON_NEXT
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == SAMSUNG_YH820_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == IAUDIO_X5M5_PAD)
|
|
||||||
#define BTN_FIRE BUTTON_REC
|
|
||||||
#define BTN_PAUSE BUTTON_PLAY
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == GIGABEAT_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == GIGABEAT_S_PAD)
|
|
||||||
#define BTN_FIRE BUTTON_VOL_UP
|
|
||||||
#define BTN_PAUSE BUTTON_MENU
|
|
||||||
/* #if CONFIG_KEYPAD == PHILIPS_HDD1630_PAD */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* ... and now for the bad ones that don't have
|
|
||||||
* standard names for the directional buttons */
|
|
||||||
#elif (CONFIG_KEYPAD == PBELL_VIBE500_PAD)
|
|
||||||
#define BTN_UP BUTTON_OK
|
|
||||||
#define BTN_DOWN BUTTON_CANCEL
|
|
||||||
#define BTN_LEFT BUTTON_MENU
|
|
||||||
#define BTN_RIGHT BUTTON_PLAY
|
|
||||||
#define BTN_FIRE BUTTON_POWER
|
|
||||||
#define BTN_PAUSE BUTTON_REC
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
|
|
||||||
#define BTN_UP BUTTON_SCROLL_UP
|
|
||||||
#define BTN_DOWN BUTTON_SCROLL_DOWN
|
|
||||||
#define BTN_LEFT BUTTON_LEFT
|
|
||||||
#define BTN_RIGHT BUTTON_RIGHT
|
|
||||||
#define BTN_FIRE BUTTON_REW
|
|
||||||
#define BTN_PAUSE BUTTON_PLAY
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == MROBE500_PAD)
|
|
||||||
#define BTN_FIRE BUTTON_POWER
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == MROBE_REMOTE)
|
|
||||||
#define BTN_UP BUTTON_RC_PLAY
|
|
||||||
#define BTN_DOWN BUTTON_RC_DOWN
|
|
||||||
#define BTN_LEFT BUTTON_RC_REW
|
|
||||||
#define BTN_RIGHT BUTTON_RC_FF
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == IPOD_3G_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == IPOD_1G2G_PAD)
|
|
||||||
#define BTN_UP BUTTON_MENU
|
|
||||||
#define BTN_DOWN BUTTON_PLAY
|
|
||||||
#define BTN_LEFT BUTTON_LEFT
|
|
||||||
#define BTN_RIGHT BUTTON_RIGHT
|
|
||||||
#define BTN_FIRE BUTTON_SELECT
|
|
||||||
#define BTN_PAUSE (BUTTON_MENU | BUTTON_SELECT)
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == ONDAVX777_PAD)
|
|
||||||
#define BTN_FIRE BUTTON_POWER
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == COWON_D2_PAD)
|
|
||||||
#define BTN_FIRE BUTTON_PLUS
|
|
||||||
#define BTN_PAUSE BUTTON_MINUS
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == ONDAVX747_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == DX50_PAD)
|
|
||||||
#define BTN_LEFT BUTTON_LEFT
|
|
||||||
#define BTN_RIGHT BUTTON_RIGHT
|
|
||||||
#define BTN_FIRE BUTTON_BOTTOMLEFT
|
|
||||||
#define BTN_PAUSE BUTTON_TOPLEFT
|
|
||||||
|
|
||||||
#else
|
|
||||||
#error Unsupported keypad
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef HAVE_TOUCHSCREEN
|
|
||||||
#define BTN_UP BUTTON_TOPMIDDLE
|
|
||||||
#define BTN_DOWN BUTTON_BOTTOMMIDDLE
|
|
||||||
#define BTN_LEFT BUTTON_LEFT
|
|
||||||
#define BTN_RIGHT BUTTON_RIGHT
|
|
||||||
|
|
||||||
#if (CONFIG_KEYPAD == MROBE500_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == ONDAVX777_PAD)
|
|
||||||
#define BTN_PAUSE BUTTON_BOTTOMLEFT
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD != COWON_D2_PAD) && \
|
|
||||||
(CONFIG_KEYPAD != DX50_PAD) && \
|
|
||||||
(CONFIG_KEYPAD != ONDAVX777_PAD)
|
|
||||||
#define BTN_FIRE BUTTON_BOTTOMLEFT
|
|
||||||
#define BTN_PAUSE BUTTON_TOPLEFT
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* HAVE_TOUCHSCREEN */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* _XWORLD_KEYMAPS_H */
|
|
||||||
#endif
|
|
|
@ -48,9 +48,11 @@ PUZZLESOPTIMIZE := -Os # tiny plugin buffer
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# we suppress all warnings
|
# we suppress all warnings
|
||||||
PUZZLESFLAGS = $(filter-out -O%,$(PLUGINFLAGS)) $(PUZZLESOPTIMIZE) \
|
PUZZLESFLAGS = -I$(PUZZLES_SRCDIR)/dummy \
|
||||||
-Wno-unused-parameter -Wno-sign-compare -Wno-strict-aliasing -w \
|
$(filter-out -O%,$(PLUGINFLAGS)) $(PUZZLESOPTIMIZE) \
|
||||||
-DFOR_REAL -I$(PUZZLES_SRCDIR)
|
-Wno-unused-parameter -Wno-sign-compare -Wno-strict-aliasing \
|
||||||
|
-DFOR_REAL -I$(PUZZLES_SRCDIR)/src \
|
||||||
|
-include $(PUZZLES_SRCDIR)/rbcompat.h
|
||||||
ifdef PUZZLES_COMBINED
|
ifdef PUZZLES_COMBINED
|
||||||
PUZZLESFLAGS += -DCOMBINED
|
PUZZLESFLAGS += -DCOMBINED
|
||||||
endif
|
endif
|
||||||
|
@ -71,11 +73,11 @@ $(PUZZLES_OBJDIR)/puzzles.ovl: $(PUZZLES_OBJ) $(PUZZLES_OUTLDS) $(TLSFLIB)
|
||||||
-lgcc $(PUZZLES_OVLFLAGS)
|
-lgcc $(PUZZLES_OVLFLAGS)
|
||||||
$(call PRINTS,LD $(@F))$(call objcopy,$(basename $@).elf,$@)
|
$(call PRINTS,LD $(@F))$(call objcopy,$(basename $@).elf,$@)
|
||||||
else
|
else
|
||||||
$(PUZZLES_OBJDIR)/sgt-%.rock: $(PUZZLES_OBJDIR)/%.o $(PUZZLES_SHARED_OBJ) $(TLSFLIB)
|
$(PUZZLES_OBJDIR)/sgt-%.rock: $(PUZZLES_OBJDIR)/src/%.o $(PUZZLES_SHARED_OBJ) $(TLSFLIB)
|
||||||
$(call PRINTS,LD $(@F))$(CC) $(PLUGINFLAGS) -o $(PUZZLES_OBJDIR)/$*.elf \
|
$(call PRINTS,LD $(@F))$(CC) $(PLUGINFLAGS) -o $(PUZZLES_OBJDIR)/$*.elf \
|
||||||
$(filter %.o, $^) \
|
$(filter %.o, $^) \
|
||||||
$(filter %.a, $+) \
|
$(filter %.a, $+) \
|
||||||
-lgcc $(filter-out -Wl%.map, $(PLUGINLDFLAGS)) -Wl,-Map,$(PUZZLES_OBJDIR)/$*.map
|
-lgcc $(filter-out -Wl%.map, $(PLUGINLDFLAGS)) -Wl,-Map,$(PUZZLES_OBJDIR)/src/$*.map
|
||||||
$(SILENT)$(call objcopy,$(PUZZLES_OBJDIR)/$*.elf,$@)
|
$(SILENT)$(call objcopy,$(PUZZLES_OBJDIR)/$*.elf,$@)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
@ -87,3 +89,7 @@ $(PUZZLES_OBJDIR)/%.o: $(PUZZLES_SRCDIR)/%.c $(PUZZLES_SRCDIR)/puzzles.make
|
||||||
$(PUZZLES_OBJDIR)/unfinished/%.o: $(PUZZLES_SRCDIR)/unfinished/%.c $(PUZZLES_SRCDIR)/puzzles.make
|
$(PUZZLES_OBJDIR)/unfinished/%.o: $(PUZZLES_SRCDIR)/unfinished/%.c $(PUZZLES_SRCDIR)/puzzles.make
|
||||||
$(SILENT)mkdir -p $(dir $@)
|
$(SILENT)mkdir -p $(dir $@)
|
||||||
$(call PRINTS,CC $(subst $(ROOTDIR)/,,$<))$(CC) -I$(dir $<) $(PUZZLESFLAGS) -c $< -o $@
|
$(call PRINTS,CC $(subst $(ROOTDIR)/,,$<))$(CC) -I$(dir $<) $(PUZZLESFLAGS) -c $< -o $@
|
||||||
|
|
||||||
|
$(PUZZLES_OBJDIR)/src/%.o: $(PUZZLES_SRCDIR)/src/%.c $(PUZZLES_SRCDIR)/puzzles.make
|
||||||
|
$(SILENT)mkdir -p $(dir $@)
|
||||||
|
$(call PRINTS,CC $(subst $(ROOTDIR)/,,$<))$(CC) -I$(dir $<) $(PUZZLESFLAGS) -c $< -o $@
|
||||||
|
|
|
@ -1,5 +1,11 @@
|
||||||
|
#ifndef __RBCOMPAT_H__
|
||||||
|
#define __RBCOMPAT_H__
|
||||||
|
|
||||||
#include "plugin.h"
|
#include "plugin.h"
|
||||||
#include "rbassert.h"
|
#include "rbassert.h"
|
||||||
|
#include "lib/pluginlib_exit.h"
|
||||||
|
|
||||||
|
#include <tlsf.h>
|
||||||
|
|
||||||
int sprintf_wrapper(char *str, const char *fmt, ...);
|
int sprintf_wrapper(char *str, const char *fmt, ...);
|
||||||
char *getenv_wrapper(const char *c);
|
char *getenv_wrapper(const char *c);
|
||||||
|
@ -60,3 +66,9 @@ double acos_wrapper(double x);
|
||||||
#define strtoq strtoq_wrapper
|
#define strtoq strtoq_wrapper
|
||||||
#define strtouq strtouq_wrapper
|
#define strtouq strtouq_wrapper
|
||||||
#define vsprintf vsprintf_wrapper
|
#define vsprintf vsprintf_wrapper
|
||||||
|
|
||||||
|
#define abs(x) ((x)<0?-(x):(x))
|
||||||
|
|
||||||
|
/* work around compilation error */
|
||||||
|
typedef void FILE;
|
||||||
|
#endif
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
|
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include "puzzles.h"
|
#include "src/puzzles.h"
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* smalloc should guarantee to return a useful pointer - Halibut
|
* smalloc should guarantee to return a useful pointer - Halibut
|
|
@ -1346,9 +1346,12 @@ double scalbn_wrapper (double x, int n)
|
||||||
if (k > 0) /* normal result */
|
if (k > 0) /* normal result */
|
||||||
{__HI(x) = (hx&0x800fffff)|(k<<20); return x;}
|
{__HI(x) = (hx&0x800fffff)|(k<<20); return x;}
|
||||||
if (k <= -54)
|
if (k <= -54)
|
||||||
|
{
|
||||||
if (n > 50000) /* in case integer overflow in n+k */
|
if (n > 50000) /* in case integer overflow in n+k */
|
||||||
return huge*copysign_wrapper(huge,x); /*overflow*/
|
return huge*copysign_wrapper(huge,x); /*overflow*/
|
||||||
else return tiny*copysign_wrapper(tiny,x); /*underflow*/
|
else
|
||||||
|
return tiny*copysign_wrapper(tiny,x); /*underflow*/
|
||||||
|
}
|
||||||
k += 54; /* subnormal result */
|
k += 54; /* subnormal result */
|
||||||
__HI(x) = (hx&0x800fffff)|(k<<20);
|
__HI(x) = (hx&0x800fffff)|(k<<20);
|
||||||
return x*twom54;
|
return x*twom54;
|
||||||
|
@ -1607,18 +1610,6 @@ static void bcopy_wrapper(const void *src, void *dst, size_t n)
|
||||||
memmove(dst, src, n);
|
memmove(dst, src, n);
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
|
||||||
sscanf_wrapper(const char *ibuf, const char *fmt, ...)
|
|
||||||
{
|
|
||||||
va_list ap;
|
|
||||||
int ret;
|
|
||||||
|
|
||||||
va_start(ap, fmt);
|
|
||||||
ret = rb_vsscanf(ibuf, fmt, ap);
|
|
||||||
va_end(ap);
|
|
||||||
return(ret);
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
int
|
||||||
rb_vsscanf(const char *inp, char const *fmt0, va_list ap)
|
rb_vsscanf(const char *inp, char const *fmt0, va_list ap)
|
||||||
{
|
{
|
||||||
|
@ -2065,6 +2056,18 @@ match_failure:
|
||||||
return (nassigned);
|
return (nassigned);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
sscanf_wrapper(const char *ibuf, const char *fmt, ...)
|
||||||
|
{
|
||||||
|
va_list ap;
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
va_start(ap, fmt);
|
||||||
|
ret = rb_vsscanf(ibuf, fmt, ap);
|
||||||
|
va_end(ap);
|
||||||
|
return(ret);
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Fill in the given table from the scanset at the given format
|
* Fill in the given table from the scanset at the given format
|
||||||
* (just after `['). Return a pointer to the character past the
|
* (just after `['). Return a pointer to the character past the
|
||||||
|
|
|
@ -23,8 +23,8 @@
|
||||||
|
|
||||||
#include "plugin.h"
|
#include "plugin.h"
|
||||||
|
|
||||||
#include "puzzles.h"
|
#include "src/puzzles.h"
|
||||||
#include "keymaps.h"
|
#include "src/keymaps.h"
|
||||||
|
|
||||||
#ifndef COMBINED
|
#ifndef COMBINED
|
||||||
#include "lib/playback_control.h"
|
#include "lib/playback_control.h"
|
||||||
|
@ -315,6 +315,7 @@ static void rb_draw_line(void *handle, int x1, int y1, int x2, int y2,
|
||||||
draw_antialiased_line(x1, y1, x2, y2);
|
draw_antialiased_line(x1, y1, x2, y2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if 0
|
||||||
/*
|
/*
|
||||||
* draw filled polygon
|
* draw filled polygon
|
||||||
* originally by Sebastian Leonhardt (ulmutul)
|
* originally by Sebastian Leonhardt (ulmutul)
|
||||||
|
@ -409,6 +410,7 @@ static void v_fillarea(int count, int *pxy)
|
||||||
fill_poly_line(i, count, pxy);
|
fill_poly_line(i, count, pxy);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
static void rb_draw_poly(void *handle, int *coords, int npoints,
|
static void rb_draw_poly(void *handle, int *coords, int npoints,
|
||||||
int fillcolor, int outlinecolor)
|
int fillcolor, int outlinecolor)
|
||||||
|
@ -916,7 +918,7 @@ static bool config_menu(void)
|
||||||
config_item old;
|
config_item old;
|
||||||
int pos = rb->gui_synclist_get_sel_pos(&list);
|
int pos = rb->gui_synclist_get_sel_pos(&list);
|
||||||
memcpy(&old, config + pos, sizeof(old));
|
memcpy(&old, config + pos, sizeof(old));
|
||||||
char *old_str;
|
char *old_str = NULL;
|
||||||
if(old.type == C_STRING)
|
if(old.type == C_STRING)
|
||||||
old_str = dupstr(old.sval);
|
old_str = dupstr(old.sval);
|
||||||
bool freed_str = do_configure_item(config + pos);
|
bool freed_str = do_configure_item(config + pos);
|
||||||
|
@ -928,13 +930,13 @@ static bool config_menu(void)
|
||||||
if(freed_str)
|
if(freed_str)
|
||||||
config[pos].sval = old_str;
|
config[pos].sval = old_str;
|
||||||
}
|
}
|
||||||
else if(old.type == C_STRING)
|
else
|
||||||
|
{
|
||||||
|
if(old.type == C_STRING)
|
||||||
{
|
{
|
||||||
/* success, and we duplicated the old string, so free it */
|
/* success, and we duplicated the old string, so free it */
|
||||||
sfree(old_str);
|
sfree(old_str);
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
success = true;
|
success = true;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -956,33 +958,29 @@ done:
|
||||||
|
|
||||||
const char *preset_formatter(int sel, void *data, char *buf, size_t len)
|
const char *preset_formatter(int sel, void *data, char *buf, size_t len)
|
||||||
{
|
{
|
||||||
char *name;
|
struct preset_menu *menu = data;
|
||||||
game_params *junk;
|
rb->snprintf(buf, len, "%s", menu->entries[sel].title);
|
||||||
midend_fetch_preset(me, sel, &name, &junk);
|
|
||||||
rb->strlcpy(buf, name, len);
|
|
||||||
return buf;
|
return buf;
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool presets_menu(void)
|
/* main worker function */
|
||||||
|
static bool do_preset_menu(struct preset_menu *menu, char *title)
|
||||||
{
|
{
|
||||||
if(!midend_num_presets(me))
|
if(!menu->n_entries)
|
||||||
{
|
|
||||||
rb->splash(HZ, "No presets!");
|
|
||||||
return false;
|
return false;
|
||||||
}
|
|
||||||
|
|
||||||
/* display a list */
|
/* display a list */
|
||||||
struct gui_synclist list;
|
struct gui_synclist list;
|
||||||
|
|
||||||
rb->gui_synclist_init(&list, &preset_formatter, NULL, false, 1, NULL);
|
rb->gui_synclist_init(&list, &preset_formatter, menu, false, 1, NULL);
|
||||||
rb->gui_synclist_set_icon_callback(&list, NULL);
|
rb->gui_synclist_set_icon_callback(&list, NULL);
|
||||||
rb->gui_synclist_set_nb_items(&list, midend_num_presets(me));
|
rb->gui_synclist_set_nb_items(&list, menu->n_entries);
|
||||||
rb->gui_synclist_limit_scroll(&list, false);
|
rb->gui_synclist_limit_scroll(&list, false);
|
||||||
|
|
||||||
int current = midend_which_preset(me);
|
rb->gui_synclist_select_item(&list, 0); /* we don't start with the current one selected */
|
||||||
rb->gui_synclist_select_item(&list, current >= 0 ? current : 0);
|
|
||||||
|
|
||||||
rb->gui_synclist_set_title(&list, "Game Type", NOICON);
|
char def[] = "Game Type";
|
||||||
|
rb->gui_synclist_set_title(&list, title ? title : def, NOICON);
|
||||||
while(1)
|
while(1)
|
||||||
{
|
{
|
||||||
rb->gui_synclist_draw(&list);
|
rb->gui_synclist_draw(&list);
|
||||||
|
@ -994,12 +992,20 @@ static bool presets_menu(void)
|
||||||
case ACTION_STD_OK:
|
case ACTION_STD_OK:
|
||||||
{
|
{
|
||||||
int sel = rb->gui_synclist_get_sel_pos(&list);
|
int sel = rb->gui_synclist_get_sel_pos(&list);
|
||||||
char *junk;
|
struct preset_menu_entry *entry = menu->entries + sel;
|
||||||
game_params *params;
|
if(entry->params)
|
||||||
midend_fetch_preset(me, sel, &junk, ¶ms);
|
{
|
||||||
midend_set_params(me, params);
|
midend_set_params(me, entry->params);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
/* recurse */
|
||||||
|
if(do_preset_menu(entry->submenu, entry->title))
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
case ACTION_STD_PREV:
|
case ACTION_STD_PREV:
|
||||||
case ACTION_STD_CANCEL:
|
case ACTION_STD_CANCEL:
|
||||||
return false;
|
return false;
|
||||||
|
@ -1009,6 +1015,11 @@ static bool presets_menu(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static bool presets_menu(void)
|
||||||
|
{
|
||||||
|
return do_preset_menu(midend_get_presets(me, NULL), NULL);
|
||||||
|
}
|
||||||
|
|
||||||
static const struct {
|
static const struct {
|
||||||
const char *game, *help;
|
const char *game, *help;
|
||||||
} quick_help_text[] = {
|
} quick_help_text[] = {
|
||||||
|
@ -1212,7 +1223,7 @@ static int pausemenu_cb(int action, const struct menu_item_ex *this_item)
|
||||||
return ACTION_EXIT_MENUITEM;
|
return ACTION_EXIT_MENUITEM;
|
||||||
#endif
|
#endif
|
||||||
case 9:
|
case 9:
|
||||||
if(!midend_num_presets(me))
|
if(!midend_get_presets(me, NULL)->n_entries)
|
||||||
return ACTION_EXIT_MENUITEM;
|
return ACTION_EXIT_MENUITEM;
|
||||||
break;
|
break;
|
||||||
case 10:
|
case 10:
|
||||||
|
@ -1808,7 +1819,7 @@ static int mainmenu_cb(int action, const struct menu_item_ex *this_item)
|
||||||
return ACTION_EXIT_MENUITEM;
|
return ACTION_EXIT_MENUITEM;
|
||||||
#endif
|
#endif
|
||||||
case 5:
|
case 5:
|
||||||
if(!midend_num_presets(me))
|
if(!midend_get_presets(me, NULL)->n_entries)
|
||||||
return ACTION_EXIT_MENUITEM;
|
return ACTION_EXIT_MENUITEM;
|
||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
|
|
727
apps/plugins/puzzles/src/Makefile
Normal file
727
apps/plugins/puzzles/src/Makefile
Normal file
|
@ -0,0 +1,727 @@
|
||||||
|
# Makefile for puzzles under X/GTK and Unix.
|
||||||
|
#
|
||||||
|
# This file was created by `mkfiles.pl' from the `Recipe' file.
|
||||||
|
# DO NOT EDIT THIS FILE DIRECTLY; edit Recipe or mkfiles.pl instead.
|
||||||
|
|
||||||
|
# You can define this path to point at your tools if you need to
|
||||||
|
# TOOLPATH = /opt/gcc/bin
|
||||||
|
CC := $(TOOLPATH)$(CC)
|
||||||
|
# You can manually set this to `gtk-config' or `pkg-config gtk+-1.2'
|
||||||
|
# (depending on what works on your system) if you want to enforce
|
||||||
|
# building with GTK 1.2, or you can set it to `pkg-config gtk+-2.0'
|
||||||
|
# if you want to enforce 2.0. The default is to try 2.0 and fall back
|
||||||
|
# to 1.2 if it isn't found.
|
||||||
|
GTK_CONFIG = sh -c 'pkg-config gtk+-2.0 $$0 2>/dev/null || gtk-config $$0'
|
||||||
|
|
||||||
|
CFLAGS := -O2 -Wall -ansi -pedantic -g -I./ -Iicons/ `$(GTK_CONFIG) \
|
||||||
|
--cflags` $(CFLAGS)
|
||||||
|
XLIBS = `$(GTK_CONFIG) --libs` -lm
|
||||||
|
ULIBS = -lm#
|
||||||
|
INSTALL=install
|
||||||
|
INSTALL_PROGRAM=$(INSTALL)
|
||||||
|
INSTALL_DATA=$(INSTALL)
|
||||||
|
prefix=/usr/local
|
||||||
|
exec_prefix=$(prefix)
|
||||||
|
bindir=$(exec_prefix)/bin
|
||||||
|
gamesdir=$(exec_prefix)/games
|
||||||
|
mandir=$(prefix)/man
|
||||||
|
man1dir=$(mandir)/man1
|
||||||
|
|
||||||
|
all: $(BINPREFIX)blackbox $(BINPREFIX)bridges $(BINPREFIX)cube \
|
||||||
|
$(BINPREFIX)dominosa $(BINPREFIX)fifteen \
|
||||||
|
$(BINPREFIX)fifteensolver $(BINPREFIX)filling \
|
||||||
|
$(BINPREFIX)fillingsolver $(BINPREFIX)flip $(BINPREFIX)flood \
|
||||||
|
$(BINPREFIX)galaxies $(BINPREFIX)galaxiespicture \
|
||||||
|
$(BINPREFIX)galaxiessolver $(BINPREFIX)guess \
|
||||||
|
$(BINPREFIX)inertia $(BINPREFIX)keen $(BINPREFIX)keensolver \
|
||||||
|
$(BINPREFIX)latincheck $(BINPREFIX)lightup \
|
||||||
|
$(BINPREFIX)lightupsolver $(BINPREFIX)loopy \
|
||||||
|
$(BINPREFIX)loopysolver $(BINPREFIX)magnets \
|
||||||
|
$(BINPREFIX)magnetssolver $(BINPREFIX)map \
|
||||||
|
$(BINPREFIX)mapsolver $(BINPREFIX)mineobfusc \
|
||||||
|
$(BINPREFIX)mines $(BINPREFIX)net $(BINPREFIX)netslide \
|
||||||
|
$(BINPREFIX)nullgame $(BINPREFIX)obfusc $(BINPREFIX)palisade \
|
||||||
|
$(BINPREFIX)pattern $(BINPREFIX)patternpicture \
|
||||||
|
$(BINPREFIX)patternsolver $(BINPREFIX)pearl \
|
||||||
|
$(BINPREFIX)pearlbench $(BINPREFIX)pegs $(BINPREFIX)range \
|
||||||
|
$(BINPREFIX)rect $(BINPREFIX)samegame $(BINPREFIX)signpost \
|
||||||
|
$(BINPREFIX)signpostsolver $(BINPREFIX)singles \
|
||||||
|
$(BINPREFIX)singlessolver $(BINPREFIX)sixteen \
|
||||||
|
$(BINPREFIX)slant $(BINPREFIX)slantsolver $(BINPREFIX)solo \
|
||||||
|
$(BINPREFIX)solosolver $(BINPREFIX)tents \
|
||||||
|
$(BINPREFIX)tentssolver $(BINPREFIX)towers \
|
||||||
|
$(BINPREFIX)towerssolver $(BINPREFIX)tracks \
|
||||||
|
$(BINPREFIX)twiddle $(BINPREFIX)undead $(BINPREFIX)unequal \
|
||||||
|
$(BINPREFIX)unequalsolver $(BINPREFIX)unruly \
|
||||||
|
$(BINPREFIX)unrulysolver $(BINPREFIX)untangle
|
||||||
|
|
||||||
|
$(BINPREFIX)blackbox: blackbox.o drawing.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ blackbox.o drawing.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)bridges: bridges.o drawing.o dsf.o findloop.o gtk.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ bridges.o drawing.o dsf.o findloop.o gtk.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)cube: cube.o drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ cube.o drawing.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)dominosa: dominosa.o drawing.o gtk.o laydomino.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ dominosa.o drawing.o gtk.o laydomino.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)fifteen: drawing.o fifteen.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ drawing.o fifteen.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)fifteensolver: fifteen2.o malloc.o misc.o nullfe.o random.o
|
||||||
|
$(CC) -o $@ fifteen2.o malloc.o misc.o nullfe.o random.o $(XLFLAGS) \
|
||||||
|
$(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)filling: drawing.o dsf.o filling.o gtk.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o filling.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)fillingsolver: dsf.o filling2.o malloc.o misc.o nullfe.o \
|
||||||
|
random.o
|
||||||
|
$(CC) -o $@ dsf.o filling2.o malloc.o misc.o nullfe.o random.o \
|
||||||
|
$(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)flip: drawing.o flip.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o tree234.o version.o
|
||||||
|
$(CC) -o $@ drawing.o flip.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o tree234.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)flood: drawing.o flood.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ drawing.o flood.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)galaxies: drawing.o dsf.o galaxies.o gtk.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o galaxies.o gtk.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)galaxiespicture: dsf.o galaxie4.o malloc.o misc.o nullfe.o \
|
||||||
|
random.o
|
||||||
|
$(CC) -o $@ dsf.o galaxie4.o malloc.o misc.o nullfe.o random.o -lm \
|
||||||
|
$(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)galaxiessolver: dsf.o galaxie2.o malloc.o misc.o nullfe.o \
|
||||||
|
random.o
|
||||||
|
$(CC) -o $@ dsf.o galaxie2.o malloc.o misc.o nullfe.o random.o -lm \
|
||||||
|
$(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)guess: drawing.o gtk.o guess.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o guess.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)inertia: drawing.o gtk.o inertia.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o inertia.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)keen: drawing.o dsf.o gtk.o keen.o latin.o malloc.o maxflow.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o tree234.o \
|
||||||
|
version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o gtk.o keen.o latin.o malloc.o maxflow.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o tree234.o \
|
||||||
|
version.o $(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)keensolver: dsf.o keen2.o latin6.o malloc.o maxflow.o misc.o \
|
||||||
|
nullfe.o random.o tree234.o
|
||||||
|
$(CC) -o $@ dsf.o keen2.o latin6.o malloc.o maxflow.o misc.o \
|
||||||
|
nullfe.o random.o tree234.o $(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)latincheck: latin8.o malloc.o maxflow.o misc.o nullfe.o random.o \
|
||||||
|
tree234.o
|
||||||
|
$(CC) -o $@ latin8.o malloc.o maxflow.o misc.o nullfe.o random.o \
|
||||||
|
tree234.o $(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)lightup: combi.o drawing.o gtk.o lightup.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ combi.o drawing.o gtk.o lightup.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)lightupsolver: combi.o lightup2.o malloc.o misc.o nullfe.o \
|
||||||
|
random.o
|
||||||
|
$(CC) -o $@ combi.o lightup2.o malloc.o misc.o nullfe.o random.o \
|
||||||
|
$(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)loopy: drawing.o dsf.o grid.o gtk.o loopgen.o loopy.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o penrose.o printing.o ps.o random.o \
|
||||||
|
tree234.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o grid.o gtk.o loopgen.o loopy.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o penrose.o printing.o ps.o random.o \
|
||||||
|
tree234.o version.o $(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)loopysolver: dsf.o grid.o loopgen.o loopy2.o malloc.o misc.o \
|
||||||
|
nullfe.o penrose.o random.o tree234.o
|
||||||
|
$(CC) -o $@ dsf.o grid.o loopgen.o loopy2.o malloc.o misc.o nullfe.o \
|
||||||
|
penrose.o random.o tree234.o -lm $(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)magnets: drawing.o gtk.o laydomino.o magnets.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o laydomino.o magnets.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)magnetssolver: laydomino.o magnets2.o malloc.o misc.o nullfe.o \
|
||||||
|
random.o
|
||||||
|
$(CC) -o $@ laydomino.o magnets2.o malloc.o misc.o nullfe.o random.o \
|
||||||
|
-lm $(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)map: drawing.o dsf.o gtk.o malloc.o map.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o gtk.o malloc.o map.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)mapsolver: dsf.o malloc.o map2.o misc.o nullfe.o random.o
|
||||||
|
$(CC) -o $@ dsf.o malloc.o map2.o misc.o nullfe.o random.o -lm \
|
||||||
|
$(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)mineobfusc: malloc.o mines2.o misc.o nullfe.o random.o tree234.o
|
||||||
|
$(CC) -o $@ malloc.o mines2.o misc.o nullfe.o random.o tree234.o \
|
||||||
|
$(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)mines: drawing.o gtk.o malloc.o midend.o mines.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o tree234.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o mines.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o tree234.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)net: drawing.o dsf.o findloop.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
net.o no-icon.o printing.o ps.o random.o tree234.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o findloop.o gtk.o malloc.o midend.o \
|
||||||
|
misc.o net.o no-icon.o printing.o ps.o random.o tree234.o \
|
||||||
|
version.o $(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)netslide: drawing.o gtk.o malloc.o midend.o misc.o netslide.o \
|
||||||
|
no-icon.o printing.o ps.o random.o tree234.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o misc.o netslide.o \
|
||||||
|
no-icon.o printing.o ps.o random.o tree234.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)nullgame: drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
nullgame.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
nullgame.o printing.o ps.o random.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)obfusc: malloc.o misc.o nullfe.o obfusc.o random.o
|
||||||
|
$(CC) -o $@ malloc.o misc.o nullfe.o obfusc.o random.o $(XLFLAGS) \
|
||||||
|
$(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)palisade: divvy.o drawing.o dsf.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o palisade.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ divvy.o drawing.o dsf.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o palisade.o printing.o ps.o random.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)pattern: drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
pattern.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
pattern.o printing.o ps.o random.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)patternpicture: malloc.o misc.o nullfe.o pattern4.o random.o
|
||||||
|
$(CC) -o $@ malloc.o misc.o nullfe.o pattern4.o random.o $(XLFLAGS) \
|
||||||
|
$(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)patternsolver: malloc.o misc.o nullfe.o pattern2.o random.o
|
||||||
|
$(CC) -o $@ malloc.o misc.o nullfe.o pattern2.o random.o $(XLFLAGS) \
|
||||||
|
$(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)pearl: drawing.o dsf.o grid.o gtk.o loopgen.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o pearl.o penrose.o printing.o ps.o random.o \
|
||||||
|
tdq.o tree234.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o grid.o gtk.o loopgen.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o pearl.o penrose.o printing.o ps.o random.o \
|
||||||
|
tdq.o tree234.o version.o $(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)pearlbench: dsf.o grid.o loopgen.o malloc.o misc.o nullfe.o \
|
||||||
|
pearl2.o penrose.o random.o tdq.o tree234.o
|
||||||
|
$(CC) -o $@ dsf.o grid.o loopgen.o malloc.o misc.o nullfe.o pearl2.o \
|
||||||
|
penrose.o random.o tdq.o tree234.o -lm $(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)pegs: drawing.o gtk.o malloc.o midend.o misc.o no-icon.o pegs.o \
|
||||||
|
printing.o ps.o random.o tree234.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
pegs.o printing.o ps.o random.o tree234.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)range: drawing.o dsf.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o range.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o range.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)rect: drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o rect.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o rect.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)samegame: drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o samegame.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o samegame.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)signpost: drawing.o dsf.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o signpost.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o signpost.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)signpostsolver: dsf.o malloc.o misc.o nullfe.o random.o \
|
||||||
|
signpos2.o
|
||||||
|
$(CC) -o $@ dsf.o malloc.o misc.o nullfe.o random.o signpos2.o -lm \
|
||||||
|
$(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)singles: drawing.o dsf.o gtk.o latin.o malloc.o maxflow.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o singles.o \
|
||||||
|
tree234.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o gtk.o latin.o malloc.o maxflow.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o singles.o \
|
||||||
|
tree234.o version.o $(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)singlessolver: dsf.o latin.o malloc.o maxflow.o misc.o nullfe.o \
|
||||||
|
random.o singles3.o tree234.o
|
||||||
|
$(CC) -o $@ dsf.o latin.o malloc.o maxflow.o misc.o nullfe.o \
|
||||||
|
random.o singles3.o tree234.o $(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)sixteen: drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o sixteen.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o sixteen.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)slant: drawing.o dsf.o findloop.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o slant.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o findloop.o gtk.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o slant.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)slantsolver: dsf.o findloop.o malloc.o misc.o nullfe.o random.o \
|
||||||
|
slant2.o
|
||||||
|
$(CC) -o $@ dsf.o findloop.o malloc.o misc.o nullfe.o random.o \
|
||||||
|
slant2.o $(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)solo: divvy.o drawing.o dsf.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o solo.o version.o
|
||||||
|
$(CC) -o $@ divvy.o drawing.o dsf.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o solo.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)solosolver: divvy.o dsf.o malloc.o misc.o nullfe.o random.o \
|
||||||
|
solo2.o
|
||||||
|
$(CC) -o $@ divvy.o dsf.o malloc.o misc.o nullfe.o random.o solo2.o \
|
||||||
|
$(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)tents: drawing.o dsf.o gtk.o malloc.o maxflow.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o tents.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o gtk.o malloc.o maxflow.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o tents.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)tentssolver: dsf.o malloc.o maxflow.o misc.o nullfe.o random.o \
|
||||||
|
tents3.o
|
||||||
|
$(CC) -o $@ dsf.o malloc.o maxflow.o misc.o nullfe.o random.o \
|
||||||
|
tents3.o $(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)towers: drawing.o gtk.o latin.o malloc.o maxflow.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o towers.o tree234.o \
|
||||||
|
version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o latin.o malloc.o maxflow.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o towers.o tree234.o \
|
||||||
|
version.o $(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)towerssolver: latin6.o malloc.o maxflow.o misc.o nullfe.o \
|
||||||
|
random.o towers2.o tree234.o
|
||||||
|
$(CC) -o $@ latin6.o malloc.o maxflow.o misc.o nullfe.o random.o \
|
||||||
|
towers2.o tree234.o $(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)tracks: drawing.o dsf.o findloop.o gtk.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o tracks.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o findloop.o gtk.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o tracks.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)twiddle: drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o twiddle.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o twiddle.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)undead: drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o undead.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o undead.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)unequal: drawing.o gtk.o latin.o malloc.o maxflow.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o tree234.o \
|
||||||
|
unequal.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o latin.o malloc.o maxflow.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o tree234.o \
|
||||||
|
unequal.o version.o $(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)unequalsolver: latin6.o malloc.o maxflow.o misc.o nullfe.o \
|
||||||
|
random.o tree234.o unequal2.o
|
||||||
|
$(CC) -o $@ latin6.o malloc.o maxflow.o misc.o nullfe.o random.o \
|
||||||
|
tree234.o unequal2.o $(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)unruly: drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o unruly.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o unruly.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)unrulysolver: malloc.o misc.o nullfe.o random.o unruly2.o
|
||||||
|
$(CC) -o $@ malloc.o misc.o nullfe.o random.o unruly2.o $(XLFLAGS) \
|
||||||
|
$(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)untangle: drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o tree234.o untangle.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o tree234.o untangle.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
blackbox.o: ./blackbox.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
blackbo3.o: ./blackbox.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
bridges.o: ./bridges.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
bridges3.o: ./bridges.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
combi.o: ./combi.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
cube.o: ./cube.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
cube3.o: ./cube.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
divvy.o: ./divvy.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
dominosa.o: ./dominosa.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
dominos3.o: ./dominosa.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
drawing.o: ./drawing.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
dsf.o: ./dsf.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
fifteen.o: ./fifteen.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
fifteen5.o: ./fifteen.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
fifteen2.o: ./fifteen.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
filling.o: ./filling.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
filling5.o: ./filling.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
filling2.o: ./filling.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
findloop.o: ./findloop.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
flip.o: ./flip.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
flip3.o: ./flip.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
flood.o: ./flood.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
flood3.o: ./flood.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
galaxies.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
galaxie7.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
galaxie4.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_PICTURE_GENERATOR -c $< -o $@
|
||||||
|
galaxie2.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
grid.o: ./grid.c ./puzzles.h ./tree234.h ./grid.h ./penrose.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
gtk.o: ./gtk.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
guess.o: ./guess.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
guess3.o: ./guess.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
inertia.o: ./inertia.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
inertia3.o: ./inertia.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
keen.o: ./keen.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
keen5.o: ./keen.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
keen2.o: ./keen.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
latin.o: ./latin.c ./puzzles.h ./tree234.h ./maxflow.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
latin8.o: ./latin.c ./puzzles.h ./tree234.h ./maxflow.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_LATIN_TEST -c $< -o $@
|
||||||
|
latin6.o: ./latin.c ./puzzles.h ./tree234.h ./maxflow.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
laydomino.o: ./laydomino.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
lightup.o: ./lightup.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
lightup5.o: ./lightup.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
lightup2.o: ./lightup.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
list.o: ./list.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
loopgen.o: ./loopgen.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
loopy.o: ./loopy.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
loopy5.o: ./loopy.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
loopy2.o: ./loopy.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
magnets.o: ./magnets.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
magnets5.o: ./magnets.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
magnets2.o: ./magnets.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
malloc.o: ./malloc.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
map.o: ./map.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
map5.o: ./map.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
map2.o: ./map.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
maxflow.o: ./maxflow.c ./maxflow.h ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
midend.o: ./midend.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
mines.o: ./mines.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
mines5.o: ./mines.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
mines2.o: ./mines.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_OBFUSCATOR -c $< -o $@
|
||||||
|
misc.o: ./misc.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
net.o: ./net.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
net3.o: ./net.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
netslide.o: ./netslide.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
netslid3.o: ./netslide.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
no-icon.o: ./no-icon.c
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
nullfe.o: ./nullfe.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
nullgame.o: ./nullgame.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
obfusc.o: ./obfusc.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
osx.o: ./osx.m ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
palisade.o: ./palisade.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
palisad3.o: ./palisade.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
pattern.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
pattern7.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
pattern4.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_PICTURE_GENERATOR -c $< -o $@
|
||||||
|
pattern2.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
pearl.o: ./pearl.c ./puzzles.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
pearl5.o: ./pearl.c ./puzzles.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
pearl2.o: ./pearl.c ./puzzles.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
pegs.o: ./pegs.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
pegs3.o: ./pegs.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
penrose.o: ./penrose.c ./puzzles.h ./penrose.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
printing.o: ./printing.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
ps.o: ./ps.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
random.o: ./random.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
range.o: ./range.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
range3.o: ./range.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
rect.o: ./rect.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
rect3.o: ./rect.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
samegame.o: ./samegame.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
samegam3.o: ./samegame.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
signpost.o: ./signpost.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
signpos5.o: ./signpost.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
signpos2.o: ./signpost.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
singles.o: ./singles.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
singles5.o: ./singles.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
singles3.o: ./singles.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
sixteen.o: ./sixteen.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
sixteen3.o: ./sixteen.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
slant.o: ./slant.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
slant5.o: ./slant.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
slant2.o: ./slant.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
solo.o: ./solo.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
solo5.o: ./solo.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
solo2.o: ./solo.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
tdq.o: ./tdq.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
tents.o: ./tents.c ./puzzles.h ./maxflow.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
tents5.o: ./tents.c ./puzzles.h ./maxflow.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
tents3.o: ./tents.c ./puzzles.h ./maxflow.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
towers.o: ./towers.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
towers5.o: ./towers.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
towers2.o: ./towers.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
tracks.o: ./tracks.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
tracks3.o: ./tracks.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
tree234.o: ./tree234.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
twiddle.o: ./twiddle.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
twiddle3.o: ./twiddle.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
undead.o: ./undead.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
undead3.o: ./undead.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
unequal.o: ./unequal.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
unequal5.o: ./unequal.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
unequal2.o: ./unequal.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
unruly.o: ./unruly.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
unruly5.o: ./unruly.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
unruly2.o: ./unruly.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
untangle.o: ./untangle.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
untangl3.o: ./untangle.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
version.o: ./version.c ./version.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
windows.o: ./windows.c ./puzzles.h ./resource.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
windows1.o: ./windows.c ./puzzles.h ./resource.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
|
||||||
|
GAMES += blackbox
|
||||||
|
GAMES += bridges
|
||||||
|
GAMES += cube
|
||||||
|
GAMES += dominosa
|
||||||
|
GAMES += fifteen
|
||||||
|
GAMES += filling
|
||||||
|
GAMES += flip
|
||||||
|
GAMES += flood
|
||||||
|
GAMES += galaxies
|
||||||
|
GAMES += guess
|
||||||
|
GAMES += inertia
|
||||||
|
GAMES += keen
|
||||||
|
GAMES += lightup
|
||||||
|
GAMES += loopy
|
||||||
|
GAMES += magnets
|
||||||
|
GAMES += map
|
||||||
|
GAMES += mines
|
||||||
|
GAMES += net
|
||||||
|
GAMES += netslide
|
||||||
|
GAMES += palisade
|
||||||
|
GAMES += pattern
|
||||||
|
GAMES += pearl
|
||||||
|
GAMES += pegs
|
||||||
|
GAMES += range
|
||||||
|
GAMES += rect
|
||||||
|
GAMES += samegame
|
||||||
|
GAMES += signpost
|
||||||
|
GAMES += singles
|
||||||
|
GAMES += sixteen
|
||||||
|
GAMES += slant
|
||||||
|
GAMES += solo
|
||||||
|
GAMES += tents
|
||||||
|
GAMES += towers
|
||||||
|
GAMES += tracks
|
||||||
|
GAMES += twiddle
|
||||||
|
GAMES += undead
|
||||||
|
GAMES += unequal
|
||||||
|
GAMES += unruly
|
||||||
|
GAMES += untangle
|
||||||
|
install:
|
||||||
|
for i in $(GAMES); do \
|
||||||
|
$(INSTALL_PROGRAM) -m 755 $(BINPREFIX)$$i $(DESTDIR)$(gamesdir)/$(BINPREFIX)$$i \
|
||||||
|
|| exit 1; \
|
||||||
|
done
|
||||||
|
test: benchmark.html benchmark.txt
|
||||||
|
|
||||||
|
benchmark.html: benchmark.txt benchmark.pl
|
||||||
|
./benchmark.pl benchmark.txt > $@
|
||||||
|
|
||||||
|
benchmark.txt: benchmark.sh $(GAMES)
|
||||||
|
./benchmark.sh > $@
|
||||||
|
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f *.o $(BINPREFIX)blackbox $(BINPREFIX)bridges $(BINPREFIX)cube $(BINPREFIX)dominosa $(BINPREFIX)fifteen $(BINPREFIX)fifteensolver $(BINPREFIX)filling $(BINPREFIX)fillingsolver $(BINPREFIX)flip $(BINPREFIX)flood $(BINPREFIX)galaxies $(BINPREFIX)galaxiespicture $(BINPREFIX)galaxiessolver $(BINPREFIX)guess $(BINPREFIX)inertia $(BINPREFIX)keen $(BINPREFIX)keensolver $(BINPREFIX)latincheck $(BINPREFIX)lightup $(BINPREFIX)lightupsolver $(BINPREFIX)loopy $(BINPREFIX)loopysolver $(BINPREFIX)magnets $(BINPREFIX)magnetssolver $(BINPREFIX)map $(BINPREFIX)mapsolver $(BINPREFIX)mineobfusc $(BINPREFIX)mines $(BINPREFIX)net $(BINPREFIX)netslide $(BINPREFIX)nullgame $(BINPREFIX)obfusc $(BINPREFIX)palisade $(BINPREFIX)pattern $(BINPREFIX)patternpicture $(BINPREFIX)patternsolver $(BINPREFIX)pearl $(BINPREFIX)pearlbench $(BINPREFIX)pegs $(BINPREFIX)range $(BINPREFIX)rect $(BINPREFIX)samegame $(BINPREFIX)signpost $(BINPREFIX)signpostsolver $(BINPREFIX)singles $(BINPREFIX)singlessolver $(BINPREFIX)sixteen $(BINPREFIX)slant $(BINPREFIX)slantsolver $(BINPREFIX)solo $(BINPREFIX)solosolver $(BINPREFIX)tents $(BINPREFIX)tentssolver $(BINPREFIX)towers $(BINPREFIX)towerssolver $(BINPREFIX)tracks $(BINPREFIX)twiddle $(BINPREFIX)undead $(BINPREFIX)unequal $(BINPREFIX)unequalsolver $(BINPREFIX)unruly $(BINPREFIX)unrulysolver $(BINPREFIX)untangle
|
446
apps/plugins/puzzles/src/Makefile.am
Normal file
446
apps/plugins/puzzles/src/Makefile.am
Normal file
|
@ -0,0 +1,446 @@
|
||||||
|
# Makefile.am for puzzles under Unix with Autoconf/Automake.
|
||||||
|
#
|
||||||
|
# This file was created by `mkfiles.pl' from the `Recipe' file.
|
||||||
|
# DO NOT EDIT THIS FILE DIRECTLY; edit Recipe or mkfiles.pl instead.
|
||||||
|
|
||||||
|
GAMES =
|
||||||
|
noinst_PROGRAMS = blackbox bridges cube dominosa fifteen fifteensolver \
|
||||||
|
filling fillingsolver flip flood galaxies galaxiespicture \
|
||||||
|
galaxiessolver guess inertia keen keensolver latincheck \
|
||||||
|
lightup lightupsolver loopy loopysolver magnets \
|
||||||
|
magnetssolver map mapsolver mineobfusc mines net netslide \
|
||||||
|
nullgame obfusc palisade pattern patternpicture \
|
||||||
|
patternsolver pearl pearlbench pegs range rect samegame \
|
||||||
|
signpost signpostsolver singles singlessolver sixteen slant \
|
||||||
|
slantsolver solo solosolver tents tentssolver towers \
|
||||||
|
towerssolver tracks twiddle undead unequal unequalsolver \
|
||||||
|
unruly unrulysolver untangle
|
||||||
|
AUTOMAKE_OPTIONS = subdir-objects
|
||||||
|
|
||||||
|
allsources = ./blackbox.c ./bridges.c ./combi.c ./cube.c ./divvy.c \
|
||||||
|
./dominosa.c ./drawing.c ./dsf.c ./fifteen.c ./filling.c \
|
||||||
|
./findloop.c ./flip.c ./flood.c ./galaxies.c ./grid.c \
|
||||||
|
./grid.h ./gtk.c ./guess.c ./inertia.c ./keen.c ./latin.c \
|
||||||
|
./latin.h ./laydomino.c ./lightup.c ./list.c ./loopgen.c \
|
||||||
|
./loopgen.h ./loopy.c ./magnets.c ./malloc.c ./map.c \
|
||||||
|
./maxflow.c ./maxflow.h ./midend.c ./mines.c ./misc.c \
|
||||||
|
./net.c ./netslide.c ./no-icon.c ./nullfe.c ./nullgame.c \
|
||||||
|
./obfusc.c ./osx.m ./palisade.c ./pattern.c ./pearl.c \
|
||||||
|
./pegs.c ./penrose.c ./penrose.h ./printing.c ./ps.c \
|
||||||
|
./puzzles.h ./random.c ./range.c ./rect.c ./resource.h \
|
||||||
|
./samegame.c ./signpost.c ./singles.c ./sixteen.c ./slant.c \
|
||||||
|
./solo.c ./tdq.c ./tents.c ./towers.c ./tracks.c ./tree234.c \
|
||||||
|
./tree234.h ./twiddle.c ./undead.c ./unequal.c ./unruly.c \
|
||||||
|
./untangle.c ./version.c ./version.h ./windows.c
|
||||||
|
|
||||||
|
AM_CPPFLAGS = -I$(srcdir)/./ -I$(srcdir)/icons/
|
||||||
|
AM_CFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS)
|
||||||
|
blackbox_SOURCES = ./blackbox.c ./drawing.c ./gtk.c ./malloc.c ./midend.c \
|
||||||
|
./misc.c ./no-icon.c ./printing.c ./ps.c ./puzzles.h \
|
||||||
|
./random.c ./version.c ./version.h
|
||||||
|
blackbox_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
bridges_SOURCES = ./bridges.c ./drawing.c ./dsf.c ./findloop.c ./gtk.c \
|
||||||
|
./malloc.c ./midend.c ./misc.c ./no-icon.c ./printing.c \
|
||||||
|
./ps.c ./puzzles.h ./random.c ./version.c ./version.h
|
||||||
|
bridges_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
cube_SOURCES = ./cube.c ./drawing.c ./gtk.c ./malloc.c ./midend.c ./misc.c \
|
||||||
|
./no-icon.c ./printing.c ./ps.c ./puzzles.h ./random.c \
|
||||||
|
./version.c ./version.h
|
||||||
|
cube_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
dominosa_SOURCES = ./dominosa.c ./drawing.c ./gtk.c ./laydomino.c ./malloc.c \
|
||||||
|
./midend.c ./misc.c ./no-icon.c ./printing.c ./ps.c \
|
||||||
|
./puzzles.h ./random.c ./version.c ./version.h
|
||||||
|
dominosa_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
fifteen_SOURCES = ./drawing.c ./fifteen.c ./gtk.c ./malloc.c ./midend.c \
|
||||||
|
./misc.c ./no-icon.c ./printing.c ./ps.c ./puzzles.h \
|
||||||
|
./random.c ./version.c ./version.h
|
||||||
|
fifteen_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
fifteensolver_SOURCES = ./malloc.c ./misc.c ./nullfe.c ./puzzles.h \
|
||||||
|
./random.c
|
||||||
|
fifteensolver_LDADD = libfifteen2_a-fifteen.$(OBJEXT) -lm
|
||||||
|
|
||||||
|
filling_SOURCES = ./drawing.c ./dsf.c ./filling.c ./gtk.c ./malloc.c \
|
||||||
|
./midend.c ./misc.c ./no-icon.c ./printing.c ./ps.c \
|
||||||
|
./puzzles.h ./random.c ./version.c ./version.h
|
||||||
|
filling_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
fillingsolver_SOURCES = ./dsf.c ./malloc.c ./misc.c ./nullfe.c ./puzzles.h \
|
||||||
|
./random.c
|
||||||
|
fillingsolver_LDADD = libfilling2_a-filling.$(OBJEXT) -lm
|
||||||
|
|
||||||
|
flip_SOURCES = ./drawing.c ./flip.c ./gtk.c ./malloc.c ./midend.c ./misc.c \
|
||||||
|
./no-icon.c ./printing.c ./ps.c ./puzzles.h ./random.c \
|
||||||
|
./tree234.c ./tree234.h ./version.c ./version.h
|
||||||
|
flip_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
flood_SOURCES = ./drawing.c ./flood.c ./gtk.c ./malloc.c ./midend.c ./misc.c \
|
||||||
|
./no-icon.c ./printing.c ./ps.c ./puzzles.h ./random.c \
|
||||||
|
./version.c ./version.h
|
||||||
|
flood_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
galaxies_SOURCES = ./drawing.c ./dsf.c ./galaxies.c ./gtk.c ./malloc.c \
|
||||||
|
./midend.c ./misc.c ./no-icon.c ./printing.c ./ps.c \
|
||||||
|
./puzzles.h ./random.c ./version.c ./version.h
|
||||||
|
galaxies_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
galaxiespicture_SOURCES = ./dsf.c ./malloc.c ./misc.c ./nullfe.c ./puzzles.h \
|
||||||
|
./random.c
|
||||||
|
galaxiespicture_LDADD = libgalaxie4_a-galaxies.$(OBJEXT) -lm
|
||||||
|
|
||||||
|
galaxiessolver_SOURCES = ./dsf.c ./malloc.c ./misc.c ./nullfe.c ./puzzles.h \
|
||||||
|
./random.c
|
||||||
|
galaxiessolver_LDADD = libgalaxie2_a-galaxies.$(OBJEXT) -lm
|
||||||
|
|
||||||
|
guess_SOURCES = ./drawing.c ./gtk.c ./guess.c ./malloc.c ./midend.c ./misc.c \
|
||||||
|
./no-icon.c ./printing.c ./ps.c ./puzzles.h ./random.c \
|
||||||
|
./version.c ./version.h
|
||||||
|
guess_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
inertia_SOURCES = ./drawing.c ./gtk.c ./inertia.c ./malloc.c ./midend.c \
|
||||||
|
./misc.c ./no-icon.c ./printing.c ./ps.c ./puzzles.h \
|
||||||
|
./random.c ./version.c ./version.h
|
||||||
|
inertia_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
keen_SOURCES = ./drawing.c ./dsf.c ./gtk.c ./keen.c ./latin.c ./latin.h \
|
||||||
|
./malloc.c ./maxflow.c ./maxflow.h ./midend.c ./misc.c \
|
||||||
|
./no-icon.c ./printing.c ./ps.c ./puzzles.h ./random.c \
|
||||||
|
./tree234.c ./tree234.h ./version.c ./version.h
|
||||||
|
keen_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
keensolver_SOURCES = ./dsf.c ./malloc.c ./maxflow.c ./maxflow.h ./misc.c \
|
||||||
|
./nullfe.c ./puzzles.h ./random.c ./tree234.c ./tree234.h
|
||||||
|
keensolver_LDADD = libkeen2_a-keen.$(OBJEXT) liblatin6_a-latin.$(OBJEXT) -lm
|
||||||
|
|
||||||
|
latincheck_SOURCES = ./malloc.c ./maxflow.c ./maxflow.h ./misc.c ./nullfe.c \
|
||||||
|
./puzzles.h ./random.c ./tree234.c ./tree234.h
|
||||||
|
latincheck_LDADD = liblatin8_a-latin.$(OBJEXT) -lm
|
||||||
|
|
||||||
|
lightup_SOURCES = ./combi.c ./drawing.c ./gtk.c ./lightup.c ./malloc.c \
|
||||||
|
./midend.c ./misc.c ./no-icon.c ./printing.c ./ps.c \
|
||||||
|
./puzzles.h ./random.c ./version.c ./version.h
|
||||||
|
lightup_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
lightupsolver_SOURCES = ./combi.c ./malloc.c ./misc.c ./nullfe.c ./puzzles.h \
|
||||||
|
./random.c
|
||||||
|
lightupsolver_LDADD = liblightup2_a-lightup.$(OBJEXT) -lm
|
||||||
|
|
||||||
|
loopy_SOURCES = ./drawing.c ./dsf.c ./grid.c ./grid.h ./gtk.c ./loopgen.c \
|
||||||
|
./loopgen.h ./loopy.c ./malloc.c ./midend.c ./misc.c \
|
||||||
|
./no-icon.c ./penrose.c ./penrose.h ./printing.c ./ps.c \
|
||||||
|
./puzzles.h ./random.c ./tree234.c ./tree234.h ./version.c \
|
||||||
|
./version.h
|
||||||
|
loopy_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
loopysolver_SOURCES = ./dsf.c ./grid.c ./grid.h ./loopgen.c ./loopgen.h \
|
||||||
|
./malloc.c ./misc.c ./nullfe.c ./penrose.c ./penrose.h \
|
||||||
|
./puzzles.h ./random.c ./tree234.c ./tree234.h
|
||||||
|
loopysolver_LDADD = libloopy2_a-loopy.$(OBJEXT) -lm
|
||||||
|
|
||||||
|
magnets_SOURCES = ./drawing.c ./gtk.c ./laydomino.c ./magnets.c ./malloc.c \
|
||||||
|
./midend.c ./misc.c ./no-icon.c ./printing.c ./ps.c \
|
||||||
|
./puzzles.h ./random.c ./version.c ./version.h
|
||||||
|
magnets_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
magnetssolver_SOURCES = ./laydomino.c ./malloc.c ./misc.c ./nullfe.c \
|
||||||
|
./puzzles.h ./random.c
|
||||||
|
magnetssolver_LDADD = libmagnets2_a-magnets.$(OBJEXT) -lm
|
||||||
|
|
||||||
|
map_SOURCES = ./drawing.c ./dsf.c ./gtk.c ./malloc.c ./map.c ./midend.c \
|
||||||
|
./misc.c ./no-icon.c ./printing.c ./ps.c ./puzzles.h \
|
||||||
|
./random.c ./version.c ./version.h
|
||||||
|
map_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
mapsolver_SOURCES = ./dsf.c ./malloc.c ./misc.c ./nullfe.c ./puzzles.h \
|
||||||
|
./random.c
|
||||||
|
mapsolver_LDADD = libmap2_a-map.$(OBJEXT) -lm
|
||||||
|
|
||||||
|
mineobfusc_SOURCES = ./malloc.c ./misc.c ./nullfe.c ./puzzles.h ./random.c \
|
||||||
|
./tree234.c ./tree234.h
|
||||||
|
mineobfusc_LDADD = libmines2_a-mines.$(OBJEXT) -lm
|
||||||
|
|
||||||
|
mines_SOURCES = ./drawing.c ./gtk.c ./malloc.c ./midend.c ./mines.c ./misc.c \
|
||||||
|
./no-icon.c ./printing.c ./ps.c ./puzzles.h ./random.c \
|
||||||
|
./tree234.c ./tree234.h ./version.c ./version.h
|
||||||
|
mines_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
net_SOURCES = ./drawing.c ./dsf.c ./findloop.c ./gtk.c ./malloc.c ./midend.c \
|
||||||
|
./misc.c ./net.c ./no-icon.c ./printing.c ./ps.c ./puzzles.h \
|
||||||
|
./random.c ./tree234.c ./tree234.h ./version.c ./version.h
|
||||||
|
net_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
netslide_SOURCES = ./drawing.c ./gtk.c ./malloc.c ./midend.c ./misc.c \
|
||||||
|
./netslide.c ./no-icon.c ./printing.c ./ps.c ./puzzles.h \
|
||||||
|
./random.c ./tree234.c ./tree234.h ./version.c ./version.h
|
||||||
|
netslide_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
nullgame_SOURCES = ./drawing.c ./gtk.c ./malloc.c ./midend.c ./misc.c \
|
||||||
|
./no-icon.c ./nullgame.c ./printing.c ./ps.c ./puzzles.h \
|
||||||
|
./random.c ./version.c ./version.h
|
||||||
|
nullgame_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
obfusc_SOURCES = ./malloc.c ./misc.c ./nullfe.c ./obfusc.c ./puzzles.h \
|
||||||
|
./random.c
|
||||||
|
obfusc_LDADD = -lm
|
||||||
|
|
||||||
|
palisade_SOURCES = ./divvy.c ./drawing.c ./dsf.c ./gtk.c ./malloc.c \
|
||||||
|
./midend.c ./misc.c ./no-icon.c ./palisade.c ./printing.c \
|
||||||
|
./ps.c ./puzzles.h ./random.c ./version.c ./version.h
|
||||||
|
palisade_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
pattern_SOURCES = ./drawing.c ./gtk.c ./malloc.c ./midend.c ./misc.c \
|
||||||
|
./no-icon.c ./pattern.c ./printing.c ./ps.c ./puzzles.h \
|
||||||
|
./random.c ./version.c ./version.h
|
||||||
|
pattern_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
patternpicture_SOURCES = ./malloc.c ./misc.c ./nullfe.c ./puzzles.h \
|
||||||
|
./random.c
|
||||||
|
patternpicture_LDADD = libpattern4_a-pattern.$(OBJEXT) -lm
|
||||||
|
|
||||||
|
patternsolver_SOURCES = ./malloc.c ./misc.c ./nullfe.c ./puzzles.h \
|
||||||
|
./random.c
|
||||||
|
patternsolver_LDADD = libpattern2_a-pattern.$(OBJEXT) -lm
|
||||||
|
|
||||||
|
pearl_SOURCES = ./drawing.c ./dsf.c ./grid.c ./grid.h ./gtk.c ./loopgen.c \
|
||||||
|
./loopgen.h ./malloc.c ./midend.c ./misc.c ./no-icon.c \
|
||||||
|
./pearl.c ./penrose.c ./penrose.h ./printing.c ./ps.c \
|
||||||
|
./puzzles.h ./random.c ./tdq.c ./tree234.c ./tree234.h \
|
||||||
|
./version.c ./version.h
|
||||||
|
pearl_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
pearlbench_SOURCES = ./dsf.c ./grid.c ./grid.h ./loopgen.c ./loopgen.h \
|
||||||
|
./malloc.c ./misc.c ./nullfe.c ./penrose.c ./penrose.h \
|
||||||
|
./puzzles.h ./random.c ./tdq.c ./tree234.c ./tree234.h
|
||||||
|
pearlbench_LDADD = libpearl2_a-pearl.$(OBJEXT) -lm
|
||||||
|
|
||||||
|
pegs_SOURCES = ./drawing.c ./gtk.c ./malloc.c ./midend.c ./misc.c \
|
||||||
|
./no-icon.c ./pegs.c ./printing.c ./ps.c ./puzzles.h \
|
||||||
|
./random.c ./tree234.c ./tree234.h ./version.c ./version.h
|
||||||
|
pegs_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
range_SOURCES = ./drawing.c ./dsf.c ./gtk.c ./malloc.c ./midend.c ./misc.c \
|
||||||
|
./no-icon.c ./printing.c ./ps.c ./puzzles.h ./random.c \
|
||||||
|
./range.c ./version.c ./version.h
|
||||||
|
range_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
rect_SOURCES = ./drawing.c ./gtk.c ./malloc.c ./midend.c ./misc.c \
|
||||||
|
./no-icon.c ./printing.c ./ps.c ./puzzles.h ./random.c \
|
||||||
|
./rect.c ./version.c ./version.h
|
||||||
|
rect_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
samegame_SOURCES = ./drawing.c ./gtk.c ./malloc.c ./midend.c ./misc.c \
|
||||||
|
./no-icon.c ./printing.c ./ps.c ./puzzles.h ./random.c \
|
||||||
|
./samegame.c ./version.c ./version.h
|
||||||
|
samegame_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
signpost_SOURCES = ./drawing.c ./dsf.c ./gtk.c ./malloc.c ./midend.c \
|
||||||
|
./misc.c ./no-icon.c ./printing.c ./ps.c ./puzzles.h \
|
||||||
|
./random.c ./signpost.c ./version.c ./version.h
|
||||||
|
signpost_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
signpostsolver_SOURCES = ./dsf.c ./malloc.c ./misc.c ./nullfe.c ./puzzles.h \
|
||||||
|
./random.c
|
||||||
|
signpostsolver_LDADD = libsignpos2_a-signpost.$(OBJEXT) -lm
|
||||||
|
|
||||||
|
singles_SOURCES = ./drawing.c ./dsf.c ./gtk.c ./latin.c ./latin.h ./malloc.c \
|
||||||
|
./maxflow.c ./maxflow.h ./midend.c ./misc.c ./no-icon.c \
|
||||||
|
./printing.c ./ps.c ./puzzles.h ./random.c ./singles.c \
|
||||||
|
./tree234.c ./tree234.h ./version.c ./version.h
|
||||||
|
singles_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
singlessolver_SOURCES = ./dsf.c ./latin.c ./latin.h ./malloc.c ./maxflow.c \
|
||||||
|
./maxflow.h ./misc.c ./nullfe.c ./puzzles.h ./random.c \
|
||||||
|
./tree234.c ./tree234.h
|
||||||
|
singlessolver_LDADD = libsingles3_a-singles.$(OBJEXT) -lm
|
||||||
|
|
||||||
|
sixteen_SOURCES = ./drawing.c ./gtk.c ./malloc.c ./midend.c ./misc.c \
|
||||||
|
./no-icon.c ./printing.c ./ps.c ./puzzles.h ./random.c \
|
||||||
|
./sixteen.c ./version.c ./version.h
|
||||||
|
sixteen_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
slant_SOURCES = ./drawing.c ./dsf.c ./findloop.c ./gtk.c ./malloc.c \
|
||||||
|
./midend.c ./misc.c ./no-icon.c ./printing.c ./ps.c \
|
||||||
|
./puzzles.h ./random.c ./slant.c ./version.c ./version.h
|
||||||
|
slant_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
slantsolver_SOURCES = ./dsf.c ./findloop.c ./malloc.c ./misc.c ./nullfe.c \
|
||||||
|
./puzzles.h ./random.c
|
||||||
|
slantsolver_LDADD = libslant2_a-slant.$(OBJEXT) -lm
|
||||||
|
|
||||||
|
solo_SOURCES = ./divvy.c ./drawing.c ./dsf.c ./gtk.c ./malloc.c ./midend.c \
|
||||||
|
./misc.c ./no-icon.c ./printing.c ./ps.c ./puzzles.h \
|
||||||
|
./random.c ./solo.c ./version.c ./version.h
|
||||||
|
solo_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
solosolver_SOURCES = ./divvy.c ./dsf.c ./malloc.c ./misc.c ./nullfe.c \
|
||||||
|
./puzzles.h ./random.c
|
||||||
|
solosolver_LDADD = libsolo2_a-solo.$(OBJEXT) -lm
|
||||||
|
|
||||||
|
tents_SOURCES = ./drawing.c ./dsf.c ./gtk.c ./malloc.c ./maxflow.c \
|
||||||
|
./maxflow.h ./midend.c ./misc.c ./no-icon.c ./printing.c \
|
||||||
|
./ps.c ./puzzles.h ./random.c ./tents.c ./version.c \
|
||||||
|
./version.h
|
||||||
|
tents_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
tentssolver_SOURCES = ./dsf.c ./malloc.c ./maxflow.c ./maxflow.h ./misc.c \
|
||||||
|
./nullfe.c ./puzzles.h ./random.c
|
||||||
|
tentssolver_LDADD = libtents3_a-tents.$(OBJEXT) -lm
|
||||||
|
|
||||||
|
towers_SOURCES = ./drawing.c ./gtk.c ./latin.c ./latin.h ./malloc.c \
|
||||||
|
./maxflow.c ./maxflow.h ./midend.c ./misc.c ./no-icon.c \
|
||||||
|
./printing.c ./ps.c ./puzzles.h ./random.c ./towers.c \
|
||||||
|
./tree234.c ./tree234.h ./version.c ./version.h
|
||||||
|
towers_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
towerssolver_SOURCES = ./malloc.c ./maxflow.c ./maxflow.h ./misc.c \
|
||||||
|
./nullfe.c ./puzzles.h ./random.c ./tree234.c ./tree234.h
|
||||||
|
towerssolver_LDADD = liblatin6_a-latin.$(OBJEXT) \
|
||||||
|
libtowers2_a-towers.$(OBJEXT) -lm
|
||||||
|
|
||||||
|
tracks_SOURCES = ./drawing.c ./dsf.c ./findloop.c ./gtk.c ./malloc.c \
|
||||||
|
./midend.c ./misc.c ./no-icon.c ./printing.c ./ps.c \
|
||||||
|
./puzzles.h ./random.c ./tracks.c ./version.c ./version.h
|
||||||
|
tracks_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
twiddle_SOURCES = ./drawing.c ./gtk.c ./malloc.c ./midend.c ./misc.c \
|
||||||
|
./no-icon.c ./printing.c ./ps.c ./puzzles.h ./random.c \
|
||||||
|
./twiddle.c ./version.c ./version.h
|
||||||
|
twiddle_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
undead_SOURCES = ./drawing.c ./gtk.c ./malloc.c ./midend.c ./misc.c \
|
||||||
|
./no-icon.c ./printing.c ./ps.c ./puzzles.h ./random.c \
|
||||||
|
./undead.c ./version.c ./version.h
|
||||||
|
undead_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
unequal_SOURCES = ./drawing.c ./gtk.c ./latin.c ./latin.h ./malloc.c \
|
||||||
|
./maxflow.c ./maxflow.h ./midend.c ./misc.c ./no-icon.c \
|
||||||
|
./printing.c ./ps.c ./puzzles.h ./random.c ./tree234.c \
|
||||||
|
./tree234.h ./unequal.c ./version.c ./version.h
|
||||||
|
unequal_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
unequalsolver_SOURCES = ./malloc.c ./maxflow.c ./maxflow.h ./misc.c \
|
||||||
|
./nullfe.c ./puzzles.h ./random.c ./tree234.c ./tree234.h
|
||||||
|
unequalsolver_LDADD = liblatin6_a-latin.$(OBJEXT) \
|
||||||
|
libunequal2_a-unequal.$(OBJEXT) -lm
|
||||||
|
|
||||||
|
unruly_SOURCES = ./drawing.c ./gtk.c ./malloc.c ./midend.c ./misc.c \
|
||||||
|
./no-icon.c ./printing.c ./ps.c ./puzzles.h ./random.c \
|
||||||
|
./unruly.c ./version.c ./version.h
|
||||||
|
unruly_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
unrulysolver_SOURCES = ./malloc.c ./misc.c ./nullfe.c ./puzzles.h ./random.c
|
||||||
|
unrulysolver_LDADD = libunruly2_a-unruly.$(OBJEXT) -lm
|
||||||
|
|
||||||
|
untangle_SOURCES = ./drawing.c ./gtk.c ./malloc.c ./midend.c ./misc.c \
|
||||||
|
./no-icon.c ./printing.c ./ps.c ./puzzles.h ./random.c \
|
||||||
|
./tree234.c ./tree234.h ./untangle.c ./version.c ./version.h
|
||||||
|
untangle_LDADD = $(GTK_LIBS) -lm
|
||||||
|
|
||||||
|
libfifteen2_a_SOURCES = ./fifteen.c ./puzzles.h
|
||||||
|
libfifteen2_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) -DSTANDALONE_SOLVER
|
||||||
|
libfilling2_a_SOURCES = ./filling.c ./puzzles.h
|
||||||
|
libfilling2_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) -DSTANDALONE_SOLVER
|
||||||
|
libgalaxie2_a_SOURCES = ./galaxies.c ./puzzles.h
|
||||||
|
libgalaxie2_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) -DSTANDALONE_SOLVER
|
||||||
|
libgalaxie4_a_SOURCES = ./galaxies.c ./puzzles.h
|
||||||
|
libgalaxie4_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) \
|
||||||
|
-DSTANDALONE_PICTURE_GENERATOR
|
||||||
|
libkeen2_a_SOURCES = ./keen.c ./puzzles.h ./latin.h
|
||||||
|
libkeen2_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) -DSTANDALONE_SOLVER
|
||||||
|
liblatin6_a_SOURCES = ./latin.c ./puzzles.h ./tree234.h ./maxflow.h \
|
||||||
|
./latin.h
|
||||||
|
liblatin6_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) -DSTANDALONE_SOLVER
|
||||||
|
liblatin8_a_SOURCES = ./latin.c ./puzzles.h ./tree234.h ./maxflow.h \
|
||||||
|
./latin.h
|
||||||
|
liblatin8_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) -DSTANDALONE_LATIN_TEST
|
||||||
|
liblightup2_a_SOURCES = ./lightup.c ./puzzles.h
|
||||||
|
liblightup2_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) -DSTANDALONE_SOLVER
|
||||||
|
libloopy2_a_SOURCES = ./loopy.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
libloopy2_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) -DSTANDALONE_SOLVER
|
||||||
|
libmagnets2_a_SOURCES = ./magnets.c ./puzzles.h
|
||||||
|
libmagnets2_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) -DSTANDALONE_SOLVER
|
||||||
|
libmap2_a_SOURCES = ./map.c ./puzzles.h
|
||||||
|
libmap2_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) -DSTANDALONE_SOLVER
|
||||||
|
libmines2_a_SOURCES = ./mines.c ./tree234.h ./puzzles.h
|
||||||
|
libmines2_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) -DSTANDALONE_OBFUSCATOR
|
||||||
|
libpattern2_a_SOURCES = ./pattern.c ./puzzles.h
|
||||||
|
libpattern2_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) -DSTANDALONE_SOLVER
|
||||||
|
libpattern4_a_SOURCES = ./pattern.c ./puzzles.h
|
||||||
|
libpattern4_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) \
|
||||||
|
-DSTANDALONE_PICTURE_GENERATOR
|
||||||
|
libpearl2_a_SOURCES = ./pearl.c ./puzzles.h ./grid.h ./loopgen.h
|
||||||
|
libpearl2_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) -DSTANDALONE_SOLVER
|
||||||
|
libsignpos2_a_SOURCES = ./signpost.c ./puzzles.h
|
||||||
|
libsignpos2_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) -DSTANDALONE_SOLVER
|
||||||
|
libsingles3_a_SOURCES = ./singles.c ./puzzles.h ./latin.h
|
||||||
|
libsingles3_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) -DSTANDALONE_SOLVER
|
||||||
|
libslant2_a_SOURCES = ./slant.c ./puzzles.h
|
||||||
|
libslant2_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) -DSTANDALONE_SOLVER
|
||||||
|
libsolo2_a_SOURCES = ./solo.c ./puzzles.h
|
||||||
|
libsolo2_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) -DSTANDALONE_SOLVER
|
||||||
|
libtents3_a_SOURCES = ./tents.c ./puzzles.h ./maxflow.h
|
||||||
|
libtents3_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) -DSTANDALONE_SOLVER
|
||||||
|
libtowers2_a_SOURCES = ./towers.c ./puzzles.h ./latin.h
|
||||||
|
libtowers2_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) -DSTANDALONE_SOLVER
|
||||||
|
libunequal2_a_SOURCES = ./unequal.c ./puzzles.h ./latin.h
|
||||||
|
libunequal2_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) -DSTANDALONE_SOLVER
|
||||||
|
libunruly2_a_SOURCES = ./unruly.c ./puzzles.h
|
||||||
|
libunruly2_a_CPPFLAGS = $(GTK_CFLAGS) $(WARNINGOPTS) -DSTANDALONE_SOLVER
|
||||||
|
noinst_LIBRARIES = libfifteen2.a libfilling2.a libgalaxie2.a libgalaxie4.a \
|
||||||
|
libkeen2.a liblatin6.a liblatin8.a liblightup2.a libloopy2.a \
|
||||||
|
libmagnets2.a libmap2.a libmines2.a libpattern2.a \
|
||||||
|
libpattern4.a libpearl2.a libsignpos2.a libsingles3.a \
|
||||||
|
libslant2.a libsolo2.a libtents3.a libtowers2.a \
|
||||||
|
libunequal2.a libunruly2.a
|
||||||
|
|
||||||
|
GAMES += blackbox
|
||||||
|
GAMES += bridges
|
||||||
|
GAMES += cube
|
||||||
|
GAMES += dominosa
|
||||||
|
GAMES += fifteen
|
||||||
|
GAMES += filling
|
||||||
|
GAMES += flip
|
||||||
|
GAMES += flood
|
||||||
|
GAMES += galaxies
|
||||||
|
GAMES += guess
|
||||||
|
GAMES += inertia
|
||||||
|
GAMES += keen
|
||||||
|
GAMES += lightup
|
||||||
|
GAMES += loopy
|
||||||
|
GAMES += magnets
|
||||||
|
GAMES += map
|
||||||
|
GAMES += mines
|
||||||
|
GAMES += net
|
||||||
|
GAMES += netslide
|
||||||
|
GAMES += palisade
|
||||||
|
GAMES += pattern
|
||||||
|
GAMES += pearl
|
||||||
|
GAMES += pegs
|
||||||
|
GAMES += range
|
||||||
|
GAMES += rect
|
||||||
|
GAMES += samegame
|
||||||
|
GAMES += signpost
|
||||||
|
GAMES += singles
|
||||||
|
GAMES += sixteen
|
||||||
|
GAMES += slant
|
||||||
|
GAMES += solo
|
||||||
|
GAMES += tents
|
||||||
|
GAMES += towers
|
||||||
|
GAMES += tracks
|
||||||
|
GAMES += twiddle
|
||||||
|
GAMES += undead
|
||||||
|
GAMES += unequal
|
||||||
|
GAMES += unruly
|
||||||
|
GAMES += untangle
|
||||||
|
bin_PROGRAMS = $(GAMES)
|
||||||
|
test: benchmark.html benchmark.txt
|
||||||
|
|
||||||
|
benchmark.html: benchmark.txt benchmark.pl
|
||||||
|
./benchmark.pl benchmark.txt > $@
|
||||||
|
|
||||||
|
benchmark.txt: benchmark.sh $(GAMES)
|
||||||
|
./benchmark.sh > $@
|
718
apps/plugins/puzzles/src/Makefile.cyg
Normal file
718
apps/plugins/puzzles/src/Makefile.cyg
Normal file
|
@ -0,0 +1,718 @@
|
||||||
|
# Makefile for puzzles under cygwin.
|
||||||
|
#
|
||||||
|
# This file was created by `mkfiles.pl' from the `Recipe' file.
|
||||||
|
# DO NOT EDIT THIS FILE DIRECTLY; edit Recipe or mkfiles.pl instead.
|
||||||
|
|
||||||
|
# You can define this path to point at your tools if you need to
|
||||||
|
# TOOLPATH = c:\cygwin\bin\ # or similar, if you're running Windows
|
||||||
|
# TOOLPATH = /pkg/mingw32msvc/i386-mingw32msvc/bin/
|
||||||
|
CC = $(TOOLPATH)gcc
|
||||||
|
RC = $(TOOLPATH)windres
|
||||||
|
# Uncomment the following two lines to compile under Winelib
|
||||||
|
# CC = winegcc
|
||||||
|
# RC = wrc
|
||||||
|
# You may also need to tell windres where to find include files:
|
||||||
|
# RCINC = --include-dir c:\cygwin\include\
|
||||||
|
|
||||||
|
CFLAGS = -mno-cygwin -Wall -O2 -D_WINDOWS -DDEBUG -DWIN32S_COMPAT \
|
||||||
|
-D_NO_OLDNAMES -DNO_MULTIMON -DNO_HTMLHELP -I./ -Iicons/
|
||||||
|
LDFLAGS = -mno-cygwin -s
|
||||||
|
RCFLAGS = $(RCINC) --define WIN32=1 --define _WIN32=1 --define WINVER=0x0400 \
|
||||||
|
--define MINGW32_FIX=1 --include ./ --include icons/
|
||||||
|
|
||||||
|
all: blackbox.exe bridges.exe cube.exe dominosa.exe fifteen.exe \
|
||||||
|
fifteensolver.exe filling.exe fillingsolver.exe flip.exe \
|
||||||
|
flood.exe galaxies.exe galaxiespicture.exe \
|
||||||
|
galaxiessolver.exe guess.exe inertia.exe keen.exe \
|
||||||
|
keensolver.exe latincheck.exe lightup.exe lightupsolver.exe \
|
||||||
|
loopy.exe loopysolver.exe magnets.exe magnetssolver.exe \
|
||||||
|
map.exe mapsolver.exe mineobfusc.exe mines.exe netgame.exe \
|
||||||
|
netslide.exe nullgame.exe palisade.exe pattern.exe \
|
||||||
|
patternpicture.exe patternsolver.exe pearl.exe \
|
||||||
|
pearlbench.exe pegs.exe puzzles.exe range.exe rect.exe \
|
||||||
|
samegame.exe signpost.exe signpostsolver.exe singles.exe \
|
||||||
|
singlessolver.exe sixteen.exe slant.exe slantsolver.exe \
|
||||||
|
solo.exe solosolver.exe tents.exe tentssolver.exe towers.exe \
|
||||||
|
towerssolver.exe tracks.exe twiddle.exe undead.exe \
|
||||||
|
unequal.exe unequalsolver.exe unruly.exe unrulysolver.exe \
|
||||||
|
untangle.exe
|
||||||
|
|
||||||
|
blackbox.exe: blackbox.o drawing.o malloc.o midend.o misc.o noicon.res.o \
|
||||||
|
printing.o random.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,blackbox.map blackbox.o \
|
||||||
|
drawing.o malloc.o midend.o misc.o noicon.res.o printing.o \
|
||||||
|
random.o version.o windows.o -lcomctl32 -lcomdlg32 -lgdi32 \
|
||||||
|
-luser32 -lwinspool
|
||||||
|
|
||||||
|
bridges.exe: bridges.o drawing.o dsf.o findloop.o malloc.o midend.o misc.o \
|
||||||
|
noicon.res.o printing.o random.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,bridges.map bridges.o \
|
||||||
|
drawing.o dsf.o findloop.o malloc.o midend.o misc.o \
|
||||||
|
noicon.res.o printing.o random.o version.o windows.o \
|
||||||
|
-lcomctl32 -lcomdlg32 -lgdi32 -luser32 -lwinspool
|
||||||
|
|
||||||
|
cube.exe: cube.o drawing.o malloc.o midend.o misc.o noicon.res.o printing.o \
|
||||||
|
random.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,cube.map cube.o drawing.o \
|
||||||
|
malloc.o midend.o misc.o noicon.res.o printing.o random.o \
|
||||||
|
version.o windows.o -lcomctl32 -lcomdlg32 -lgdi32 -luser32 \
|
||||||
|
-lwinspool
|
||||||
|
|
||||||
|
dominosa.exe: dominosa.o drawing.o laydomino.o malloc.o midend.o misc.o \
|
||||||
|
noicon.res.o printing.o random.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,dominosa.map dominosa.o \
|
||||||
|
drawing.o laydomino.o malloc.o midend.o misc.o noicon.res.o \
|
||||||
|
printing.o random.o version.o windows.o -lcomctl32 \
|
||||||
|
-lcomdlg32 -lgdi32 -luser32 -lwinspool
|
||||||
|
|
||||||
|
fifteen.exe: drawing.o fifteen.o malloc.o midend.o misc.o noicon.res.o \
|
||||||
|
printing.o random.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,fifteen.map drawing.o \
|
||||||
|
fifteen.o malloc.o midend.o misc.o noicon.res.o printing.o \
|
||||||
|
random.o version.o windows.o -lcomctl32 -lcomdlg32 -lgdi32 \
|
||||||
|
-luser32 -lwinspool
|
||||||
|
|
||||||
|
fifteensolver.exe: fifteen2.o malloc.o misc.o nullfe.o random.o
|
||||||
|
$(CC) $(LDFLAGS) -o $@ -Wl,-Map,fifteensolver.map fifteen2.o \
|
||||||
|
malloc.o misc.o nullfe.o random.o
|
||||||
|
|
||||||
|
filling.exe: drawing.o dsf.o filling.o malloc.o midend.o misc.o noicon.res.o \
|
||||||
|
printing.o random.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,filling.map drawing.o \
|
||||||
|
dsf.o filling.o malloc.o midend.o misc.o noicon.res.o \
|
||||||
|
printing.o random.o version.o windows.o -lcomctl32 \
|
||||||
|
-lcomdlg32 -lgdi32 -luser32 -lwinspool
|
||||||
|
|
||||||
|
fillingsolver.exe: dsf.o filling2.o malloc.o misc.o nullfe.o random.o
|
||||||
|
$(CC) $(LDFLAGS) -o $@ -Wl,-Map,fillingsolver.map dsf.o filling2.o \
|
||||||
|
malloc.o misc.o nullfe.o random.o
|
||||||
|
|
||||||
|
flip.exe: drawing.o flip.o malloc.o midend.o misc.o noicon.res.o printing.o \
|
||||||
|
random.o tree234.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,flip.map drawing.o flip.o \
|
||||||
|
malloc.o midend.o misc.o noicon.res.o printing.o random.o \
|
||||||
|
tree234.o version.o windows.o -lcomctl32 -lcomdlg32 -lgdi32 \
|
||||||
|
-luser32 -lwinspool
|
||||||
|
|
||||||
|
flood.exe: drawing.o flood.o malloc.o midend.o misc.o noicon.res.o \
|
||||||
|
printing.o random.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,flood.map drawing.o \
|
||||||
|
flood.o malloc.o midend.o misc.o noicon.res.o printing.o \
|
||||||
|
random.o version.o windows.o -lcomctl32 -lcomdlg32 -lgdi32 \
|
||||||
|
-luser32 -lwinspool
|
||||||
|
|
||||||
|
galaxies.exe: drawing.o dsf.o galaxies.o malloc.o midend.o misc.o \
|
||||||
|
noicon.res.o printing.o random.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,galaxies.map drawing.o \
|
||||||
|
dsf.o galaxies.o malloc.o midend.o misc.o noicon.res.o \
|
||||||
|
printing.o random.o version.o windows.o -lcomctl32 \
|
||||||
|
-lcomdlg32 -lgdi32 -luser32 -lwinspool
|
||||||
|
|
||||||
|
galaxiespicture.exe: dsf.o galaxie4.o malloc.o misc.o nullfe.o random.o
|
||||||
|
$(CC) $(LDFLAGS) -o $@ -Wl,-Map,galaxiespicture.map dsf.o galaxie4.o \
|
||||||
|
malloc.o misc.o nullfe.o random.o
|
||||||
|
|
||||||
|
galaxiessolver.exe: dsf.o galaxie2.o malloc.o misc.o nullfe.o random.o
|
||||||
|
$(CC) $(LDFLAGS) -o $@ -Wl,-Map,galaxiessolver.map dsf.o galaxie2.o \
|
||||||
|
malloc.o misc.o nullfe.o random.o
|
||||||
|
|
||||||
|
guess.exe: drawing.o guess.o malloc.o midend.o misc.o noicon.res.o \
|
||||||
|
printing.o random.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,guess.map drawing.o \
|
||||||
|
guess.o malloc.o midend.o misc.o noicon.res.o printing.o \
|
||||||
|
random.o version.o windows.o -lcomctl32 -lcomdlg32 -lgdi32 \
|
||||||
|
-luser32 -lwinspool
|
||||||
|
|
||||||
|
inertia.exe: drawing.o inertia.o malloc.o midend.o misc.o noicon.res.o \
|
||||||
|
printing.o random.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,inertia.map drawing.o \
|
||||||
|
inertia.o malloc.o midend.o misc.o noicon.res.o printing.o \
|
||||||
|
random.o version.o windows.o -lcomctl32 -lcomdlg32 -lgdi32 \
|
||||||
|
-luser32 -lwinspool
|
||||||
|
|
||||||
|
keen.exe: drawing.o dsf.o keen.o latin.o malloc.o maxflow.o midend.o misc.o \
|
||||||
|
noicon.res.o printing.o random.o tree234.o version.o \
|
||||||
|
windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,keen.map drawing.o dsf.o \
|
||||||
|
keen.o latin.o malloc.o maxflow.o midend.o misc.o \
|
||||||
|
noicon.res.o printing.o random.o tree234.o version.o \
|
||||||
|
windows.o -lcomctl32 -lcomdlg32 -lgdi32 -luser32 -lwinspool
|
||||||
|
|
||||||
|
keensolver.exe: dsf.o keen2.o latin6.o malloc.o maxflow.o misc.o nullfe.o \
|
||||||
|
random.o tree234.o
|
||||||
|
$(CC) $(LDFLAGS) -o $@ -Wl,-Map,keensolver.map dsf.o keen2.o \
|
||||||
|
latin6.o malloc.o maxflow.o misc.o nullfe.o random.o \
|
||||||
|
tree234.o
|
||||||
|
|
||||||
|
latincheck.exe: latin8.o malloc.o maxflow.o misc.o nullfe.o random.o \
|
||||||
|
tree234.o
|
||||||
|
$(CC) $(LDFLAGS) -o $@ -Wl,-Map,latincheck.map latin8.o malloc.o \
|
||||||
|
maxflow.o misc.o nullfe.o random.o tree234.o
|
||||||
|
|
||||||
|
lightup.exe: combi.o drawing.o lightup.o malloc.o midend.o misc.o \
|
||||||
|
noicon.res.o printing.o random.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,lightup.map combi.o \
|
||||||
|
drawing.o lightup.o malloc.o midend.o misc.o noicon.res.o \
|
||||||
|
printing.o random.o version.o windows.o -lcomctl32 \
|
||||||
|
-lcomdlg32 -lgdi32 -luser32 -lwinspool
|
||||||
|
|
||||||
|
lightupsolver.exe: combi.o lightup2.o malloc.o misc.o nullfe.o random.o
|
||||||
|
$(CC) $(LDFLAGS) -o $@ -Wl,-Map,lightupsolver.map combi.o lightup2.o \
|
||||||
|
malloc.o misc.o nullfe.o random.o
|
||||||
|
|
||||||
|
loopy.exe: drawing.o dsf.o grid.o loopgen.o loopy.o malloc.o midend.o misc.o \
|
||||||
|
noicon.res.o penrose.o printing.o random.o tree234.o \
|
||||||
|
version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,loopy.map drawing.o dsf.o \
|
||||||
|
grid.o loopgen.o loopy.o malloc.o midend.o misc.o \
|
||||||
|
noicon.res.o penrose.o printing.o random.o tree234.o \
|
||||||
|
version.o windows.o -lcomctl32 -lcomdlg32 -lgdi32 -luser32 \
|
||||||
|
-lwinspool
|
||||||
|
|
||||||
|
loopysolver.exe: dsf.o grid.o loopgen.o loopy2.o malloc.o misc.o nullfe.o \
|
||||||
|
penrose.o random.o tree234.o
|
||||||
|
$(CC) $(LDFLAGS) -o $@ -Wl,-Map,loopysolver.map dsf.o grid.o \
|
||||||
|
loopgen.o loopy2.o malloc.o misc.o nullfe.o penrose.o \
|
||||||
|
random.o tree234.o
|
||||||
|
|
||||||
|
magnets.exe: drawing.o laydomino.o magnets.o malloc.o midend.o misc.o \
|
||||||
|
noicon.res.o printing.o random.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,magnets.map drawing.o \
|
||||||
|
laydomino.o magnets.o malloc.o midend.o misc.o noicon.res.o \
|
||||||
|
printing.o random.o version.o windows.o -lcomctl32 \
|
||||||
|
-lcomdlg32 -lgdi32 -luser32 -lwinspool
|
||||||
|
|
||||||
|
magnetssolver.exe: laydomino.o magnets2.o malloc.o misc.o nullfe.o random.o
|
||||||
|
$(CC) $(LDFLAGS) -o $@ -Wl,-Map,magnetssolver.map laydomino.o \
|
||||||
|
magnets2.o malloc.o misc.o nullfe.o random.o
|
||||||
|
|
||||||
|
map.exe: drawing.o dsf.o malloc.o map.o midend.o misc.o noicon.res.o \
|
||||||
|
printing.o random.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,map.map drawing.o dsf.o \
|
||||||
|
malloc.o map.o midend.o misc.o noicon.res.o printing.o \
|
||||||
|
random.o version.o windows.o -lcomctl32 -lcomdlg32 -lgdi32 \
|
||||||
|
-luser32 -lwinspool
|
||||||
|
|
||||||
|
mapsolver.exe: dsf.o malloc.o map2.o misc.o nullfe.o random.o
|
||||||
|
$(CC) $(LDFLAGS) -o $@ -Wl,-Map,mapsolver.map dsf.o malloc.o map2.o \
|
||||||
|
misc.o nullfe.o random.o
|
||||||
|
|
||||||
|
mineobfusc.exe: malloc.o mines2.o misc.o nullfe.o random.o tree234.o
|
||||||
|
$(CC) $(LDFLAGS) -o $@ -Wl,-Map,mineobfusc.map malloc.o mines2.o \
|
||||||
|
misc.o nullfe.o random.o tree234.o
|
||||||
|
|
||||||
|
mines.exe: drawing.o malloc.o midend.o mines.o misc.o noicon.res.o \
|
||||||
|
printing.o random.o tree234.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,mines.map drawing.o \
|
||||||
|
malloc.o midend.o mines.o misc.o noicon.res.o printing.o \
|
||||||
|
random.o tree234.o version.o windows.o -lcomctl32 -lcomdlg32 \
|
||||||
|
-lgdi32 -luser32 -lwinspool
|
||||||
|
|
||||||
|
netgame.exe: drawing.o dsf.o findloop.o malloc.o midend.o misc.o net.o \
|
||||||
|
noicon.res.o printing.o random.o tree234.o version.o \
|
||||||
|
windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,netgame.map drawing.o \
|
||||||
|
dsf.o findloop.o malloc.o midend.o misc.o net.o noicon.res.o \
|
||||||
|
printing.o random.o tree234.o version.o windows.o -lcomctl32 \
|
||||||
|
-lcomdlg32 -lgdi32 -luser32 -lwinspool
|
||||||
|
|
||||||
|
netslide.exe: drawing.o malloc.o midend.o misc.o netslide.o noicon.res.o \
|
||||||
|
printing.o random.o tree234.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,netslide.map drawing.o \
|
||||||
|
malloc.o midend.o misc.o netslide.o noicon.res.o printing.o \
|
||||||
|
random.o tree234.o version.o windows.o -lcomctl32 -lcomdlg32 \
|
||||||
|
-lgdi32 -luser32 -lwinspool
|
||||||
|
|
||||||
|
nullgame.exe: drawing.o malloc.o midend.o misc.o noicon.res.o nullgame.o \
|
||||||
|
printing.o random.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,nullgame.map drawing.o \
|
||||||
|
malloc.o midend.o misc.o noicon.res.o nullgame.o printing.o \
|
||||||
|
random.o version.o windows.o -lcomctl32 -lcomdlg32 -lgdi32 \
|
||||||
|
-luser32 -lwinspool
|
||||||
|
|
||||||
|
palisade.exe: divvy.o drawing.o dsf.o malloc.o midend.o misc.o noicon.res.o \
|
||||||
|
palisade.o printing.o random.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,palisade.map divvy.o \
|
||||||
|
drawing.o dsf.o malloc.o midend.o misc.o noicon.res.o \
|
||||||
|
palisade.o printing.o random.o version.o windows.o \
|
||||||
|
-lcomctl32 -lcomdlg32 -lgdi32 -luser32 -lwinspool
|
||||||
|
|
||||||
|
pattern.exe: drawing.o malloc.o midend.o misc.o noicon.res.o pattern.o \
|
||||||
|
printing.o random.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,pattern.map drawing.o \
|
||||||
|
malloc.o midend.o misc.o noicon.res.o pattern.o printing.o \
|
||||||
|
random.o version.o windows.o -lcomctl32 -lcomdlg32 -lgdi32 \
|
||||||
|
-luser32 -lwinspool
|
||||||
|
|
||||||
|
patternpicture.exe: malloc.o misc.o nullfe.o pattern4.o random.o
|
||||||
|
$(CC) $(LDFLAGS) -o $@ -Wl,-Map,patternpicture.map malloc.o misc.o \
|
||||||
|
nullfe.o pattern4.o random.o
|
||||||
|
|
||||||
|
patternsolver.exe: malloc.o misc.o nullfe.o pattern2.o random.o
|
||||||
|
$(CC) $(LDFLAGS) -o $@ -Wl,-Map,patternsolver.map malloc.o misc.o \
|
||||||
|
nullfe.o pattern2.o random.o
|
||||||
|
|
||||||
|
pearl.exe: drawing.o dsf.o grid.o loopgen.o malloc.o midend.o misc.o pearl.o \
|
||||||
|
penrose.o printing.o random.o tdq.o tree234.o version.o \
|
||||||
|
windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,pearl.map drawing.o dsf.o \
|
||||||
|
grid.o loopgen.o malloc.o midend.o misc.o pearl.o penrose.o \
|
||||||
|
printing.o random.o tdq.o tree234.o version.o windows.o \
|
||||||
|
-lcomctl32 -lcomdlg32 -lgdi32 -luser32 -lwinspool
|
||||||
|
|
||||||
|
pearlbench.exe: dsf.o grid.o loopgen.o malloc.o misc.o nullfe.o pearl2.o \
|
||||||
|
penrose.o random.o tdq.o tree234.o
|
||||||
|
$(CC) $(LDFLAGS) -o $@ -Wl,-Map,pearlbench.map dsf.o grid.o \
|
||||||
|
loopgen.o malloc.o misc.o nullfe.o pearl2.o penrose.o \
|
||||||
|
random.o tdq.o tree234.o
|
||||||
|
|
||||||
|
pegs.exe: drawing.o malloc.o midend.o misc.o noicon.res.o pegs.o printing.o \
|
||||||
|
random.o tree234.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,pegs.map drawing.o \
|
||||||
|
malloc.o midend.o misc.o noicon.res.o pegs.o printing.o \
|
||||||
|
random.o tree234.o version.o windows.o -lcomctl32 -lcomdlg32 \
|
||||||
|
-lgdi32 -luser32 -lwinspool
|
||||||
|
|
||||||
|
puzzles.exe: blackbo3.o bridges3.o combi.o cube3.o divvy.o dominos3.o \
|
||||||
|
drawing.o dsf.o fifteen5.o filling5.o findloop.o flip3.o \
|
||||||
|
flood3.o galaxie7.o grid.o guess3.o inertia3.o keen5.o \
|
||||||
|
latin.o laydomino.o lightup5.o list.o loopgen.o loopy5.o \
|
||||||
|
magnets5.o malloc.o map5.o maxflow.o midend.o mines5.o \
|
||||||
|
misc.o net3.o netslid3.o noicon.res.o palisad3.o pattern7.o \
|
||||||
|
pearl5.o pegs3.o penrose.o printing.o random.o range3.o \
|
||||||
|
rect3.o samegam3.o signpos5.o singles5.o sixteen3.o slant5.o \
|
||||||
|
solo5.o tdq.o tents5.o towers5.o tracks3.o tree234.o \
|
||||||
|
twiddle3.o undead3.o unequal5.o unruly5.o untangl3.o \
|
||||||
|
version.o windows1.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,puzzles.map blackbo3.o \
|
||||||
|
bridges3.o combi.o cube3.o divvy.o dominos3.o drawing.o \
|
||||||
|
dsf.o fifteen5.o filling5.o findloop.o flip3.o flood3.o \
|
||||||
|
galaxie7.o grid.o guess3.o inertia3.o keen5.o latin.o \
|
||||||
|
laydomino.o lightup5.o list.o loopgen.o loopy5.o magnets5.o \
|
||||||
|
malloc.o map5.o maxflow.o midend.o mines5.o misc.o net3.o \
|
||||||
|
netslid3.o noicon.res.o palisad3.o pattern7.o pearl5.o \
|
||||||
|
pegs3.o penrose.o printing.o random.o range3.o rect3.o \
|
||||||
|
samegam3.o signpos5.o singles5.o sixteen3.o slant5.o solo5.o \
|
||||||
|
tdq.o tents5.o towers5.o tracks3.o tree234.o twiddle3.o \
|
||||||
|
undead3.o unequal5.o unruly5.o untangl3.o version.o \
|
||||||
|
windows1.o -lcomctl32 -lcomdlg32 -lgdi32 -luser32 -lwinspool
|
||||||
|
|
||||||
|
range.exe: drawing.o dsf.o malloc.o midend.o misc.o noicon.res.o printing.o \
|
||||||
|
random.o range.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,range.map drawing.o dsf.o \
|
||||||
|
malloc.o midend.o misc.o noicon.res.o printing.o random.o \
|
||||||
|
range.o version.o windows.o -lcomctl32 -lcomdlg32 -lgdi32 \
|
||||||
|
-luser32 -lwinspool
|
||||||
|
|
||||||
|
rect.exe: drawing.o malloc.o midend.o misc.o noicon.res.o printing.o \
|
||||||
|
random.o rect.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,rect.map drawing.o \
|
||||||
|
malloc.o midend.o misc.o noicon.res.o printing.o random.o \
|
||||||
|
rect.o version.o windows.o -lcomctl32 -lcomdlg32 -lgdi32 \
|
||||||
|
-luser32 -lwinspool
|
||||||
|
|
||||||
|
samegame.exe: drawing.o malloc.o midend.o misc.o noicon.res.o printing.o \
|
||||||
|
random.o samegame.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,samegame.map drawing.o \
|
||||||
|
malloc.o midend.o misc.o noicon.res.o printing.o random.o \
|
||||||
|
samegame.o version.o windows.o -lcomctl32 -lcomdlg32 -lgdi32 \
|
||||||
|
-luser32 -lwinspool
|
||||||
|
|
||||||
|
signpost.exe: drawing.o dsf.o malloc.o midend.o misc.o noicon.res.o \
|
||||||
|
printing.o random.o signpost.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,signpost.map drawing.o \
|
||||||
|
dsf.o malloc.o midend.o misc.o noicon.res.o printing.o \
|
||||||
|
random.o signpost.o version.o windows.o -lcomctl32 \
|
||||||
|
-lcomdlg32 -lgdi32 -luser32 -lwinspool
|
||||||
|
|
||||||
|
signpostsolver.exe: dsf.o malloc.o misc.o nullfe.o random.o signpos2.o
|
||||||
|
$(CC) $(LDFLAGS) -o $@ -Wl,-Map,signpostsolver.map dsf.o malloc.o \
|
||||||
|
misc.o nullfe.o random.o signpos2.o
|
||||||
|
|
||||||
|
singles.exe: drawing.o dsf.o latin.o malloc.o maxflow.o midend.o misc.o \
|
||||||
|
noicon.res.o printing.o random.o singles.o tree234.o \
|
||||||
|
version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,singles.map drawing.o \
|
||||||
|
dsf.o latin.o malloc.o maxflow.o midend.o misc.o \
|
||||||
|
noicon.res.o printing.o random.o singles.o tree234.o \
|
||||||
|
version.o windows.o -lcomctl32 -lcomdlg32 -lgdi32 -luser32 \
|
||||||
|
-lwinspool
|
||||||
|
|
||||||
|
singlessolver.exe: dsf.o latin.o malloc.o maxflow.o misc.o nullfe.o random.o \
|
||||||
|
singles3.o tree234.o
|
||||||
|
$(CC) $(LDFLAGS) -o $@ -Wl,-Map,singlessolver.map dsf.o latin.o \
|
||||||
|
malloc.o maxflow.o misc.o nullfe.o random.o singles3.o \
|
||||||
|
tree234.o
|
||||||
|
|
||||||
|
sixteen.exe: drawing.o malloc.o midend.o misc.o noicon.res.o printing.o \
|
||||||
|
random.o sixteen.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,sixteen.map drawing.o \
|
||||||
|
malloc.o midend.o misc.o noicon.res.o printing.o random.o \
|
||||||
|
sixteen.o version.o windows.o -lcomctl32 -lcomdlg32 -lgdi32 \
|
||||||
|
-luser32 -lwinspool
|
||||||
|
|
||||||
|
slant.exe: drawing.o dsf.o findloop.o malloc.o midend.o misc.o noicon.res.o \
|
||||||
|
printing.o random.o slant.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,slant.map drawing.o dsf.o \
|
||||||
|
findloop.o malloc.o midend.o misc.o noicon.res.o printing.o \
|
||||||
|
random.o slant.o version.o windows.o -lcomctl32 -lcomdlg32 \
|
||||||
|
-lgdi32 -luser32 -lwinspool
|
||||||
|
|
||||||
|
slantsolver.exe: dsf.o findloop.o malloc.o misc.o nullfe.o random.o slant2.o
|
||||||
|
$(CC) $(LDFLAGS) -o $@ -Wl,-Map,slantsolver.map dsf.o findloop.o \
|
||||||
|
malloc.o misc.o nullfe.o random.o slant2.o
|
||||||
|
|
||||||
|
solo.exe: divvy.o drawing.o dsf.o malloc.o midend.o misc.o noicon.res.o \
|
||||||
|
printing.o random.o solo.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,solo.map divvy.o drawing.o \
|
||||||
|
dsf.o malloc.o midend.o misc.o noicon.res.o printing.o \
|
||||||
|
random.o solo.o version.o windows.o -lcomctl32 -lcomdlg32 \
|
||||||
|
-lgdi32 -luser32 -lwinspool
|
||||||
|
|
||||||
|
solosolver.exe: divvy.o dsf.o malloc.o misc.o nullfe.o random.o solo2.o
|
||||||
|
$(CC) $(LDFLAGS) -o $@ -Wl,-Map,solosolver.map divvy.o dsf.o \
|
||||||
|
malloc.o misc.o nullfe.o random.o solo2.o
|
||||||
|
|
||||||
|
tents.exe: drawing.o dsf.o malloc.o maxflow.o midend.o misc.o noicon.res.o \
|
||||||
|
printing.o random.o tents.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,tents.map drawing.o dsf.o \
|
||||||
|
malloc.o maxflow.o midend.o misc.o noicon.res.o printing.o \
|
||||||
|
random.o tents.o version.o windows.o -lcomctl32 -lcomdlg32 \
|
||||||
|
-lgdi32 -luser32 -lwinspool
|
||||||
|
|
||||||
|
tentssolver.exe: dsf.o malloc.o maxflow.o misc.o nullfe.o random.o tents3.o
|
||||||
|
$(CC) $(LDFLAGS) -o $@ -Wl,-Map,tentssolver.map dsf.o malloc.o \
|
||||||
|
maxflow.o misc.o nullfe.o random.o tents3.o
|
||||||
|
|
||||||
|
towers.exe: drawing.o latin.o malloc.o maxflow.o midend.o misc.o \
|
||||||
|
noicon.res.o printing.o random.o towers.o tree234.o \
|
||||||
|
version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,towers.map drawing.o \
|
||||||
|
latin.o malloc.o maxflow.o midend.o misc.o noicon.res.o \
|
||||||
|
printing.o random.o towers.o tree234.o version.o windows.o \
|
||||||
|
-lcomctl32 -lcomdlg32 -lgdi32 -luser32 -lwinspool
|
||||||
|
|
||||||
|
towerssolver.exe: latin6.o malloc.o maxflow.o misc.o nullfe.o random.o \
|
||||||
|
towers2.o tree234.o
|
||||||
|
$(CC) $(LDFLAGS) -o $@ -Wl,-Map,towerssolver.map latin6.o malloc.o \
|
||||||
|
maxflow.o misc.o nullfe.o random.o towers2.o tree234.o
|
||||||
|
|
||||||
|
tracks.exe: drawing.o dsf.o findloop.o malloc.o midend.o misc.o noicon.res.o \
|
||||||
|
printing.o random.o tracks.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,tracks.map drawing.o dsf.o \
|
||||||
|
findloop.o malloc.o midend.o misc.o noicon.res.o printing.o \
|
||||||
|
random.o tracks.o version.o windows.o -lcomctl32 -lcomdlg32 \
|
||||||
|
-lgdi32 -luser32 -lwinspool
|
||||||
|
|
||||||
|
twiddle.exe: drawing.o malloc.o midend.o misc.o noicon.res.o printing.o \
|
||||||
|
random.o twiddle.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,twiddle.map drawing.o \
|
||||||
|
malloc.o midend.o misc.o noicon.res.o printing.o random.o \
|
||||||
|
twiddle.o version.o windows.o -lcomctl32 -lcomdlg32 -lgdi32 \
|
||||||
|
-luser32 -lwinspool
|
||||||
|
|
||||||
|
undead.exe: drawing.o malloc.o midend.o misc.o noicon.res.o printing.o \
|
||||||
|
random.o undead.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,undead.map drawing.o \
|
||||||
|
malloc.o midend.o misc.o noicon.res.o printing.o random.o \
|
||||||
|
undead.o version.o windows.o -lcomctl32 -lcomdlg32 -lgdi32 \
|
||||||
|
-luser32 -lwinspool
|
||||||
|
|
||||||
|
unequal.exe: drawing.o latin.o malloc.o maxflow.o midend.o misc.o \
|
||||||
|
noicon.res.o printing.o random.o tree234.o unequal.o \
|
||||||
|
version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,unequal.map drawing.o \
|
||||||
|
latin.o malloc.o maxflow.o midend.o misc.o noicon.res.o \
|
||||||
|
printing.o random.o tree234.o unequal.o version.o windows.o \
|
||||||
|
-lcomctl32 -lcomdlg32 -lgdi32 -luser32 -lwinspool
|
||||||
|
|
||||||
|
unequalsolver.exe: latin6.o malloc.o maxflow.o misc.o nullfe.o random.o \
|
||||||
|
tree234.o unequal2.o
|
||||||
|
$(CC) $(LDFLAGS) -o $@ -Wl,-Map,unequalsolver.map latin6.o malloc.o \
|
||||||
|
maxflow.o misc.o nullfe.o random.o tree234.o unequal2.o
|
||||||
|
|
||||||
|
unruly.exe: drawing.o malloc.o midend.o misc.o noicon.res.o printing.o \
|
||||||
|
random.o unruly.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,unruly.map drawing.o \
|
||||||
|
malloc.o midend.o misc.o noicon.res.o printing.o random.o \
|
||||||
|
unruly.o version.o windows.o -lcomctl32 -lcomdlg32 -lgdi32 \
|
||||||
|
-luser32 -lwinspool
|
||||||
|
|
||||||
|
unrulysolver.exe: malloc.o misc.o nullfe.o random.o unruly2.o
|
||||||
|
$(CC) $(LDFLAGS) -o $@ -Wl,-Map,unrulysolver.map malloc.o misc.o \
|
||||||
|
nullfe.o random.o unruly2.o
|
||||||
|
|
||||||
|
untangle.exe: drawing.o malloc.o midend.o misc.o noicon.res.o printing.o \
|
||||||
|
random.o tree234.o untangle.o version.o windows.o
|
||||||
|
$(CC) -mwindows $(LDFLAGS) -o $@ -Wl,-Map,untangle.map drawing.o \
|
||||||
|
malloc.o midend.o misc.o noicon.res.o printing.o random.o \
|
||||||
|
tree234.o untangle.o version.o windows.o -lcomctl32 \
|
||||||
|
-lcomdlg32 -lgdi32 -luser32 -lwinspool
|
||||||
|
|
||||||
|
blackbox.o: ./blackbox.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
blackbo3.o: ./blackbox.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
bridges.o: ./bridges.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
bridges3.o: ./bridges.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
combi.o: ./combi.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
cube.o: ./cube.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
cube3.o: ./cube.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
divvy.o: ./divvy.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
dominosa.o: ./dominosa.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
dominos3.o: ./dominosa.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
drawing.o: ./drawing.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
dsf.o: ./dsf.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
fifteen.o: ./fifteen.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
fifteen5.o: ./fifteen.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
fifteen2.o: ./fifteen.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
filling.o: ./filling.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
filling5.o: ./filling.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
filling2.o: ./filling.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
findloop.o: ./findloop.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
flip.o: ./flip.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
flip3.o: ./flip.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
flood.o: ./flood.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
flood3.o: ./flood.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
galaxies.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
galaxie7.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
galaxie4.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_PICTURE_GENERATOR -c $< -o $@
|
||||||
|
galaxie2.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
grid.o: ./grid.c ./puzzles.h ./tree234.h ./grid.h ./penrose.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
gtk.o: ./gtk.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
guess.o: ./guess.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
guess3.o: ./guess.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
inertia.o: ./inertia.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
inertia3.o: ./inertia.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
keen.o: ./keen.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
keen5.o: ./keen.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
keen2.o: ./keen.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
latin.o: ./latin.c ./puzzles.h ./tree234.h ./maxflow.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
latin8.o: ./latin.c ./puzzles.h ./tree234.h ./maxflow.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_LATIN_TEST -c $< -o $@
|
||||||
|
latin6.o: ./latin.c ./puzzles.h ./tree234.h ./maxflow.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
laydomino.o: ./laydomino.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
lightup.o: ./lightup.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
lightup5.o: ./lightup.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
lightup2.o: ./lightup.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
list.o: ./list.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
loopgen.o: ./loopgen.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
loopy.o: ./loopy.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
loopy5.o: ./loopy.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
loopy2.o: ./loopy.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
magnets.o: ./magnets.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
magnets5.o: ./magnets.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
magnets2.o: ./magnets.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
malloc.o: ./malloc.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
map.o: ./map.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
map5.o: ./map.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
map2.o: ./map.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
maxflow.o: ./maxflow.c ./maxflow.h ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
midend.o: ./midend.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
mines.o: ./mines.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
mines5.o: ./mines.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
mines2.o: ./mines.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_OBFUSCATOR -c $< -o $@
|
||||||
|
misc.o: ./misc.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
net.o: ./net.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
net3.o: ./net.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
netslide.o: ./netslide.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
netslid3.o: ./netslide.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
no-icon.o: ./no-icon.c
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
noicon.res.o: ./noicon.rc ./puzzles.rc2 ./resource.h
|
||||||
|
$(RC) $(FWHACK) $(RCFL) $(RCFLAGS) $< $@
|
||||||
|
nullfe.o: ./nullfe.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
nullgame.o: ./nullgame.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
obfusc.o: ./obfusc.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
osx.o: ./osx.m ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
palisade.o: ./palisade.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
palisad3.o: ./palisade.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
pattern.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
pattern7.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
pattern4.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_PICTURE_GENERATOR -c $< -o $@
|
||||||
|
pattern2.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
pearl.o: ./pearl.c ./puzzles.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
pearl5.o: ./pearl.c ./puzzles.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
pearl2.o: ./pearl.c ./puzzles.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
pegs.o: ./pegs.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
pegs3.o: ./pegs.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
penrose.o: ./penrose.c ./puzzles.h ./penrose.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
printing.o: ./printing.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
ps.o: ./ps.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
random.o: ./random.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
range.o: ./range.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
range3.o: ./range.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
rect.o: ./rect.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
rect3.o: ./rect.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
samegame.o: ./samegame.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
samegam3.o: ./samegame.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
signpost.o: ./signpost.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
signpos5.o: ./signpost.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
signpos2.o: ./signpost.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
singles.o: ./singles.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
singles5.o: ./singles.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
singles3.o: ./singles.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
sixteen.o: ./sixteen.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
sixteen3.o: ./sixteen.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
slant.o: ./slant.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
slant5.o: ./slant.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
slant2.o: ./slant.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
solo.o: ./solo.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
solo5.o: ./solo.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
solo2.o: ./solo.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
tdq.o: ./tdq.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
tents.o: ./tents.c ./puzzles.h ./maxflow.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
tents5.o: ./tents.c ./puzzles.h ./maxflow.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
tents3.o: ./tents.c ./puzzles.h ./maxflow.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
towers.o: ./towers.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
towers5.o: ./towers.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
towers2.o: ./towers.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
tracks.o: ./tracks.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
tracks3.o: ./tracks.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
tree234.o: ./tree234.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
twiddle.o: ./twiddle.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
twiddle3.o: ./twiddle.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
undead.o: ./undead.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
undead3.o: ./undead.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
unequal.o: ./unequal.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
unequal5.o: ./unequal.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
unequal2.o: ./unequal.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
unruly.o: ./unruly.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
unruly5.o: ./unruly.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
unruly2.o: ./unruly.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
untangle.o: ./untangle.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
untangl3.o: ./untangle.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
version.o: ./version.c ./version.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
windows.o: ./windows.c ./puzzles.h ./resource.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
windows1.o: ./windows.c ./puzzles.h ./resource.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f *.o *.exe *.res.o *.map
|
||||||
|
|
17
apps/plugins/puzzles/src/Makefile.doc
Normal file
17
apps/plugins/puzzles/src/Makefile.doc
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
all: puzzles.hlp puzzles.txt HACKING
|
||||||
|
|
||||||
|
preprocessed.but: puzzles.but
|
||||||
|
sed 's/PREFIX-/$(BINPREFIX)/g' puzzles.but > preprocessed.but
|
||||||
|
|
||||||
|
puzzles.hlp puzzles.txt: preprocessed.but
|
||||||
|
halibut --winhelp=puzzles.hlp --text=puzzles.txt preprocessed.but
|
||||||
|
|
||||||
|
HACKING: devel.but
|
||||||
|
halibut --text=HACKING devel.but
|
||||||
|
|
||||||
|
chm: puzzles.hhp
|
||||||
|
puzzles.hhp: puzzles.but chm.but
|
||||||
|
halibut --html puzzles.but chm.but
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f puzzles.hlp puzzles.txt preprocessed.but HACKING *.html *.hh[pck]
|
497
apps/plugins/puzzles/src/Makefile.emcc
Normal file
497
apps/plugins/puzzles/src/Makefile.emcc
Normal file
|
@ -0,0 +1,497 @@
|
||||||
|
# Makefile for puzzles using Emscripten. Requires GNU make.
|
||||||
|
#
|
||||||
|
# This file was created by `mkfiles.pl' from the `Recipe' file.
|
||||||
|
# DO NOT EDIT THIS FILE DIRECTLY; edit Recipe or mkfiles.pl instead.
|
||||||
|
|
||||||
|
# This can be set on the command line to point at the emcc command,
|
||||||
|
# if it is not on your PATH.
|
||||||
|
EMCC = emcc
|
||||||
|
|
||||||
|
CFLAGS = -DSLOW_SYSTEM -I./ -Iicons/
|
||||||
|
|
||||||
|
all: $(OUTPREFIX)blackbox.js $(OUTPREFIX)bridges.js $(OUTPREFIX)cube.js \
|
||||||
|
$(OUTPREFIX)dominosa.js $(OUTPREFIX)fifteen.js \
|
||||||
|
$(OUTPREFIX)filling.js $(OUTPREFIX)flip.js \
|
||||||
|
$(OUTPREFIX)flood.js $(OUTPREFIX)galaxies.js \
|
||||||
|
$(OUTPREFIX)guess.js $(OUTPREFIX)inertia.js \
|
||||||
|
$(OUTPREFIX)keen.js $(OUTPREFIX)lightup.js \
|
||||||
|
$(OUTPREFIX)loopy.js $(OUTPREFIX)magnets.js \
|
||||||
|
$(OUTPREFIX)map.js $(OUTPREFIX)mines.js $(OUTPREFIX)net.js \
|
||||||
|
$(OUTPREFIX)netslide.js $(OUTPREFIX)nullgame.js \
|
||||||
|
$(OUTPREFIX)palisade.js $(OUTPREFIX)pattern.js \
|
||||||
|
$(OUTPREFIX)pearl.js $(OUTPREFIX)pegs.js \
|
||||||
|
$(OUTPREFIX)range.js $(OUTPREFIX)rect.js \
|
||||||
|
$(OUTPREFIX)samegame.js $(OUTPREFIX)signpost.js \
|
||||||
|
$(OUTPREFIX)singles.js $(OUTPREFIX)sixteen.js \
|
||||||
|
$(OUTPREFIX)slant.js $(OUTPREFIX)solo.js \
|
||||||
|
$(OUTPREFIX)tents.js $(OUTPREFIX)towers.js \
|
||||||
|
$(OUTPREFIX)tracks.js $(OUTPREFIX)twiddle.js \
|
||||||
|
$(OUTPREFIX)undead.js $(OUTPREFIX)unequal.js \
|
||||||
|
$(OUTPREFIX)unruly.js $(OUTPREFIX)untangle.js
|
||||||
|
|
||||||
|
$(OUTPREFIX)blackbox.js: blackbox.o drawing.o emcc.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)blackbox.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" blackbox.o drawing.o emcc.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)bridges.js: bridges.o drawing.o dsf.o findloop.o emcc.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)bridges.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" bridges.o drawing.o dsf.o findloop.o emcc.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)cube.js: cube.o drawing.o emcc.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o emccpre.js \
|
||||||
|
emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)cube.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" cube.o drawing.o emcc.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)dominosa.js: dominosa.o drawing.o emcc.o laydomino.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)dominosa.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" dominosa.o drawing.o emcc.o laydomino.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)fifteen.js: drawing.o fifteen.o emcc.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o emccpre.js \
|
||||||
|
emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)fifteen.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o fifteen.o emcc.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)filling.js: drawing.o dsf.o filling.o emcc.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)filling.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o dsf.o filling.o emcc.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)flip.js: drawing.o flip.o emcc.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o tree234.o version.o \
|
||||||
|
emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)flip.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o flip.o emcc.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o tree234.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)flood.js: drawing.o flood.o emcc.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o emccpre.js \
|
||||||
|
emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)flood.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o flood.o emcc.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)galaxies.js: drawing.o dsf.o galaxies.o emcc.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)galaxies.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o dsf.o galaxies.o emcc.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)guess.js: drawing.o emcc.o guess.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o emccpre.js \
|
||||||
|
emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)guess.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o emcc.o guess.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)inertia.js: drawing.o emcc.o inertia.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o emccpre.js \
|
||||||
|
emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)inertia.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o emcc.o inertia.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)keen.js: drawing.o dsf.o emcc.o keen.o latin.o malloc.o \
|
||||||
|
maxflow.o midend.o misc.o no-icon.o printing.o ps.o random.o \
|
||||||
|
tree234.o version.o emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)keen.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o dsf.o emcc.o keen.o latin.o malloc.o maxflow.o midend.o misc.o no-icon.o printing.o ps.o random.o tree234.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)lightup.js: combi.o drawing.o emcc.o lightup.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)lightup.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" combi.o drawing.o emcc.o lightup.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)loopy.js: drawing.o dsf.o grid.o emcc.o loopgen.o loopy.o \
|
||||||
|
malloc.o midend.o misc.o no-icon.o penrose.o printing.o ps.o \
|
||||||
|
random.o tree234.o version.o emccpre.js emcclib.js \
|
||||||
|
emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)loopy.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o dsf.o grid.o emcc.o loopgen.o loopy.o malloc.o midend.o misc.o no-icon.o penrose.o printing.o ps.o random.o tree234.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)magnets.js: drawing.o emcc.o laydomino.o magnets.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)magnets.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o emcc.o laydomino.o magnets.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)map.js: drawing.o dsf.o emcc.o malloc.o map.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o emccpre.js \
|
||||||
|
emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)map.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o dsf.o emcc.o malloc.o map.o midend.o misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)mines.js: drawing.o emcc.o malloc.o midend.o mines.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o tree234.o version.o \
|
||||||
|
emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)mines.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o emcc.o malloc.o midend.o mines.o misc.o no-icon.o printing.o ps.o random.o tree234.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)net.js: drawing.o dsf.o findloop.o emcc.o malloc.o midend.o \
|
||||||
|
misc.o net.o no-icon.o printing.o ps.o random.o tree234.o \
|
||||||
|
version.o emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)net.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o dsf.o findloop.o emcc.o malloc.o midend.o misc.o net.o no-icon.o printing.o ps.o random.o tree234.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)netslide.js: drawing.o emcc.o malloc.o midend.o misc.o \
|
||||||
|
netslide.o no-icon.o printing.o ps.o random.o tree234.o \
|
||||||
|
version.o emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)netslide.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o emcc.o malloc.o midend.o misc.o netslide.o no-icon.o printing.o ps.o random.o tree234.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)nullgame.js: drawing.o emcc.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
nullgame.o printing.o ps.o random.o version.o emccpre.js \
|
||||||
|
emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)nullgame.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o emcc.o malloc.o midend.o misc.o no-icon.o nullgame.o printing.o ps.o random.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)palisade.js: divvy.o drawing.o dsf.o emcc.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o palisade.o printing.o ps.o random.o \
|
||||||
|
version.o emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)palisade.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" divvy.o drawing.o dsf.o emcc.o malloc.o midend.o misc.o no-icon.o palisade.o printing.o ps.o random.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)pattern.js: drawing.o emcc.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
pattern.o printing.o ps.o random.o version.o emccpre.js \
|
||||||
|
emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)pattern.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o emcc.o malloc.o midend.o misc.o no-icon.o pattern.o printing.o ps.o random.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)pearl.js: drawing.o dsf.o grid.o emcc.o loopgen.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o pearl.o penrose.o printing.o ps.o \
|
||||||
|
random.o tdq.o tree234.o version.o emccpre.js emcclib.js \
|
||||||
|
emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)pearl.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o dsf.o grid.o emcc.o loopgen.o malloc.o midend.o misc.o no-icon.o pearl.o penrose.o printing.o ps.o random.o tdq.o tree234.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)pegs.js: drawing.o emcc.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
pegs.o printing.o ps.o random.o tree234.o version.o \
|
||||||
|
emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)pegs.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o emcc.o malloc.o midend.o misc.o no-icon.o pegs.o printing.o ps.o random.o tree234.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)range.js: drawing.o dsf.o emcc.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o range.o version.o \
|
||||||
|
emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)range.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o dsf.o emcc.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o range.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)rect.js: drawing.o emcc.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o rect.o version.o emccpre.js \
|
||||||
|
emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)rect.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o emcc.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o rect.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)samegame.js: drawing.o emcc.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o samegame.o version.o emccpre.js \
|
||||||
|
emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)samegame.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o emcc.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o samegame.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)signpost.js: drawing.o dsf.o emcc.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o signpost.o version.o \
|
||||||
|
emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)signpost.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o dsf.o emcc.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o signpost.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)singles.js: drawing.o dsf.o emcc.o latin.o malloc.o maxflow.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o singles.o \
|
||||||
|
tree234.o version.o emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)singles.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o dsf.o emcc.o latin.o malloc.o maxflow.o midend.o misc.o no-icon.o printing.o ps.o random.o singles.o tree234.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)sixteen.js: drawing.o emcc.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o sixteen.o version.o emccpre.js \
|
||||||
|
emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)sixteen.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o emcc.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o sixteen.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)slant.js: drawing.o dsf.o findloop.o emcc.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o slant.o version.o \
|
||||||
|
emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)slant.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o dsf.o findloop.o emcc.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o slant.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)solo.js: divvy.o drawing.o dsf.o emcc.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o solo.o version.o \
|
||||||
|
emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)solo.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" divvy.o drawing.o dsf.o emcc.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o solo.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)tents.js: drawing.o dsf.o emcc.o malloc.o maxflow.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o tents.o version.o \
|
||||||
|
emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)tents.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o dsf.o emcc.o malloc.o maxflow.o midend.o misc.o no-icon.o printing.o ps.o random.o tents.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)towers.js: drawing.o emcc.o latin.o malloc.o maxflow.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o towers.o tree234.o \
|
||||||
|
version.o emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)towers.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o emcc.o latin.o malloc.o maxflow.o midend.o misc.o no-icon.o printing.o ps.o random.o towers.o tree234.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)tracks.js: drawing.o dsf.o findloop.o emcc.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o tracks.o version.o \
|
||||||
|
emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)tracks.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o dsf.o findloop.o emcc.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o tracks.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)twiddle.js: drawing.o emcc.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o twiddle.o version.o emccpre.js \
|
||||||
|
emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)twiddle.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o emcc.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o twiddle.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)undead.js: drawing.o emcc.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o undead.o version.o emccpre.js \
|
||||||
|
emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)undead.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o emcc.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o undead.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)unequal.js: drawing.o emcc.o latin.o malloc.o maxflow.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o tree234.o \
|
||||||
|
unequal.o version.o emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)unequal.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o emcc.o latin.o malloc.o maxflow.o midend.o misc.o no-icon.o printing.o ps.o random.o tree234.o unequal.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)unruly.js: drawing.o emcc.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o unruly.o version.o emccpre.js \
|
||||||
|
emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)unruly.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o emcc.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o unruly.o version.o
|
||||||
|
|
||||||
|
$(OUTPREFIX)untangle.js: drawing.o emcc.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o tree234.o untangle.o version.o \
|
||||||
|
emccpre.js emcclib.js emccx.json
|
||||||
|
$(EMCC) -o $(OUTPREFIX)untangle.js -O2 -s ASM_JS=1 --pre-js emccpre.js --js-library emcclib.js -s EXPORTED_FUNCTIONS="`sed 's://.*::' emccx.json | tr -d ' \n'`" drawing.o emcc.o malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o tree234.o untangle.o version.o
|
||||||
|
|
||||||
|
blackbox.o: ./blackbox.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
blackbo3.o: ./blackbox.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
bridges.o: ./bridges.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
bridges3.o: ./bridges.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
combi.o: ./combi.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
cube.o: ./cube.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
cube3.o: ./cube.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
divvy.o: ./divvy.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
dominosa.o: ./dominosa.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
dominos3.o: ./dominosa.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
drawing.o: ./drawing.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
dsf.o: ./dsf.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
fifteen.o: ./fifteen.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
fifteen5.o: ./fifteen.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
fifteen2.o: ./fifteen.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
filling.o: ./filling.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
filling5.o: ./filling.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
filling2.o: ./filling.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
findloop.o: ./findloop.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
flip.o: ./flip.c ./puzzles.h ./tree234.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
flip3.o: ./flip.c ./puzzles.h ./tree234.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
flood.o: ./flood.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
flood3.o: ./flood.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
galaxies.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
galaxie7.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
galaxie4.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_PICTURE_GENERATOR -c $< -o $@
|
||||||
|
galaxie2.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
grid.o: ./grid.c ./puzzles.h ./tree234.h ./grid.h ./penrose.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
emcc.o: ./emcc.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
guess.o: ./guess.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
guess3.o: ./guess.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
inertia.o: ./inertia.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
inertia3.o: ./inertia.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
keen.o: ./keen.c ./puzzles.h ./latin.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
keen5.o: ./keen.c ./puzzles.h ./latin.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
keen2.o: ./keen.c ./puzzles.h ./latin.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
latin.o: ./latin.c ./puzzles.h ./tree234.h ./maxflow.h ./latin.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
latin8.o: ./latin.c ./puzzles.h ./tree234.h ./maxflow.h ./latin.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_LATIN_TEST -c $< -o $@
|
||||||
|
latin6.o: ./latin.c ./puzzles.h ./tree234.h ./maxflow.h ./latin.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
laydomino.o: ./laydomino.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
lightup.o: ./lightup.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
lightup5.o: ./lightup.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
lightup2.o: ./lightup.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
list.o: ./list.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
loopgen.o: ./loopgen.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
loopy.o: ./loopy.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
loopy5.o: ./loopy.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
loopy2.o: ./loopy.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
magnets.o: ./magnets.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
magnets5.o: ./magnets.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
magnets2.o: ./magnets.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
malloc.o: ./malloc.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
map.o: ./map.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
map5.o: ./map.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
map2.o: ./map.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
maxflow.o: ./maxflow.c ./maxflow.h ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
midend.o: ./midend.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
mines.o: ./mines.c ./tree234.h ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
mines5.o: ./mines.c ./tree234.h ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
mines2.o: ./mines.c ./tree234.h ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_OBFUSCATOR -c $< -o $@
|
||||||
|
misc.o: ./misc.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
net.o: ./net.c ./puzzles.h ./tree234.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
net3.o: ./net.c ./puzzles.h ./tree234.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
netslide.o: ./netslide.c ./puzzles.h ./tree234.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
netslid3.o: ./netslide.c ./puzzles.h ./tree234.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
no-icon.o: ./no-icon.c
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
nullfe.o: ./nullfe.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
nullgame.o: ./nullgame.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
obfusc.o: ./obfusc.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
osx.o: ./osx.m ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
palisade.o: ./palisade.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
palisad3.o: ./palisade.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
pattern.o: ./pattern.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
pattern7.o: ./pattern.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
pattern4.o: ./pattern.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_PICTURE_GENERATOR -c $< -o $@
|
||||||
|
pattern2.o: ./pattern.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
pearl.o: ./pearl.c ./puzzles.h ./grid.h ./loopgen.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
pearl5.o: ./pearl.c ./puzzles.h ./grid.h ./loopgen.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
pearl2.o: ./pearl.c ./puzzles.h ./grid.h ./loopgen.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
pegs.o: ./pegs.c ./puzzles.h ./tree234.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
pegs3.o: ./pegs.c ./puzzles.h ./tree234.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
penrose.o: ./penrose.c ./puzzles.h ./penrose.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
printing.o: ./printing.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
ps.o: ./ps.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
random.o: ./random.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
range.o: ./range.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
range3.o: ./range.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
rect.o: ./rect.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
rect3.o: ./rect.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
samegame.o: ./samegame.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
samegam3.o: ./samegame.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
signpost.o: ./signpost.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
signpos5.o: ./signpost.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
signpos2.o: ./signpost.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
singles.o: ./singles.c ./puzzles.h ./latin.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
singles5.o: ./singles.c ./puzzles.h ./latin.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
singles3.o: ./singles.c ./puzzles.h ./latin.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
sixteen.o: ./sixteen.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
sixteen3.o: ./sixteen.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
slant.o: ./slant.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
slant5.o: ./slant.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
slant2.o: ./slant.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
solo.o: ./solo.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
solo5.o: ./solo.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
solo2.o: ./solo.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
tdq.o: ./tdq.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
tents.o: ./tents.c ./puzzles.h ./maxflow.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
tents5.o: ./tents.c ./puzzles.h ./maxflow.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
tents3.o: ./tents.c ./puzzles.h ./maxflow.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
towers.o: ./towers.c ./puzzles.h ./latin.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
towers5.o: ./towers.c ./puzzles.h ./latin.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
towers2.o: ./towers.c ./puzzles.h ./latin.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
tracks.o: ./tracks.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
tracks3.o: ./tracks.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
tree234.o: ./tree234.c ./tree234.h ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
twiddle.o: ./twiddle.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
twiddle3.o: ./twiddle.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
undead.o: ./undead.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
undead3.o: ./undead.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
unequal.o: ./unequal.c ./puzzles.h ./latin.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
unequal5.o: ./unequal.c ./puzzles.h ./latin.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
unequal2.o: ./unequal.c ./puzzles.h ./latin.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
unruly.o: ./unruly.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
unruly5.o: ./unruly.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
unruly2.o: ./unruly.c ./puzzles.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
untangle.o: ./untangle.c ./puzzles.h ./tree234.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
untangl3.o: ./untangle.c ./puzzles.h ./tree234.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
version.o: ./version.c ./version.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
windows.o: ./windows.c ./puzzles.h ./resource.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
windows1.o: ./windows.c ./puzzles.h ./resource.h
|
||||||
|
$(EMCC) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -rf *.o $(OUTPREFIX)blackbox.js $(OUTPREFIX)bridges.js $(OUTPREFIX)cube.js $(OUTPREFIX)dominosa.js $(OUTPREFIX)fifteen.js $(OUTPREFIX)filling.js $(OUTPREFIX)flip.js $(OUTPREFIX)flood.js $(OUTPREFIX)galaxies.js $(OUTPREFIX)guess.js $(OUTPREFIX)inertia.js $(OUTPREFIX)keen.js $(OUTPREFIX)lightup.js $(OUTPREFIX)loopy.js $(OUTPREFIX)magnets.js $(OUTPREFIX)map.js $(OUTPREFIX)mines.js $(OUTPREFIX)net.js $(OUTPREFIX)netslide.js $(OUTPREFIX)nullgame.js $(OUTPREFIX)palisade.js $(OUTPREFIX)pattern.js $(OUTPREFIX)pearl.js $(OUTPREFIX)pegs.js $(OUTPREFIX)range.js $(OUTPREFIX)rect.js $(OUTPREFIX)samegame.js $(OUTPREFIX)signpost.js $(OUTPREFIX)singles.js $(OUTPREFIX)sixteen.js $(OUTPREFIX)slant.js $(OUTPREFIX)solo.js $(OUTPREFIX)tents.js $(OUTPREFIX)towers.js $(OUTPREFIX)tracks.js $(OUTPREFIX)twiddle.js $(OUTPREFIX)undead.js $(OUTPREFIX)unequal.js $(OUTPREFIX)unruly.js $(OUTPREFIX)untangle.js
|
412
apps/plugins/puzzles/src/Makefile.gnustep
Normal file
412
apps/plugins/puzzles/src/Makefile.gnustep
Normal file
|
@ -0,0 +1,412 @@
|
||||||
|
# Makefile for puzzles under GNUstep.
|
||||||
|
#
|
||||||
|
# This file was created by `mkfiles.pl' from the `Recipe' file.
|
||||||
|
# DO NOT EDIT THIS FILE DIRECTLY; edit Recipe or mkfiles.pl instead.
|
||||||
|
NEEDS_GUI=yes
|
||||||
|
include $(GNUSTEP_MAKEFILES)/common.make
|
||||||
|
include $(GNUSTEP_MAKEFILES)/rules.make
|
||||||
|
include $(GNUSTEP_MAKEFILES)/Instance/rules.make
|
||||||
|
|
||||||
|
all:: Puzzles fifteensolver fillingsolver galaxiespicture galaxiessolver \
|
||||||
|
keensolver latincheck lightupsolver loopysolver \
|
||||||
|
magnetssolver mapsolver mineobfusc obfusc patternpicture \
|
||||||
|
patternsolver pearlbench signpostsolver singlessolver \
|
||||||
|
slantsolver solosolver tentssolver towerssolver \
|
||||||
|
unequalsolver unrulysolver
|
||||||
|
|
||||||
|
.SUFFIXES: .o .c .m
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Puzzles.app:
|
||||||
|
mkdir -p $@
|
||||||
|
Puzzles.app/Resources: Puzzles.app
|
||||||
|
mkdir -p $@
|
||||||
|
Puzzles.app/Resources/Puzzles.icns: Puzzles.app/Resources osx.icns
|
||||||
|
cp osx.icns $@
|
||||||
|
Puzzles.app/Info.plist: Puzzles.app osx-info.plist
|
||||||
|
cp osx-info.plist $@
|
||||||
|
Puzzles: Puzzles.app Puzzles.app/Puzzles \
|
||||||
|
Puzzles.app/Resources/Puzzles.icns Puzzles.app/Info.plist \
|
||||||
|
$(Puzzles_extra)
|
||||||
|
|
||||||
|
Puzzles.app/Puzzles: blackbo3.o bridges3.o combi.o cube3.o divvy.o \
|
||||||
|
dominos3.o drawing.o dsf.o fifteen5.o filling5.o findloop.o \
|
||||||
|
flip3.o flood3.o galaxie7.o grid.o guess3.o inertia3.o \
|
||||||
|
keen5.o latin.o laydomino.o lightup5.o list.o loopgen.o \
|
||||||
|
loopy5.o magnets5.o malloc.o map5.o maxflow.o midend.o \
|
||||||
|
mines5.o misc.o net3.o netslid3.o osx.o palisad3.o \
|
||||||
|
pattern7.o pearl5.o pegs3.o penrose.o random.o range3.o \
|
||||||
|
rect3.o samegam3.o signpos5.o singles5.o sixteen3.o slant5.o \
|
||||||
|
solo5.o tdq.o tents5.o towers5.o tracks3.o tree234.o \
|
||||||
|
twiddle3.o undead3.o unequal5.o unruly5.o untangl3.o \
|
||||||
|
version.o
|
||||||
|
$(CC) $(ALL_LDFLAGS) -o $@ blackbo3.o bridges3.o combi.o cube3.o \
|
||||||
|
divvy.o dominos3.o drawing.o dsf.o fifteen5.o filling5.o \
|
||||||
|
findloop.o flip3.o flood3.o galaxie7.o grid.o guess3.o \
|
||||||
|
inertia3.o keen5.o latin.o laydomino.o lightup5.o list.o \
|
||||||
|
loopgen.o loopy5.o magnets5.o malloc.o map5.o maxflow.o \
|
||||||
|
midend.o mines5.o misc.o net3.o netslid3.o osx.o palisad3.o \
|
||||||
|
pattern7.o pearl5.o pegs3.o penrose.o random.o range3.o \
|
||||||
|
rect3.o samegam3.o signpos5.o singles5.o sixteen3.o slant5.o \
|
||||||
|
solo5.o tdq.o tents5.o towers5.o tracks3.o tree234.o \
|
||||||
|
twiddle3.o undead3.o unequal5.o unruly5.o untangl3.o \
|
||||||
|
version.o $(ALL_LIB_DIRS) $(ALL_LIBS)
|
||||||
|
|
||||||
|
fifteensolver: fifteen2.o malloc.o misc.o nullfe.o random.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ fifteen2.o malloc.o misc.o nullfe.o random.o
|
||||||
|
|
||||||
|
fillingsolver: dsf.o filling2.o malloc.o misc.o nullfe.o random.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ dsf.o filling2.o malloc.o misc.o nullfe.o \
|
||||||
|
random.o
|
||||||
|
|
||||||
|
galaxiespicture: dsf.o galaxie4.o malloc.o misc.o nullfe.o random.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ dsf.o galaxie4.o malloc.o misc.o nullfe.o \
|
||||||
|
random.o -lm
|
||||||
|
|
||||||
|
galaxiessolver: dsf.o galaxie2.o malloc.o misc.o nullfe.o random.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ dsf.o galaxie2.o malloc.o misc.o nullfe.o \
|
||||||
|
random.o -lm
|
||||||
|
|
||||||
|
keensolver: dsf.o keen2.o latin6.o malloc.o maxflow.o misc.o nullfe.o \
|
||||||
|
random.o tree234.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ dsf.o keen2.o latin6.o malloc.o maxflow.o \
|
||||||
|
misc.o nullfe.o random.o tree234.o
|
||||||
|
|
||||||
|
latincheck: latin8.o malloc.o maxflow.o misc.o nullfe.o random.o tree234.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ latin8.o malloc.o maxflow.o misc.o nullfe.o \
|
||||||
|
random.o tree234.o
|
||||||
|
|
||||||
|
lightupsolver: combi.o lightup2.o malloc.o misc.o nullfe.o random.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ combi.o lightup2.o malloc.o misc.o nullfe.o \
|
||||||
|
random.o
|
||||||
|
|
||||||
|
loopysolver: dsf.o grid.o loopgen.o loopy2.o malloc.o misc.o nullfe.o \
|
||||||
|
penrose.o random.o tree234.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ dsf.o grid.o loopgen.o loopy2.o malloc.o \
|
||||||
|
misc.o nullfe.o penrose.o random.o tree234.o -lm
|
||||||
|
|
||||||
|
magnetssolver: laydomino.o magnets2.o malloc.o misc.o nullfe.o random.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ laydomino.o magnets2.o malloc.o misc.o \
|
||||||
|
nullfe.o random.o -lm
|
||||||
|
|
||||||
|
mapsolver: dsf.o malloc.o map2.o misc.o nullfe.o random.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ dsf.o malloc.o map2.o misc.o nullfe.o \
|
||||||
|
random.o -lm
|
||||||
|
|
||||||
|
mineobfusc: malloc.o mines2.o misc.o nullfe.o random.o tree234.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ malloc.o mines2.o misc.o nullfe.o random.o \
|
||||||
|
tree234.o
|
||||||
|
|
||||||
|
obfusc: malloc.o misc.o nullfe.o obfusc.o random.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ malloc.o misc.o nullfe.o obfusc.o random.o
|
||||||
|
|
||||||
|
patternpicture: malloc.o misc.o nullfe.o pattern4.o random.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ malloc.o misc.o nullfe.o pattern4.o random.o
|
||||||
|
|
||||||
|
patternsolver: malloc.o misc.o nullfe.o pattern2.o random.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ malloc.o misc.o nullfe.o pattern2.o random.o
|
||||||
|
|
||||||
|
pearlbench: dsf.o grid.o loopgen.o malloc.o misc.o nullfe.o pearl2.o \
|
||||||
|
penrose.o random.o tdq.o tree234.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ dsf.o grid.o loopgen.o malloc.o misc.o \
|
||||||
|
nullfe.o pearl2.o penrose.o random.o tdq.o tree234.o -lm
|
||||||
|
|
||||||
|
signpostsolver: dsf.o malloc.o misc.o nullfe.o random.o signpos2.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ dsf.o malloc.o misc.o nullfe.o random.o \
|
||||||
|
signpos2.o -lm
|
||||||
|
|
||||||
|
singlessolver: dsf.o latin.o malloc.o maxflow.o misc.o nullfe.o random.o \
|
||||||
|
singles3.o tree234.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ dsf.o latin.o malloc.o maxflow.o misc.o \
|
||||||
|
nullfe.o random.o singles3.o tree234.o
|
||||||
|
|
||||||
|
slantsolver: dsf.o findloop.o malloc.o misc.o nullfe.o random.o slant2.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ dsf.o findloop.o malloc.o misc.o nullfe.o \
|
||||||
|
random.o slant2.o
|
||||||
|
|
||||||
|
solosolver: divvy.o dsf.o malloc.o misc.o nullfe.o random.o solo2.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ divvy.o dsf.o malloc.o misc.o nullfe.o \
|
||||||
|
random.o solo2.o
|
||||||
|
|
||||||
|
tentssolver: dsf.o malloc.o maxflow.o misc.o nullfe.o random.o tents3.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ dsf.o malloc.o maxflow.o misc.o nullfe.o \
|
||||||
|
random.o tents3.o
|
||||||
|
|
||||||
|
towerssolver: latin6.o malloc.o maxflow.o misc.o nullfe.o random.o towers2.o \
|
||||||
|
tree234.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ latin6.o malloc.o maxflow.o misc.o nullfe.o \
|
||||||
|
random.o towers2.o tree234.o
|
||||||
|
|
||||||
|
unequalsolver: latin6.o malloc.o maxflow.o misc.o nullfe.o random.o \
|
||||||
|
tree234.o unequal2.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ latin6.o malloc.o maxflow.o misc.o nullfe.o \
|
||||||
|
random.o tree234.o unequal2.o
|
||||||
|
|
||||||
|
unrulysolver: malloc.o misc.o nullfe.o random.o unruly2.o
|
||||||
|
$(CC) $(ULDFLAGS) -o $@ malloc.o misc.o nullfe.o random.o unruly2.o
|
||||||
|
|
||||||
|
blackbox.o: ./blackbox.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
blackbo3.o: ./blackbox.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
bridges.o: ./bridges.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
bridges3.o: ./bridges.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
combi.o: ./combi.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
cube.o: ./cube.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
cube3.o: ./cube.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
divvy.o: ./divvy.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
dominosa.o: ./dominosa.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
dominos3.o: ./dominosa.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
drawing.o: ./drawing.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
dsf.o: ./dsf.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
fifteen.o: ./fifteen.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
fifteen5.o: ./fifteen.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
fifteen2.o: ./fifteen.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
filling.o: ./filling.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
filling5.o: ./filling.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
filling2.o: ./filling.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
findloop.o: ./findloop.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
flip.o: ./flip.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
flip3.o: ./flip.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
flood.o: ./flood.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
flood3.o: ./flood.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
galaxies.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
galaxie7.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
galaxie4.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_PICTURE_GENERATOR -c $< -o $@
|
||||||
|
galaxie2.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
grid.o: ./grid.c ./puzzles.h ./tree234.h ./grid.h ./penrose.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
gtk.o: ./gtk.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
guess.o: ./guess.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
guess3.o: ./guess.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
inertia.o: ./inertia.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
inertia3.o: ./inertia.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
keen.o: ./keen.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
keen5.o: ./keen.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
keen2.o: ./keen.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
latin.o: ./latin.c ./puzzles.h ./tree234.h ./maxflow.h ./latin.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
latin8.o: ./latin.c ./puzzles.h ./tree234.h ./maxflow.h ./latin.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_LATIN_TEST -c $< -o $@
|
||||||
|
latin6.o: ./latin.c ./puzzles.h ./tree234.h ./maxflow.h ./latin.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
laydomino.o: ./laydomino.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
lightup.o: ./lightup.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
lightup5.o: ./lightup.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
lightup2.o: ./lightup.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
list.o: ./list.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
loopgen.o: ./loopgen.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
loopy.o: ./loopy.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
loopy5.o: ./loopy.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
loopy2.o: ./loopy.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
magnets.o: ./magnets.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
magnets5.o: ./magnets.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
magnets2.o: ./magnets.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
malloc.o: ./malloc.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
map.o: ./map.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
map5.o: ./map.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
map2.o: ./map.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
maxflow.o: ./maxflow.c ./maxflow.h ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
midend.o: ./midend.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
mines.o: ./mines.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
mines5.o: ./mines.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
mines2.o: ./mines.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_OBFUSCATOR -c $< -o $@
|
||||||
|
misc.o: ./misc.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
net.o: ./net.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
net3.o: ./net.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
netslide.o: ./netslide.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
netslid3.o: ./netslide.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
no-icon.o: ./no-icon.c
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
nullfe.o: ./nullfe.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
nullgame.o: ./nullgame.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
obfusc.o: ./obfusc.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
osx.o: ./osx.m ./puzzles.h
|
||||||
|
$(CC) -DGNUSTEP $(ALL_OBJCFLAGS) $(COMPAT) $(FWHACK) $(OBJCFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
palisade.o: ./palisade.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
palisad3.o: ./palisade.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
pattern.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
pattern7.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
pattern4.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_PICTURE_GENERATOR -c $< -o $@
|
||||||
|
pattern2.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
pearl.o: ./pearl.c ./puzzles.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
pearl5.o: ./pearl.c ./puzzles.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
pearl2.o: ./pearl.c ./puzzles.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
pegs.o: ./pegs.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
pegs3.o: ./pegs.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
penrose.o: ./penrose.c ./puzzles.h ./penrose.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
printing.o: ./printing.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
ps.o: ./ps.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
random.o: ./random.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
range.o: ./range.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
range3.o: ./range.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
rect.o: ./rect.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
rect3.o: ./rect.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
samegame.o: ./samegame.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
samegam3.o: ./samegame.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
signpost.o: ./signpost.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
signpos5.o: ./signpost.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
signpos2.o: ./signpost.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
singles.o: ./singles.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
singles5.o: ./singles.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
singles3.o: ./singles.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
sixteen.o: ./sixteen.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
sixteen3.o: ./sixteen.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
slant.o: ./slant.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
slant5.o: ./slant.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
slant2.o: ./slant.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
solo.o: ./solo.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
solo5.o: ./solo.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
solo2.o: ./solo.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
tdq.o: ./tdq.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
tents.o: ./tents.c ./puzzles.h ./maxflow.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
tents5.o: ./tents.c ./puzzles.h ./maxflow.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
tents3.o: ./tents.c ./puzzles.h ./maxflow.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
towers.o: ./towers.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
towers5.o: ./towers.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
towers2.o: ./towers.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
tracks.o: ./tracks.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
tracks3.o: ./tracks.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
tree234.o: ./tree234.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
twiddle.o: ./twiddle.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
twiddle3.o: ./twiddle.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
undead.o: ./undead.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
undead3.o: ./undead.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
unequal.o: ./unequal.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
unequal5.o: ./unequal.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
unequal2.o: ./unequal.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
unruly.o: ./unruly.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
unruly5.o: ./unruly.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
unruly2.o: ./unruly.c ./puzzles.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
untangle.o: ./untangle.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
untangl3.o: ./untangle.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
version.o: ./version.c ./version.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
windows.o: ./windows.c ./puzzles.h ./resource.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
windows1.o: ./windows.c ./puzzles.h ./resource.h
|
||||||
|
$(CC) $(ALL_CFLAGS) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
|
||||||
|
clean::
|
||||||
|
rm -f *.o fifteensolver fillingsolver galaxiespicture galaxiessolver keensolver latincheck lightupsolver loopysolver magnetssolver mapsolver mineobfusc obfusc patternpicture patternsolver pearlbench signpostsolver singlessolver slantsolver solosolver tentssolver towerssolver unequalsolver unrulysolver
|
||||||
|
rm -rf *.app
|
727
apps/plugins/puzzles/src/Makefile.gtk
Normal file
727
apps/plugins/puzzles/src/Makefile.gtk
Normal file
|
@ -0,0 +1,727 @@
|
||||||
|
# Makefile for puzzles under X/GTK and Unix.
|
||||||
|
#
|
||||||
|
# This file was created by `mkfiles.pl' from the `Recipe' file.
|
||||||
|
# DO NOT EDIT THIS FILE DIRECTLY; edit Recipe or mkfiles.pl instead.
|
||||||
|
|
||||||
|
# You can define this path to point at your tools if you need to
|
||||||
|
# TOOLPATH = /opt/gcc/bin
|
||||||
|
CC := $(TOOLPATH)$(CC)
|
||||||
|
# You can manually set this to `gtk-config' or `pkg-config gtk+-1.2'
|
||||||
|
# (depending on what works on your system) if you want to enforce
|
||||||
|
# building with GTK 1.2, or you can set it to `pkg-config gtk+-2.0'
|
||||||
|
# if you want to enforce 2.0. The default is to try 2.0 and fall back
|
||||||
|
# to 1.2 if it isn't found.
|
||||||
|
GTK_CONFIG = sh -c 'pkg-config gtk+-2.0 $$0 2>/dev/null || gtk-config $$0'
|
||||||
|
|
||||||
|
CFLAGS := -O2 -Wall -Werror -ansi -pedantic -g -I./ -Iicons/ `$(GTK_CONFIG) \
|
||||||
|
--cflags` $(CFLAGS)
|
||||||
|
XLIBS = `$(GTK_CONFIG) --libs` -lm
|
||||||
|
ULIBS = -lm#
|
||||||
|
INSTALL=install
|
||||||
|
INSTALL_PROGRAM=$(INSTALL)
|
||||||
|
INSTALL_DATA=$(INSTALL)
|
||||||
|
prefix=/usr/local
|
||||||
|
exec_prefix=$(prefix)
|
||||||
|
bindir=$(exec_prefix)/bin
|
||||||
|
gamesdir=$(exec_prefix)/games
|
||||||
|
mandir=$(prefix)/man
|
||||||
|
man1dir=$(mandir)/man1
|
||||||
|
|
||||||
|
all: $(BINPREFIX)blackbox $(BINPREFIX)bridges $(BINPREFIX)cube \
|
||||||
|
$(BINPREFIX)dominosa $(BINPREFIX)fifteen \
|
||||||
|
$(BINPREFIX)fifteensolver $(BINPREFIX)filling \
|
||||||
|
$(BINPREFIX)fillingsolver $(BINPREFIX)flip $(BINPREFIX)flood \
|
||||||
|
$(BINPREFIX)galaxies $(BINPREFIX)galaxiespicture \
|
||||||
|
$(BINPREFIX)galaxiessolver $(BINPREFIX)guess \
|
||||||
|
$(BINPREFIX)inertia $(BINPREFIX)keen $(BINPREFIX)keensolver \
|
||||||
|
$(BINPREFIX)latincheck $(BINPREFIX)lightup \
|
||||||
|
$(BINPREFIX)lightupsolver $(BINPREFIX)loopy \
|
||||||
|
$(BINPREFIX)loopysolver $(BINPREFIX)magnets \
|
||||||
|
$(BINPREFIX)magnetssolver $(BINPREFIX)map \
|
||||||
|
$(BINPREFIX)mapsolver $(BINPREFIX)mineobfusc \
|
||||||
|
$(BINPREFIX)mines $(BINPREFIX)net $(BINPREFIX)netslide \
|
||||||
|
$(BINPREFIX)nullgame $(BINPREFIX)obfusc $(BINPREFIX)palisade \
|
||||||
|
$(BINPREFIX)pattern $(BINPREFIX)patternpicture \
|
||||||
|
$(BINPREFIX)patternsolver $(BINPREFIX)pearl \
|
||||||
|
$(BINPREFIX)pearlbench $(BINPREFIX)pegs $(BINPREFIX)range \
|
||||||
|
$(BINPREFIX)rect $(BINPREFIX)samegame $(BINPREFIX)signpost \
|
||||||
|
$(BINPREFIX)signpostsolver $(BINPREFIX)singles \
|
||||||
|
$(BINPREFIX)singlessolver $(BINPREFIX)sixteen \
|
||||||
|
$(BINPREFIX)slant $(BINPREFIX)slantsolver $(BINPREFIX)solo \
|
||||||
|
$(BINPREFIX)solosolver $(BINPREFIX)tents \
|
||||||
|
$(BINPREFIX)tentssolver $(BINPREFIX)towers \
|
||||||
|
$(BINPREFIX)towerssolver $(BINPREFIX)tracks \
|
||||||
|
$(BINPREFIX)twiddle $(BINPREFIX)undead $(BINPREFIX)unequal \
|
||||||
|
$(BINPREFIX)unequalsolver $(BINPREFIX)unruly \
|
||||||
|
$(BINPREFIX)unrulysolver $(BINPREFIX)untangle
|
||||||
|
|
||||||
|
$(BINPREFIX)blackbox: blackbox.o drawing.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ blackbox.o drawing.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)bridges: bridges.o drawing.o dsf.o findloop.o gtk.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ bridges.o drawing.o dsf.o findloop.o gtk.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)cube: cube.o drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ cube.o drawing.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)dominosa: dominosa.o drawing.o gtk.o laydomino.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ dominosa.o drawing.o gtk.o laydomino.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)fifteen: drawing.o fifteen.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ drawing.o fifteen.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)fifteensolver: fifteen2.o malloc.o misc.o nullfe.o random.o
|
||||||
|
$(CC) -o $@ fifteen2.o malloc.o misc.o nullfe.o random.o $(XLFLAGS) \
|
||||||
|
$(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)filling: drawing.o dsf.o filling.o gtk.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o filling.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)fillingsolver: dsf.o filling2.o malloc.o misc.o nullfe.o \
|
||||||
|
random.o
|
||||||
|
$(CC) -o $@ dsf.o filling2.o malloc.o misc.o nullfe.o random.o \
|
||||||
|
$(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)flip: drawing.o flip.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o tree234.o version.o
|
||||||
|
$(CC) -o $@ drawing.o flip.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o tree234.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)flood: drawing.o flood.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ drawing.o flood.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)galaxies: drawing.o dsf.o galaxies.o gtk.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o galaxies.o gtk.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)galaxiespicture: dsf.o galaxie4.o malloc.o misc.o nullfe.o \
|
||||||
|
random.o
|
||||||
|
$(CC) -o $@ dsf.o galaxie4.o malloc.o misc.o nullfe.o random.o -lm \
|
||||||
|
$(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)galaxiessolver: dsf.o galaxie2.o malloc.o misc.o nullfe.o \
|
||||||
|
random.o
|
||||||
|
$(CC) -o $@ dsf.o galaxie2.o malloc.o misc.o nullfe.o random.o -lm \
|
||||||
|
$(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)guess: drawing.o gtk.o guess.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o guess.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)inertia: drawing.o gtk.o inertia.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o inertia.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)keen: drawing.o dsf.o gtk.o keen.o latin.o malloc.o maxflow.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o tree234.o \
|
||||||
|
version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o gtk.o keen.o latin.o malloc.o maxflow.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o tree234.o \
|
||||||
|
version.o $(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)keensolver: dsf.o keen2.o latin6.o malloc.o maxflow.o misc.o \
|
||||||
|
nullfe.o random.o tree234.o
|
||||||
|
$(CC) -o $@ dsf.o keen2.o latin6.o malloc.o maxflow.o misc.o \
|
||||||
|
nullfe.o random.o tree234.o $(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)latincheck: latin8.o malloc.o maxflow.o misc.o nullfe.o random.o \
|
||||||
|
tree234.o
|
||||||
|
$(CC) -o $@ latin8.o malloc.o maxflow.o misc.o nullfe.o random.o \
|
||||||
|
tree234.o $(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)lightup: combi.o drawing.o gtk.o lightup.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ combi.o drawing.o gtk.o lightup.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)lightupsolver: combi.o lightup2.o malloc.o misc.o nullfe.o \
|
||||||
|
random.o
|
||||||
|
$(CC) -o $@ combi.o lightup2.o malloc.o misc.o nullfe.o random.o \
|
||||||
|
$(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)loopy: drawing.o dsf.o grid.o gtk.o loopgen.o loopy.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o penrose.o printing.o ps.o random.o \
|
||||||
|
tree234.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o grid.o gtk.o loopgen.o loopy.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o penrose.o printing.o ps.o random.o \
|
||||||
|
tree234.o version.o $(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)loopysolver: dsf.o grid.o loopgen.o loopy2.o malloc.o misc.o \
|
||||||
|
nullfe.o penrose.o random.o tree234.o
|
||||||
|
$(CC) -o $@ dsf.o grid.o loopgen.o loopy2.o malloc.o misc.o nullfe.o \
|
||||||
|
penrose.o random.o tree234.o -lm $(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)magnets: drawing.o gtk.o laydomino.o magnets.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o laydomino.o magnets.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)magnetssolver: laydomino.o magnets2.o malloc.o misc.o nullfe.o \
|
||||||
|
random.o
|
||||||
|
$(CC) -o $@ laydomino.o magnets2.o malloc.o misc.o nullfe.o random.o \
|
||||||
|
-lm $(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)map: drawing.o dsf.o gtk.o malloc.o map.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o gtk.o malloc.o map.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)mapsolver: dsf.o malloc.o map2.o misc.o nullfe.o random.o
|
||||||
|
$(CC) -o $@ dsf.o malloc.o map2.o misc.o nullfe.o random.o -lm \
|
||||||
|
$(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)mineobfusc: malloc.o mines2.o misc.o nullfe.o random.o tree234.o
|
||||||
|
$(CC) -o $@ malloc.o mines2.o misc.o nullfe.o random.o tree234.o \
|
||||||
|
$(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)mines: drawing.o gtk.o malloc.o midend.o mines.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o tree234.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o mines.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o tree234.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)net: drawing.o dsf.o findloop.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
net.o no-icon.o printing.o ps.o random.o tree234.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o findloop.o gtk.o malloc.o midend.o \
|
||||||
|
misc.o net.o no-icon.o printing.o ps.o random.o tree234.o \
|
||||||
|
version.o $(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)netslide: drawing.o gtk.o malloc.o midend.o misc.o netslide.o \
|
||||||
|
no-icon.o printing.o ps.o random.o tree234.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o misc.o netslide.o \
|
||||||
|
no-icon.o printing.o ps.o random.o tree234.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)nullgame: drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
nullgame.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
nullgame.o printing.o ps.o random.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)obfusc: malloc.o misc.o nullfe.o obfusc.o random.o
|
||||||
|
$(CC) -o $@ malloc.o misc.o nullfe.o obfusc.o random.o $(XLFLAGS) \
|
||||||
|
$(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)palisade: divvy.o drawing.o dsf.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o palisade.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ divvy.o drawing.o dsf.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o palisade.o printing.o ps.o random.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)pattern: drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
pattern.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
pattern.o printing.o ps.o random.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)patternpicture: malloc.o misc.o nullfe.o pattern4.o random.o
|
||||||
|
$(CC) -o $@ malloc.o misc.o nullfe.o pattern4.o random.o $(XLFLAGS) \
|
||||||
|
$(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)patternsolver: malloc.o misc.o nullfe.o pattern2.o random.o
|
||||||
|
$(CC) -o $@ malloc.o misc.o nullfe.o pattern2.o random.o $(XLFLAGS) \
|
||||||
|
$(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)pearl: drawing.o dsf.o grid.o gtk.o loopgen.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o pearl.o penrose.o printing.o ps.o random.o \
|
||||||
|
tdq.o tree234.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o grid.o gtk.o loopgen.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o pearl.o penrose.o printing.o ps.o random.o \
|
||||||
|
tdq.o tree234.o version.o $(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)pearlbench: dsf.o grid.o loopgen.o malloc.o misc.o nullfe.o \
|
||||||
|
pearl2.o penrose.o random.o tdq.o tree234.o
|
||||||
|
$(CC) -o $@ dsf.o grid.o loopgen.o malloc.o misc.o nullfe.o pearl2.o \
|
||||||
|
penrose.o random.o tdq.o tree234.o -lm $(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)pegs: drawing.o gtk.o malloc.o midend.o misc.o no-icon.o pegs.o \
|
||||||
|
printing.o ps.o random.o tree234.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
pegs.o printing.o ps.o random.o tree234.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)range: drawing.o dsf.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o range.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o range.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)rect: drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o rect.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o rect.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)samegame: drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o samegame.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o samegame.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)signpost: drawing.o dsf.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o signpost.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o signpost.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)signpostsolver: dsf.o malloc.o misc.o nullfe.o random.o \
|
||||||
|
signpos2.o
|
||||||
|
$(CC) -o $@ dsf.o malloc.o misc.o nullfe.o random.o signpos2.o -lm \
|
||||||
|
$(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)singles: drawing.o dsf.o gtk.o latin.o malloc.o maxflow.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o singles.o \
|
||||||
|
tree234.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o gtk.o latin.o malloc.o maxflow.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o singles.o \
|
||||||
|
tree234.o version.o $(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)singlessolver: dsf.o latin.o malloc.o maxflow.o misc.o nullfe.o \
|
||||||
|
random.o singles3.o tree234.o
|
||||||
|
$(CC) -o $@ dsf.o latin.o malloc.o maxflow.o misc.o nullfe.o \
|
||||||
|
random.o singles3.o tree234.o $(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)sixteen: drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o sixteen.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o sixteen.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)slant: drawing.o dsf.o findloop.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o slant.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o findloop.o gtk.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o slant.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)slantsolver: dsf.o findloop.o malloc.o misc.o nullfe.o random.o \
|
||||||
|
slant2.o
|
||||||
|
$(CC) -o $@ dsf.o findloop.o malloc.o misc.o nullfe.o random.o \
|
||||||
|
slant2.o $(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)solo: divvy.o drawing.o dsf.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o solo.o version.o
|
||||||
|
$(CC) -o $@ divvy.o drawing.o dsf.o gtk.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o solo.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)solosolver: divvy.o dsf.o malloc.o misc.o nullfe.o random.o \
|
||||||
|
solo2.o
|
||||||
|
$(CC) -o $@ divvy.o dsf.o malloc.o misc.o nullfe.o random.o solo2.o \
|
||||||
|
$(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)tents: drawing.o dsf.o gtk.o malloc.o maxflow.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o tents.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o gtk.o malloc.o maxflow.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o tents.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)tentssolver: dsf.o malloc.o maxflow.o misc.o nullfe.o random.o \
|
||||||
|
tents3.o
|
||||||
|
$(CC) -o $@ dsf.o malloc.o maxflow.o misc.o nullfe.o random.o \
|
||||||
|
tents3.o $(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)towers: drawing.o gtk.o latin.o malloc.o maxflow.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o towers.o tree234.o \
|
||||||
|
version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o latin.o malloc.o maxflow.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o towers.o tree234.o \
|
||||||
|
version.o $(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)towerssolver: latin6.o malloc.o maxflow.o misc.o nullfe.o \
|
||||||
|
random.o towers2.o tree234.o
|
||||||
|
$(CC) -o $@ latin6.o malloc.o maxflow.o misc.o nullfe.o random.o \
|
||||||
|
towers2.o tree234.o $(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)tracks: drawing.o dsf.o findloop.o gtk.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o tracks.o version.o
|
||||||
|
$(CC) -o $@ drawing.o dsf.o findloop.o gtk.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o tracks.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)twiddle: drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o twiddle.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o twiddle.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)undead: drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o undead.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o undead.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)unequal: drawing.o gtk.o latin.o malloc.o maxflow.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o tree234.o \
|
||||||
|
unequal.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o latin.o malloc.o maxflow.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o tree234.o \
|
||||||
|
unequal.o version.o $(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)unequalsolver: latin6.o malloc.o maxflow.o misc.o nullfe.o \
|
||||||
|
random.o tree234.o unequal2.o
|
||||||
|
$(CC) -o $@ latin6.o malloc.o maxflow.o misc.o nullfe.o random.o \
|
||||||
|
tree234.o unequal2.o $(XLFLAGS) $(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)unruly: drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o unruly.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o unruly.o version.o $(XLFLAGS) \
|
||||||
|
$(XLIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)unrulysolver: malloc.o misc.o nullfe.o random.o unruly2.o
|
||||||
|
$(CC) -o $@ malloc.o misc.o nullfe.o random.o unruly2.o $(XLFLAGS) \
|
||||||
|
$(ULIBS)
|
||||||
|
|
||||||
|
$(BINPREFIX)untangle: drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o tree234.o untangle.o version.o
|
||||||
|
$(CC) -o $@ drawing.o gtk.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o tree234.o untangle.o version.o \
|
||||||
|
$(XLFLAGS) $(XLIBS)
|
||||||
|
|
||||||
|
blackbox.o: ./blackbox.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
blackbo3.o: ./blackbox.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
bridges.o: ./bridges.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
bridges3.o: ./bridges.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
combi.o: ./combi.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
cube.o: ./cube.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
cube3.o: ./cube.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
divvy.o: ./divvy.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
dominosa.o: ./dominosa.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
dominos3.o: ./dominosa.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
drawing.o: ./drawing.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
dsf.o: ./dsf.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
fifteen.o: ./fifteen.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
fifteen5.o: ./fifteen.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
fifteen2.o: ./fifteen.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
filling.o: ./filling.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
filling5.o: ./filling.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
filling2.o: ./filling.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
findloop.o: ./findloop.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
flip.o: ./flip.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
flip3.o: ./flip.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
flood.o: ./flood.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
flood3.o: ./flood.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
galaxies.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
galaxie7.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
galaxie4.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_PICTURE_GENERATOR -c $< -o $@
|
||||||
|
galaxie2.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
grid.o: ./grid.c ./puzzles.h ./tree234.h ./grid.h ./penrose.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
gtk.o: ./gtk.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
guess.o: ./guess.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
guess3.o: ./guess.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
inertia.o: ./inertia.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
inertia3.o: ./inertia.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
keen.o: ./keen.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
keen5.o: ./keen.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
keen2.o: ./keen.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
latin.o: ./latin.c ./puzzles.h ./tree234.h ./maxflow.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
latin8.o: ./latin.c ./puzzles.h ./tree234.h ./maxflow.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_LATIN_TEST -c $< -o $@
|
||||||
|
latin6.o: ./latin.c ./puzzles.h ./tree234.h ./maxflow.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
laydomino.o: ./laydomino.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
lightup.o: ./lightup.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
lightup5.o: ./lightup.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
lightup2.o: ./lightup.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
list.o: ./list.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
loopgen.o: ./loopgen.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
loopy.o: ./loopy.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
loopy5.o: ./loopy.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
loopy2.o: ./loopy.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
magnets.o: ./magnets.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
magnets5.o: ./magnets.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
magnets2.o: ./magnets.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
malloc.o: ./malloc.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
map.o: ./map.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
map5.o: ./map.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
map2.o: ./map.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
maxflow.o: ./maxflow.c ./maxflow.h ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
midend.o: ./midend.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
mines.o: ./mines.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
mines5.o: ./mines.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
mines2.o: ./mines.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_OBFUSCATOR -c $< -o $@
|
||||||
|
misc.o: ./misc.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
net.o: ./net.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
net3.o: ./net.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
netslide.o: ./netslide.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
netslid3.o: ./netslide.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
no-icon.o: ./no-icon.c
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
nullfe.o: ./nullfe.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
nullgame.o: ./nullgame.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
obfusc.o: ./obfusc.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
osx.o: ./osx.m ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
palisade.o: ./palisade.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
palisad3.o: ./palisade.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
pattern.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
pattern7.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
pattern4.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_PICTURE_GENERATOR -c $< -o $@
|
||||||
|
pattern2.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
pearl.o: ./pearl.c ./puzzles.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
pearl5.o: ./pearl.c ./puzzles.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
pearl2.o: ./pearl.c ./puzzles.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
pegs.o: ./pegs.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
pegs3.o: ./pegs.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
penrose.o: ./penrose.c ./puzzles.h ./penrose.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
printing.o: ./printing.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
ps.o: ./ps.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
random.o: ./random.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
range.o: ./range.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
range3.o: ./range.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
rect.o: ./rect.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
rect3.o: ./rect.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
samegame.o: ./samegame.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
samegam3.o: ./samegame.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
signpost.o: ./signpost.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
signpos5.o: ./signpost.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
signpos2.o: ./signpost.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
singles.o: ./singles.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
singles5.o: ./singles.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
singles3.o: ./singles.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
sixteen.o: ./sixteen.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
sixteen3.o: ./sixteen.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
slant.o: ./slant.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
slant5.o: ./slant.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
slant2.o: ./slant.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
solo.o: ./solo.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
solo5.o: ./solo.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
solo2.o: ./solo.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
tdq.o: ./tdq.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
tents.o: ./tents.c ./puzzles.h ./maxflow.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
tents5.o: ./tents.c ./puzzles.h ./maxflow.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
tents3.o: ./tents.c ./puzzles.h ./maxflow.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
towers.o: ./towers.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
towers5.o: ./towers.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
towers2.o: ./towers.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
tracks.o: ./tracks.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
tracks3.o: ./tracks.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
tree234.o: ./tree234.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
twiddle.o: ./twiddle.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
twiddle3.o: ./twiddle.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
undead.o: ./undead.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
undead3.o: ./undead.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
unequal.o: ./unequal.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
unequal5.o: ./unequal.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
unequal2.o: ./unequal.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
unruly.o: ./unruly.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
unruly5.o: ./unruly.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
unruly2.o: ./unruly.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
untangle.o: ./untangle.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
untangl3.o: ./untangle.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
version.o: ./version.c ./version.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
windows.o: ./windows.c ./puzzles.h ./resource.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
windows1.o: ./windows.c ./puzzles.h ./resource.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
|
||||||
|
GAMES += blackbox
|
||||||
|
GAMES += bridges
|
||||||
|
GAMES += cube
|
||||||
|
GAMES += dominosa
|
||||||
|
GAMES += fifteen
|
||||||
|
GAMES += filling
|
||||||
|
GAMES += flip
|
||||||
|
GAMES += flood
|
||||||
|
GAMES += galaxies
|
||||||
|
GAMES += guess
|
||||||
|
GAMES += inertia
|
||||||
|
GAMES += keen
|
||||||
|
GAMES += lightup
|
||||||
|
GAMES += loopy
|
||||||
|
GAMES += magnets
|
||||||
|
GAMES += map
|
||||||
|
GAMES += mines
|
||||||
|
GAMES += net
|
||||||
|
GAMES += netslide
|
||||||
|
GAMES += palisade
|
||||||
|
GAMES += pattern
|
||||||
|
GAMES += pearl
|
||||||
|
GAMES += pegs
|
||||||
|
GAMES += range
|
||||||
|
GAMES += rect
|
||||||
|
GAMES += samegame
|
||||||
|
GAMES += signpost
|
||||||
|
GAMES += singles
|
||||||
|
GAMES += sixteen
|
||||||
|
GAMES += slant
|
||||||
|
GAMES += solo
|
||||||
|
GAMES += tents
|
||||||
|
GAMES += towers
|
||||||
|
GAMES += tracks
|
||||||
|
GAMES += twiddle
|
||||||
|
GAMES += undead
|
||||||
|
GAMES += unequal
|
||||||
|
GAMES += unruly
|
||||||
|
GAMES += untangle
|
||||||
|
install:
|
||||||
|
for i in $(GAMES); do \
|
||||||
|
$(INSTALL_PROGRAM) -m 755 $(BINPREFIX)$$i $(DESTDIR)$(gamesdir)/$(BINPREFIX)$$i \
|
||||||
|
|| exit 1; \
|
||||||
|
done
|
||||||
|
test: benchmark.html benchmark.txt
|
||||||
|
|
||||||
|
benchmark.html: benchmark.txt benchmark.pl
|
||||||
|
./benchmark.pl benchmark.txt > $@
|
||||||
|
|
||||||
|
benchmark.txt: benchmark.sh $(GAMES)
|
||||||
|
./benchmark.sh > $@
|
||||||
|
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f *.o $(BINPREFIX)blackbox $(BINPREFIX)bridges $(BINPREFIX)cube $(BINPREFIX)dominosa $(BINPREFIX)fifteen $(BINPREFIX)fifteensolver $(BINPREFIX)filling $(BINPREFIX)fillingsolver $(BINPREFIX)flip $(BINPREFIX)flood $(BINPREFIX)galaxies $(BINPREFIX)galaxiespicture $(BINPREFIX)galaxiessolver $(BINPREFIX)guess $(BINPREFIX)inertia $(BINPREFIX)keen $(BINPREFIX)keensolver $(BINPREFIX)latincheck $(BINPREFIX)lightup $(BINPREFIX)lightupsolver $(BINPREFIX)loopy $(BINPREFIX)loopysolver $(BINPREFIX)magnets $(BINPREFIX)magnetssolver $(BINPREFIX)map $(BINPREFIX)mapsolver $(BINPREFIX)mineobfusc $(BINPREFIX)mines $(BINPREFIX)net $(BINPREFIX)netslide $(BINPREFIX)nullgame $(BINPREFIX)obfusc $(BINPREFIX)palisade $(BINPREFIX)pattern $(BINPREFIX)patternpicture $(BINPREFIX)patternsolver $(BINPREFIX)pearl $(BINPREFIX)pearlbench $(BINPREFIX)pegs $(BINPREFIX)range $(BINPREFIX)rect $(BINPREFIX)samegame $(BINPREFIX)signpost $(BINPREFIX)signpostsolver $(BINPREFIX)singles $(BINPREFIX)singlessolver $(BINPREFIX)sixteen $(BINPREFIX)slant $(BINPREFIX)slantsolver $(BINPREFIX)solo $(BINPREFIX)solosolver $(BINPREFIX)tents $(BINPREFIX)tentssolver $(BINPREFIX)towers $(BINPREFIX)towerssolver $(BINPREFIX)tracks $(BINPREFIX)twiddle $(BINPREFIX)undead $(BINPREFIX)unequal $(BINPREFIX)unequalsolver $(BINPREFIX)unruly $(BINPREFIX)unrulysolver $(BINPREFIX)untangle
|
2611
apps/plugins/puzzles/src/Makefile.in
Normal file
2611
apps/plugins/puzzles/src/Makefile.in
Normal file
File diff suppressed because it is too large
Load diff
556
apps/plugins/puzzles/src/Makefile.nestedvm
Normal file
556
apps/plugins/puzzles/src/Makefile.nestedvm
Normal file
|
@ -0,0 +1,556 @@
|
||||||
|
# Makefile for puzzles under NestedVM.
|
||||||
|
#
|
||||||
|
# This file was created by `mkfiles.pl' from the `Recipe' file.
|
||||||
|
# DO NOT EDIT THIS FILE DIRECTLY; edit Recipe or mkfiles.pl instead.
|
||||||
|
|
||||||
|
# This path points at the nestedvm root directory
|
||||||
|
NESTEDVM = /opt/nestedvm
|
||||||
|
# You can define this path to point at your tools if you need to
|
||||||
|
TOOLPATH = $(NESTEDVM)/upstream/install/bin
|
||||||
|
CC = $(TOOLPATH)/mips-unknown-elf-gcc
|
||||||
|
|
||||||
|
CFLAGS = -O2 -Wall -Werror -DSLOW_SYSTEM -g -I./ -Iicons/
|
||||||
|
|
||||||
|
all: blackbox.jar bridges.jar cube.jar dominosa.jar fifteen.jar filling.jar \
|
||||||
|
flip.jar flood.jar galaxies.jar guess.jar inertia.jar \
|
||||||
|
keen.jar lightup.jar loopy.jar magnets.jar map.jar mines.jar \
|
||||||
|
net.jar netslide.jar nullgame.jar palisade.jar pattern.jar \
|
||||||
|
pearl.jar pegs.jar range.jar rect.jar samegame.jar \
|
||||||
|
signpost.jar singles.jar sixteen.jar slant.jar solo.jar \
|
||||||
|
tents.jar towers.jar tracks.jar twiddle.jar undead.jar \
|
||||||
|
unequal.jar unruly.jar untangle.jar
|
||||||
|
|
||||||
|
blackbox.mips: blackbox.o drawing.o nestedvm.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ blackbox.o drawing.o nestedvm.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
-lm
|
||||||
|
|
||||||
|
bridges.mips: bridges.o drawing.o dsf.o findloop.o nestedvm.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ bridges.o drawing.o dsf.o findloop.o \
|
||||||
|
nestedvm.o malloc.o midend.o misc.o no-icon.o printing.o \
|
||||||
|
ps.o random.o version.o -lm
|
||||||
|
|
||||||
|
cube.mips: cube.o drawing.o nestedvm.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ cube.o drawing.o nestedvm.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
-lm
|
||||||
|
|
||||||
|
dominosa.mips: dominosa.o drawing.o nestedvm.o laydomino.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ dominosa.o drawing.o nestedvm.o laydomino.o \
|
||||||
|
malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o \
|
||||||
|
version.o -lm
|
||||||
|
|
||||||
|
fifteen.mips: drawing.o fifteen.o nestedvm.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o fifteen.o nestedvm.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
-lm
|
||||||
|
|
||||||
|
filling.mips: drawing.o dsf.o filling.o nestedvm.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o dsf.o filling.o nestedvm.o \
|
||||||
|
malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o \
|
||||||
|
version.o -lm
|
||||||
|
|
||||||
|
flip.mips: drawing.o flip.o nestedvm.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o tree234.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o flip.o nestedvm.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o tree234.o \
|
||||||
|
version.o -lm
|
||||||
|
|
||||||
|
flood.mips: drawing.o flood.o nestedvm.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o flood.o nestedvm.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
-lm
|
||||||
|
|
||||||
|
galaxies.mips: drawing.o dsf.o galaxies.o nestedvm.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o dsf.o galaxies.o nestedvm.o \
|
||||||
|
malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o \
|
||||||
|
version.o -lm
|
||||||
|
|
||||||
|
guess.mips: drawing.o nestedvm.o guess.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o nestedvm.o guess.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
-lm
|
||||||
|
|
||||||
|
inertia.mips: drawing.o nestedvm.o inertia.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o nestedvm.o inertia.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
-lm
|
||||||
|
|
||||||
|
keen.mips: drawing.o dsf.o nestedvm.o keen.o latin.o malloc.o maxflow.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o tree234.o \
|
||||||
|
version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o dsf.o nestedvm.o keen.o latin.o \
|
||||||
|
malloc.o maxflow.o midend.o misc.o no-icon.o printing.o ps.o \
|
||||||
|
random.o tree234.o version.o -lm
|
||||||
|
|
||||||
|
lightup.mips: combi.o drawing.o nestedvm.o lightup.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ combi.o drawing.o nestedvm.o lightup.o \
|
||||||
|
malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o \
|
||||||
|
version.o -lm
|
||||||
|
|
||||||
|
loopy.mips: drawing.o dsf.o grid.o nestedvm.o loopgen.o loopy.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o penrose.o printing.o ps.o random.o \
|
||||||
|
tree234.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o dsf.o grid.o nestedvm.o loopgen.o \
|
||||||
|
loopy.o malloc.o midend.o misc.o no-icon.o penrose.o \
|
||||||
|
printing.o ps.o random.o tree234.o version.o -lm
|
||||||
|
|
||||||
|
magnets.mips: drawing.o nestedvm.o laydomino.o magnets.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o nestedvm.o laydomino.o magnets.o \
|
||||||
|
malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o \
|
||||||
|
version.o -lm
|
||||||
|
|
||||||
|
map.mips: drawing.o dsf.o nestedvm.o malloc.o map.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o dsf.o nestedvm.o malloc.o map.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o version.o \
|
||||||
|
-lm
|
||||||
|
|
||||||
|
mines.mips: drawing.o nestedvm.o malloc.o midend.o mines.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o tree234.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o nestedvm.o malloc.o midend.o \
|
||||||
|
mines.o misc.o no-icon.o printing.o ps.o random.o tree234.o \
|
||||||
|
version.o -lm
|
||||||
|
|
||||||
|
net.mips: drawing.o dsf.o findloop.o nestedvm.o malloc.o midend.o misc.o \
|
||||||
|
net.o no-icon.o printing.o ps.o random.o tree234.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o dsf.o findloop.o nestedvm.o \
|
||||||
|
malloc.o midend.o misc.o net.o no-icon.o printing.o ps.o \
|
||||||
|
random.o tree234.o version.o -lm
|
||||||
|
|
||||||
|
netslide.mips: drawing.o nestedvm.o malloc.o midend.o misc.o netslide.o \
|
||||||
|
no-icon.o printing.o ps.o random.o tree234.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o nestedvm.o malloc.o midend.o \
|
||||||
|
misc.o netslide.o no-icon.o printing.o ps.o random.o \
|
||||||
|
tree234.o version.o -lm
|
||||||
|
|
||||||
|
nullgame.mips: drawing.o nestedvm.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
nullgame.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o nestedvm.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o nullgame.o printing.o ps.o random.o \
|
||||||
|
version.o -lm
|
||||||
|
|
||||||
|
palisade.mips: divvy.o drawing.o dsf.o nestedvm.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o palisade.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ divvy.o drawing.o dsf.o nestedvm.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o palisade.o printing.o ps.o \
|
||||||
|
random.o version.o -lm
|
||||||
|
|
||||||
|
pattern.mips: drawing.o nestedvm.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
pattern.o printing.o ps.o random.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o nestedvm.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o pattern.o printing.o ps.o random.o \
|
||||||
|
version.o -lm
|
||||||
|
|
||||||
|
pearl.mips: drawing.o dsf.o grid.o nestedvm.o loopgen.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o pearl.o penrose.o printing.o ps.o random.o \
|
||||||
|
tdq.o tree234.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o dsf.o grid.o nestedvm.o loopgen.o \
|
||||||
|
malloc.o midend.o misc.o no-icon.o pearl.o penrose.o \
|
||||||
|
printing.o ps.o random.o tdq.o tree234.o version.o -lm
|
||||||
|
|
||||||
|
pegs.mips: drawing.o nestedvm.o malloc.o midend.o misc.o no-icon.o pegs.o \
|
||||||
|
printing.o ps.o random.o tree234.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o nestedvm.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o pegs.o printing.o ps.o random.o tree234.o \
|
||||||
|
version.o -lm
|
||||||
|
|
||||||
|
range.mips: drawing.o dsf.o nestedvm.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o range.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o dsf.o nestedvm.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o range.o version.o \
|
||||||
|
-lm
|
||||||
|
|
||||||
|
rect.mips: drawing.o nestedvm.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o rect.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o nestedvm.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o rect.o version.o \
|
||||||
|
-lm
|
||||||
|
|
||||||
|
samegame.mips: drawing.o nestedvm.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o samegame.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o nestedvm.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o samegame.o \
|
||||||
|
version.o -lm
|
||||||
|
|
||||||
|
signpost.mips: drawing.o dsf.o nestedvm.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o signpost.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o dsf.o nestedvm.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o signpost.o \
|
||||||
|
version.o -lm
|
||||||
|
|
||||||
|
singles.mips: drawing.o dsf.o nestedvm.o latin.o malloc.o maxflow.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o singles.o \
|
||||||
|
tree234.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o dsf.o nestedvm.o latin.o malloc.o \
|
||||||
|
maxflow.o midend.o misc.o no-icon.o printing.o ps.o random.o \
|
||||||
|
singles.o tree234.o version.o -lm
|
||||||
|
|
||||||
|
sixteen.mips: drawing.o nestedvm.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o sixteen.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o nestedvm.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o sixteen.o \
|
||||||
|
version.o -lm
|
||||||
|
|
||||||
|
slant.mips: drawing.o dsf.o findloop.o nestedvm.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o slant.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o dsf.o findloop.o nestedvm.o \
|
||||||
|
malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o \
|
||||||
|
slant.o version.o -lm
|
||||||
|
|
||||||
|
solo.mips: divvy.o drawing.o dsf.o nestedvm.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o solo.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ divvy.o drawing.o dsf.o nestedvm.o malloc.o \
|
||||||
|
midend.o misc.o no-icon.o printing.o ps.o random.o solo.o \
|
||||||
|
version.o -lm
|
||||||
|
|
||||||
|
tents.mips: drawing.o dsf.o nestedvm.o malloc.o maxflow.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o tents.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o dsf.o nestedvm.o malloc.o \
|
||||||
|
maxflow.o midend.o misc.o no-icon.o printing.o ps.o random.o \
|
||||||
|
tents.o version.o -lm
|
||||||
|
|
||||||
|
towers.mips: drawing.o nestedvm.o latin.o malloc.o maxflow.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o towers.o tree234.o \
|
||||||
|
version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o nestedvm.o latin.o malloc.o \
|
||||||
|
maxflow.o midend.o misc.o no-icon.o printing.o ps.o random.o \
|
||||||
|
towers.o tree234.o version.o -lm
|
||||||
|
|
||||||
|
tracks.mips: drawing.o dsf.o findloop.o nestedvm.o malloc.o midend.o misc.o \
|
||||||
|
no-icon.o printing.o ps.o random.o tracks.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o dsf.o findloop.o nestedvm.o \
|
||||||
|
malloc.o midend.o misc.o no-icon.o printing.o ps.o random.o \
|
||||||
|
tracks.o version.o -lm
|
||||||
|
|
||||||
|
twiddle.mips: drawing.o nestedvm.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o twiddle.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o nestedvm.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o twiddle.o \
|
||||||
|
version.o -lm
|
||||||
|
|
||||||
|
undead.mips: drawing.o nestedvm.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o undead.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o nestedvm.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o undead.o version.o \
|
||||||
|
-lm
|
||||||
|
|
||||||
|
unequal.mips: drawing.o nestedvm.o latin.o malloc.o maxflow.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o tree234.o \
|
||||||
|
unequal.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o nestedvm.o latin.o malloc.o \
|
||||||
|
maxflow.o midend.o misc.o no-icon.o printing.o ps.o random.o \
|
||||||
|
tree234.o unequal.o version.o -lm
|
||||||
|
|
||||||
|
unruly.mips: drawing.o nestedvm.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o unruly.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o nestedvm.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o unruly.o version.o \
|
||||||
|
-lm
|
||||||
|
|
||||||
|
untangle.mips: drawing.o nestedvm.o malloc.o midend.o misc.o no-icon.o \
|
||||||
|
printing.o ps.o random.o tree234.o untangle.o version.o
|
||||||
|
$(CC) $(XLDFLAGS) -o $@ drawing.o nestedvm.o malloc.o midend.o \
|
||||||
|
misc.o no-icon.o printing.o ps.o random.o tree234.o \
|
||||||
|
untangle.o version.o -lm
|
||||||
|
|
||||||
|
blackbox.o: ./blackbox.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
blackbo3.o: ./blackbox.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
bridges.o: ./bridges.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
bridges3.o: ./bridges.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
combi.o: ./combi.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
cube.o: ./cube.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
cube3.o: ./cube.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
divvy.o: ./divvy.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
dominosa.o: ./dominosa.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
dominos3.o: ./dominosa.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
drawing.o: ./drawing.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
dsf.o: ./dsf.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
fifteen.o: ./fifteen.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
fifteen5.o: ./fifteen.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
fifteen2.o: ./fifteen.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
filling.o: ./filling.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
filling5.o: ./filling.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
filling2.o: ./filling.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
findloop.o: ./findloop.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
flip.o: ./flip.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
flip3.o: ./flip.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
flood.o: ./flood.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
flood3.o: ./flood.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
galaxies.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
galaxie7.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
galaxie4.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_PICTURE_GENERATOR -c $< -o $@
|
||||||
|
galaxie2.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
grid.o: ./grid.c ./puzzles.h ./tree234.h ./grid.h ./penrose.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
nestedvm.o: ./nestedvm.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
guess.o: ./guess.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
guess3.o: ./guess.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
inertia.o: ./inertia.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
inertia3.o: ./inertia.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
keen.o: ./keen.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
keen5.o: ./keen.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
keen2.o: ./keen.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
latin.o: ./latin.c ./puzzles.h ./tree234.h ./maxflow.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
latin8.o: ./latin.c ./puzzles.h ./tree234.h ./maxflow.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_LATIN_TEST -c $< -o $@
|
||||||
|
latin6.o: ./latin.c ./puzzles.h ./tree234.h ./maxflow.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
laydomino.o: ./laydomino.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
lightup.o: ./lightup.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
lightup5.o: ./lightup.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
lightup2.o: ./lightup.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
list.o: ./list.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
loopgen.o: ./loopgen.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
loopy.o: ./loopy.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
loopy5.o: ./loopy.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
loopy2.o: ./loopy.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
magnets.o: ./magnets.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
magnets5.o: ./magnets.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
magnets2.o: ./magnets.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
malloc.o: ./malloc.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
map.o: ./map.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
map5.o: ./map.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
map2.o: ./map.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
maxflow.o: ./maxflow.c ./maxflow.h ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
midend.o: ./midend.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
mines.o: ./mines.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
mines5.o: ./mines.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
mines2.o: ./mines.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_OBFUSCATOR -c $< -o $@
|
||||||
|
misc.o: ./misc.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
net.o: ./net.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
net3.o: ./net.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
netslide.o: ./netslide.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
netslid3.o: ./netslide.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
no-icon.o: ./no-icon.c
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
nullfe.o: ./nullfe.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
nullgame.o: ./nullgame.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
obfusc.o: ./obfusc.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
osx.o: ./osx.m ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
palisade.o: ./palisade.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
palisad3.o: ./palisade.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
pattern.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
pattern7.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
pattern4.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_PICTURE_GENERATOR -c $< -o $@
|
||||||
|
pattern2.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
pearl.o: ./pearl.c ./puzzles.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
pearl5.o: ./pearl.c ./puzzles.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
pearl2.o: ./pearl.c ./puzzles.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
pegs.o: ./pegs.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
pegs3.o: ./pegs.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
penrose.o: ./penrose.c ./puzzles.h ./penrose.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
printing.o: ./printing.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
ps.o: ./ps.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
random.o: ./random.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
range.o: ./range.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
range3.o: ./range.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
rect.o: ./rect.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
rect3.o: ./rect.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
samegame.o: ./samegame.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
samegam3.o: ./samegame.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
signpost.o: ./signpost.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
signpos5.o: ./signpost.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
signpos2.o: ./signpost.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
singles.o: ./singles.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
singles5.o: ./singles.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
singles3.o: ./singles.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
sixteen.o: ./sixteen.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
sixteen3.o: ./sixteen.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
slant.o: ./slant.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
slant5.o: ./slant.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
slant2.o: ./slant.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
solo.o: ./solo.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
solo5.o: ./solo.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
solo2.o: ./solo.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
tdq.o: ./tdq.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
tents.o: ./tents.c ./puzzles.h ./maxflow.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
tents5.o: ./tents.c ./puzzles.h ./maxflow.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
tents3.o: ./tents.c ./puzzles.h ./maxflow.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
towers.o: ./towers.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
towers5.o: ./towers.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
towers2.o: ./towers.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
tracks.o: ./tracks.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
tracks3.o: ./tracks.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
tree234.o: ./tree234.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
twiddle.o: ./twiddle.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
twiddle3.o: ./twiddle.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
undead.o: ./undead.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
undead3.o: ./undead.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
unequal.o: ./unequal.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
unequal5.o: ./unequal.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
unequal2.o: ./unequal.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
unruly.o: ./unruly.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
unruly5.o: ./unruly.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
unruly2.o: ./unruly.c ./puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
untangle.o: ./untangle.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
untangl3.o: ./untangle.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
version.o: ./version.c ./version.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
windows.o: ./windows.c ./puzzles.h ./resource.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
windows1.o: ./windows.c ./puzzles.h ./resource.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
|
||||||
|
.PRECIOUS: %.class
|
||||||
|
%.class: %.mips
|
||||||
|
java -cp $(NESTEDVM)/build:$(NESTEDVM)/upstream/build/classgen/build \
|
||||||
|
org.ibex.nestedvm.Compiler -outformat class -d . \
|
||||||
|
PuzzleEngine $<
|
||||||
|
mv PuzzleEngine.class $@
|
||||||
|
|
||||||
|
org:
|
||||||
|
mkdir -p org/ibex/nestedvm/util
|
||||||
|
cp $(NESTEDVM)/build/org/ibex/nestedvm/Registers.class org/ibex/nestedvm
|
||||||
|
cp $(NESTEDVM)/build/org/ibex/nestedvm/UsermodeConstants.class org/ibex/nestedvm
|
||||||
|
cp $(NESTEDVM)/build/org/ibex/nestedvm/Runtime*.class org/ibex/nestedvm
|
||||||
|
cp $(NESTEDVM)/build/org/ibex/nestedvm/util/Platform*.class org/ibex/nestedvm/util
|
||||||
|
cp $(NESTEDVM)/build/org/ibex/nestedvm/util/Seekable*.class org/ibex/nestedvm/util
|
||||||
|
echo "Main-Class: PuzzleApplet" >applet.manifest
|
||||||
|
|
||||||
|
PuzzleApplet.class: PuzzleApplet.java org
|
||||||
|
javac -source 1.3 -target 1.3 PuzzleApplet.java
|
||||||
|
|
||||||
|
%.jar: %.class PuzzleApplet.class org
|
||||||
|
mv $< PuzzleEngine.class
|
||||||
|
jar cfm $@ applet.manifest PuzzleEngine.class PuzzleApplet*.class org
|
||||||
|
echo '<applet archive="'$@'" code="PuzzleApplet" width="700" height="500"></applet>' >$*.html
|
||||||
|
mv PuzzleEngine.class $<
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -rf *.o *.mips *.class *.html *.jar org applet.manifest
|
574
apps/plugins/puzzles/src/Makefile.osx
Normal file
574
apps/plugins/puzzles/src/Makefile.osx
Normal file
|
@ -0,0 +1,574 @@
|
||||||
|
# Makefile for puzzles under Mac OS X.
|
||||||
|
#
|
||||||
|
# This file was created by `mkfiles.pl' from the `Recipe' file.
|
||||||
|
# DO NOT EDIT THIS FILE DIRECTLY; edit Recipe or mkfiles.pl instead.
|
||||||
|
CC = $(TOOLPATH)gcc
|
||||||
|
LIPO = $(TOOLPATH)lipo
|
||||||
|
|
||||||
|
CFLAGS = -O2 -Wall -Werror -g -I./ -Iicons/
|
||||||
|
LDFLAGS = -framework Cocoa
|
||||||
|
all: Puzzles fifteensolver fillingsolver galaxiespicture galaxiessolver \
|
||||||
|
keensolver latincheck lightupsolver loopysolver \
|
||||||
|
magnetssolver mapsolver mineobfusc obfusc patternpicture \
|
||||||
|
patternsolver pearlbench signpostsolver singlessolver \
|
||||||
|
slantsolver solosolver tentssolver towerssolver \
|
||||||
|
unequalsolver unrulysolver
|
||||||
|
Puzzles_extra = Puzzles.app/Contents/Resources/Help/index.html
|
||||||
|
Puzzles.app/Contents/Resources/Help/index.html: \
|
||||||
|
Puzzles.app/Contents/Resources/Help osx-help.but puzzles.but
|
||||||
|
cd Puzzles.app/Contents/Resources/Help; \
|
||||||
|
halibut --html ../../../../osx-help.but ../../../../puzzles.but
|
||||||
|
Puzzles.app/Contents/Resources/Help: Puzzles.app/Contents/Resources
|
||||||
|
mkdir -p Puzzles.app/Contents/Resources/Help
|
||||||
|
|
||||||
|
release: Puzzles.dmg
|
||||||
|
Puzzles.dmg: Puzzles
|
||||||
|
rm -f raw.dmg
|
||||||
|
hdiutil create -megabytes 5 -layout NONE raw.dmg
|
||||||
|
hdid -nomount raw.dmg > devicename
|
||||||
|
newfs_hfs -v "Simon Tatham's Puzzle Collection" `cat devicename`
|
||||||
|
hdiutil eject `cat devicename`
|
||||||
|
hdid raw.dmg | cut -f1 -d' ' > devicename
|
||||||
|
cp -R Puzzles.app /Volumes/"Simon Tatham's Puzzle Collection"
|
||||||
|
hdiutil eject `cat devicename`
|
||||||
|
rm -f Puzzles.dmg
|
||||||
|
hdiutil convert -format UDCO raw.dmg -o Puzzles.dmg
|
||||||
|
rm -f raw.dmg devicename
|
||||||
|
|
||||||
|
.SUFFIXES: .o .c .m
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Puzzles.app:
|
||||||
|
mkdir -p $@
|
||||||
|
Puzzles.app/Contents: Puzzles.app
|
||||||
|
mkdir -p $@
|
||||||
|
Puzzles.app/Contents/MacOS: Puzzles.app/Contents
|
||||||
|
mkdir -p $@
|
||||||
|
Puzzles.app/Contents/Resources: Puzzles.app/Contents
|
||||||
|
mkdir -p $@
|
||||||
|
Puzzles.app/Contents/Resources/Puzzles.icns: Puzzles.app/Contents/Resources osx.icns
|
||||||
|
cp osx.icns $@
|
||||||
|
Puzzles.app/Contents/Info.plist: Puzzles.app/Contents/Resources osx-info.plist
|
||||||
|
cp osx-info.plist $@
|
||||||
|
Puzzles: Puzzles.app/Contents/MacOS/Puzzles \
|
||||||
|
Puzzles.app/Contents/Resources/Puzzles.icns \
|
||||||
|
Puzzles.app/Contents/Info.plist $(Puzzles_extra)
|
||||||
|
|
||||||
|
Puzzles.i386.bin: blackbo3.i386.o bridges3.i386.o combi.i386.o cube3.i386.o \
|
||||||
|
divvy.i386.o dominos3.i386.o drawing.i386.o dsf.i386.o \
|
||||||
|
fifteen5.i386.o filling5.i386.o findloop.i386.o flip3.i386.o \
|
||||||
|
flood3.i386.o galaxie7.i386.o grid.i386.o guess3.i386.o \
|
||||||
|
inertia3.i386.o keen5.i386.o latin.i386.o laydomino.i386.o \
|
||||||
|
lightup5.i386.o list.i386.o loopgen.i386.o loopy5.i386.o \
|
||||||
|
magnets5.i386.o malloc.i386.o map5.i386.o maxflow.i386.o \
|
||||||
|
midend.i386.o mines5.i386.o misc.i386.o net3.i386.o \
|
||||||
|
netslid3.i386.o osx.i386.o palisad3.i386.o pattern7.i386.o \
|
||||||
|
pearl5.i386.o pegs3.i386.o penrose.i386.o random.i386.o \
|
||||||
|
range3.i386.o rect3.i386.o samegam3.i386.o signpos5.i386.o \
|
||||||
|
singles5.i386.o sixteen3.i386.o slant5.i386.o solo5.i386.o \
|
||||||
|
tdq.i386.o tents5.i386.o towers5.i386.o tracks3.i386.o \
|
||||||
|
tree234.i386.o twiddle3.i386.o undead3.i386.o \
|
||||||
|
unequal5.i386.o unruly5.i386.o untangl3.i386.o \
|
||||||
|
version.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(LDFLAGS) -o $@ \
|
||||||
|
blackbo3.i386.o bridges3.i386.o combi.i386.o cube3.i386.o \
|
||||||
|
divvy.i386.o dominos3.i386.o drawing.i386.o dsf.i386.o \
|
||||||
|
fifteen5.i386.o filling5.i386.o findloop.i386.o flip3.i386.o \
|
||||||
|
flood3.i386.o galaxie7.i386.o grid.i386.o guess3.i386.o \
|
||||||
|
inertia3.i386.o keen5.i386.o latin.i386.o laydomino.i386.o \
|
||||||
|
lightup5.i386.o list.i386.o loopgen.i386.o loopy5.i386.o \
|
||||||
|
magnets5.i386.o malloc.i386.o map5.i386.o maxflow.i386.o \
|
||||||
|
midend.i386.o mines5.i386.o misc.i386.o net3.i386.o \
|
||||||
|
netslid3.i386.o osx.i386.o palisad3.i386.o pattern7.i386.o \
|
||||||
|
pearl5.i386.o pegs3.i386.o penrose.i386.o random.i386.o \
|
||||||
|
range3.i386.o rect3.i386.o samegam3.i386.o signpos5.i386.o \
|
||||||
|
singles5.i386.o sixteen3.i386.o slant5.i386.o solo5.i386.o \
|
||||||
|
tdq.i386.o tents5.i386.o towers5.i386.o tracks3.i386.o \
|
||||||
|
tree234.i386.o twiddle3.i386.o undead3.i386.o \
|
||||||
|
unequal5.i386.o unruly5.i386.o untangl3.i386.o \
|
||||||
|
version.i386.o
|
||||||
|
|
||||||
|
Puzzles.app/Contents/MacOS/Puzzles: Puzzles.app/Contents/MacOS \
|
||||||
|
Puzzles.i386.bin
|
||||||
|
$(LIPO) -create Puzzles.i386.bin -output $@
|
||||||
|
|
||||||
|
fifteensolver.i386: fifteen2.i386.o malloc.i386.o misc.i386.o nullfe.i386.o \
|
||||||
|
random.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
fifteen2.i386.o malloc.i386.o misc.i386.o nullfe.i386.o \
|
||||||
|
random.i386.o
|
||||||
|
|
||||||
|
fifteensolver: fifteensolver.i386
|
||||||
|
$(LIPO) -create fifteensolver.i386 -output $@
|
||||||
|
|
||||||
|
fillingsolver.i386: dsf.i386.o filling2.i386.o malloc.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
dsf.i386.o filling2.i386.o malloc.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o
|
||||||
|
|
||||||
|
fillingsolver: fillingsolver.i386
|
||||||
|
$(LIPO) -create fillingsolver.i386 -output $@
|
||||||
|
|
||||||
|
galaxiespicture.i386: dsf.i386.o galaxie4.i386.o malloc.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
dsf.i386.o galaxie4.i386.o malloc.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o -lm
|
||||||
|
|
||||||
|
galaxiespicture: galaxiespicture.i386
|
||||||
|
$(LIPO) -create galaxiespicture.i386 -output $@
|
||||||
|
|
||||||
|
galaxiessolver.i386: dsf.i386.o galaxie2.i386.o malloc.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
dsf.i386.o galaxie2.i386.o malloc.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o -lm
|
||||||
|
|
||||||
|
galaxiessolver: galaxiessolver.i386
|
||||||
|
$(LIPO) -create galaxiessolver.i386 -output $@
|
||||||
|
|
||||||
|
keensolver.i386: dsf.i386.o keen2.i386.o latin6.i386.o malloc.i386.o \
|
||||||
|
maxflow.i386.o misc.i386.o nullfe.i386.o random.i386.o \
|
||||||
|
tree234.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
dsf.i386.o keen2.i386.o latin6.i386.o malloc.i386.o \
|
||||||
|
maxflow.i386.o misc.i386.o nullfe.i386.o random.i386.o \
|
||||||
|
tree234.i386.o
|
||||||
|
|
||||||
|
keensolver: keensolver.i386
|
||||||
|
$(LIPO) -create keensolver.i386 -output $@
|
||||||
|
|
||||||
|
latincheck.i386: latin8.i386.o malloc.i386.o maxflow.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o tree234.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
latin8.i386.o malloc.i386.o maxflow.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o tree234.i386.o
|
||||||
|
|
||||||
|
latincheck: latincheck.i386
|
||||||
|
$(LIPO) -create latincheck.i386 -output $@
|
||||||
|
|
||||||
|
lightupsolver.i386: combi.i386.o lightup2.i386.o malloc.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
combi.i386.o lightup2.i386.o malloc.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o
|
||||||
|
|
||||||
|
lightupsolver: lightupsolver.i386
|
||||||
|
$(LIPO) -create lightupsolver.i386 -output $@
|
||||||
|
|
||||||
|
loopysolver.i386: dsf.i386.o grid.i386.o loopgen.i386.o loopy2.i386.o \
|
||||||
|
malloc.i386.o misc.i386.o nullfe.i386.o penrose.i386.o \
|
||||||
|
random.i386.o tree234.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
dsf.i386.o grid.i386.o loopgen.i386.o loopy2.i386.o \
|
||||||
|
malloc.i386.o misc.i386.o nullfe.i386.o penrose.i386.o \
|
||||||
|
random.i386.o tree234.i386.o -lm
|
||||||
|
|
||||||
|
loopysolver: loopysolver.i386
|
||||||
|
$(LIPO) -create loopysolver.i386 -output $@
|
||||||
|
|
||||||
|
magnetssolver.i386: laydomino.i386.o magnets2.i386.o malloc.i386.o \
|
||||||
|
misc.i386.o nullfe.i386.o random.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
laydomino.i386.o magnets2.i386.o malloc.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o -lm
|
||||||
|
|
||||||
|
magnetssolver: magnetssolver.i386
|
||||||
|
$(LIPO) -create magnetssolver.i386 -output $@
|
||||||
|
|
||||||
|
mapsolver.i386: dsf.i386.o malloc.i386.o map2.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
dsf.i386.o malloc.i386.o map2.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o -lm
|
||||||
|
|
||||||
|
mapsolver: mapsolver.i386
|
||||||
|
$(LIPO) -create mapsolver.i386 -output $@
|
||||||
|
|
||||||
|
mineobfusc.i386: malloc.i386.o mines2.i386.o misc.i386.o nullfe.i386.o \
|
||||||
|
random.i386.o tree234.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
malloc.i386.o mines2.i386.o misc.i386.o nullfe.i386.o \
|
||||||
|
random.i386.o tree234.i386.o
|
||||||
|
|
||||||
|
mineobfusc: mineobfusc.i386
|
||||||
|
$(LIPO) -create mineobfusc.i386 -output $@
|
||||||
|
|
||||||
|
obfusc.i386: malloc.i386.o misc.i386.o nullfe.i386.o obfusc.i386.o \
|
||||||
|
random.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
malloc.i386.o misc.i386.o nullfe.i386.o obfusc.i386.o \
|
||||||
|
random.i386.o
|
||||||
|
|
||||||
|
obfusc: obfusc.i386
|
||||||
|
$(LIPO) -create obfusc.i386 -output $@
|
||||||
|
|
||||||
|
patternpicture.i386: malloc.i386.o misc.i386.o nullfe.i386.o pattern4.i386.o \
|
||||||
|
random.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
malloc.i386.o misc.i386.o nullfe.i386.o pattern4.i386.o \
|
||||||
|
random.i386.o
|
||||||
|
|
||||||
|
patternpicture: patternpicture.i386
|
||||||
|
$(LIPO) -create patternpicture.i386 -output $@
|
||||||
|
|
||||||
|
patternsolver.i386: malloc.i386.o misc.i386.o nullfe.i386.o pattern2.i386.o \
|
||||||
|
random.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
malloc.i386.o misc.i386.o nullfe.i386.o pattern2.i386.o \
|
||||||
|
random.i386.o
|
||||||
|
|
||||||
|
patternsolver: patternsolver.i386
|
||||||
|
$(LIPO) -create patternsolver.i386 -output $@
|
||||||
|
|
||||||
|
pearlbench.i386: dsf.i386.o grid.i386.o loopgen.i386.o malloc.i386.o \
|
||||||
|
misc.i386.o nullfe.i386.o pearl2.i386.o penrose.i386.o \
|
||||||
|
random.i386.o tdq.i386.o tree234.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
dsf.i386.o grid.i386.o loopgen.i386.o malloc.i386.o \
|
||||||
|
misc.i386.o nullfe.i386.o pearl2.i386.o penrose.i386.o \
|
||||||
|
random.i386.o tdq.i386.o tree234.i386.o -lm
|
||||||
|
|
||||||
|
pearlbench: pearlbench.i386
|
||||||
|
$(LIPO) -create pearlbench.i386 -output $@
|
||||||
|
|
||||||
|
signpostsolver.i386: dsf.i386.o malloc.i386.o misc.i386.o nullfe.i386.o \
|
||||||
|
random.i386.o signpos2.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
dsf.i386.o malloc.i386.o misc.i386.o nullfe.i386.o \
|
||||||
|
random.i386.o signpos2.i386.o -lm
|
||||||
|
|
||||||
|
signpostsolver: signpostsolver.i386
|
||||||
|
$(LIPO) -create signpostsolver.i386 -output $@
|
||||||
|
|
||||||
|
singlessolver.i386: dsf.i386.o latin.i386.o malloc.i386.o maxflow.i386.o \
|
||||||
|
misc.i386.o nullfe.i386.o random.i386.o singles3.i386.o \
|
||||||
|
tree234.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
dsf.i386.o latin.i386.o malloc.i386.o maxflow.i386.o \
|
||||||
|
misc.i386.o nullfe.i386.o random.i386.o singles3.i386.o \
|
||||||
|
tree234.i386.o
|
||||||
|
|
||||||
|
singlessolver: singlessolver.i386
|
||||||
|
$(LIPO) -create singlessolver.i386 -output $@
|
||||||
|
|
||||||
|
slantsolver.i386: dsf.i386.o findloop.i386.o malloc.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o slant2.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
dsf.i386.o findloop.i386.o malloc.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o slant2.i386.o
|
||||||
|
|
||||||
|
slantsolver: slantsolver.i386
|
||||||
|
$(LIPO) -create slantsolver.i386 -output $@
|
||||||
|
|
||||||
|
solosolver.i386: divvy.i386.o dsf.i386.o malloc.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o solo2.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
divvy.i386.o dsf.i386.o malloc.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o solo2.i386.o
|
||||||
|
|
||||||
|
solosolver: solosolver.i386
|
||||||
|
$(LIPO) -create solosolver.i386 -output $@
|
||||||
|
|
||||||
|
tentssolver.i386: dsf.i386.o malloc.i386.o maxflow.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o tents3.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
dsf.i386.o malloc.i386.o maxflow.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o tents3.i386.o
|
||||||
|
|
||||||
|
tentssolver: tentssolver.i386
|
||||||
|
$(LIPO) -create tentssolver.i386 -output $@
|
||||||
|
|
||||||
|
towerssolver.i386: latin6.i386.o malloc.i386.o maxflow.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o towers2.i386.o tree234.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
latin6.i386.o malloc.i386.o maxflow.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o towers2.i386.o tree234.i386.o
|
||||||
|
|
||||||
|
towerssolver: towerssolver.i386
|
||||||
|
$(LIPO) -create towerssolver.i386 -output $@
|
||||||
|
|
||||||
|
unequalsolver.i386: latin6.i386.o malloc.i386.o maxflow.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o tree234.i386.o unequal2.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
latin6.i386.o malloc.i386.o maxflow.i386.o misc.i386.o \
|
||||||
|
nullfe.i386.o random.i386.o tree234.i386.o unequal2.i386.o
|
||||||
|
|
||||||
|
unequalsolver: unequalsolver.i386
|
||||||
|
$(LIPO) -create unequalsolver.i386 -output $@
|
||||||
|
|
||||||
|
unrulysolver.i386: malloc.i386.o misc.i386.o nullfe.i386.o random.i386.o \
|
||||||
|
unruly2.i386.o
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(ULDFLAGS) -o $@ \
|
||||||
|
malloc.i386.o misc.i386.o nullfe.i386.o random.i386.o \
|
||||||
|
unruly2.i386.o
|
||||||
|
|
||||||
|
unrulysolver: unrulysolver.i386
|
||||||
|
$(LIPO) -create unrulysolver.i386 -output $@
|
||||||
|
|
||||||
|
blackbox.i386.o: ./blackbox.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
blackbo3.i386.o: ./blackbox.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
bridges.i386.o: ./bridges.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
bridges3.i386.o: ./bridges.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
combi.i386.o: ./combi.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
cube.i386.o: ./cube.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
cube3.i386.o: ./cube.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
divvy.i386.o: ./divvy.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
dominosa.i386.o: ./dominosa.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
dominos3.i386.o: ./dominosa.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
drawing.i386.o: ./drawing.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
dsf.i386.o: ./dsf.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
fifteen.i386.o: ./fifteen.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
fifteen5.i386.o: ./fifteen.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
fifteen2.i386.o: ./fifteen.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
filling.i386.o: ./filling.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
filling5.i386.o: ./filling.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
filling2.i386.o: ./filling.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
findloop.i386.o: ./findloop.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
flip.i386.o: ./flip.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
flip3.i386.o: ./flip.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
flood.i386.o: ./flood.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
flood3.i386.o: ./flood.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
galaxies.i386.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
galaxie7.i386.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
galaxie4.i386.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_PICTURE_GENERATOR -c $< -o $@
|
||||||
|
galaxie2.i386.o: ./galaxies.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
grid.i386.o: ./grid.c ./puzzles.h ./tree234.h ./grid.h ./penrose.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
gtk.i386.o: ./gtk.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
guess.i386.o: ./guess.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
guess3.i386.o: ./guess.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
inertia.i386.o: ./inertia.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
inertia3.i386.o: ./inertia.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
keen.i386.o: ./keen.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
keen5.i386.o: ./keen.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
keen2.i386.o: ./keen.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
latin.i386.o: ./latin.c ./puzzles.h ./tree234.h ./maxflow.h ./latin.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
latin8.i386.o: ./latin.c ./puzzles.h ./tree234.h ./maxflow.h ./latin.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_LATIN_TEST -c $< -o $@
|
||||||
|
latin6.i386.o: ./latin.c ./puzzles.h ./tree234.h ./maxflow.h ./latin.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
laydomino.i386.o: ./laydomino.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
lightup.i386.o: ./lightup.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
lightup5.i386.o: ./lightup.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
lightup2.i386.o: ./lightup.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
list.i386.o: ./list.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
loopgen.i386.o: ./loopgen.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
loopy.i386.o: ./loopy.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
loopy5.i386.o: ./loopy.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
loopy2.i386.o: ./loopy.c ./puzzles.h ./tree234.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
magnets.i386.o: ./magnets.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
magnets5.i386.o: ./magnets.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
magnets2.i386.o: ./magnets.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
malloc.i386.o: ./malloc.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
map.i386.o: ./map.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
map5.i386.o: ./map.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
map2.i386.o: ./map.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
maxflow.i386.o: ./maxflow.c ./maxflow.h ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
midend.i386.o: ./midend.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
mines.i386.o: ./mines.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
mines5.i386.o: ./mines.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
mines2.i386.o: ./mines.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_OBFUSCATOR -c $< -o $@
|
||||||
|
misc.i386.o: ./misc.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
net.i386.o: ./net.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
net3.i386.o: ./net.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
netslide.i386.o: ./netslide.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
netslid3.i386.o: ./netslide.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
no-icon.i386.o: ./no-icon.c
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
nullfe.i386.o: ./nullfe.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
nullgame.i386.o: ./nullgame.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
obfusc.i386.o: ./obfusc.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
osx.i386.o: ./osx.m ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 -x objective-c $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
palisade.i386.o: ./palisade.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
palisad3.i386.o: ./palisade.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
pattern.i386.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
pattern7.i386.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
pattern4.i386.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_PICTURE_GENERATOR -c $< -o $@
|
||||||
|
pattern2.i386.o: ./pattern.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
pearl.i386.o: ./pearl.c ./puzzles.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
pearl5.i386.o: ./pearl.c ./puzzles.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
pearl2.i386.o: ./pearl.c ./puzzles.h ./grid.h ./loopgen.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
pegs.i386.o: ./pegs.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
pegs3.i386.o: ./pegs.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
penrose.i386.o: ./penrose.c ./puzzles.h ./penrose.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
printing.i386.o: ./printing.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
ps.i386.o: ./ps.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
random.i386.o: ./random.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
range.i386.o: ./range.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
range3.i386.o: ./range.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
rect.i386.o: ./rect.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
rect3.i386.o: ./rect.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
samegame.i386.o: ./samegame.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
samegam3.i386.o: ./samegame.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
signpost.i386.o: ./signpost.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
signpos5.i386.o: ./signpost.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
signpos2.i386.o: ./signpost.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
singles.i386.o: ./singles.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
singles5.i386.o: ./singles.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
singles3.i386.o: ./singles.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
sixteen.i386.o: ./sixteen.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
sixteen3.i386.o: ./sixteen.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
slant.i386.o: ./slant.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
slant5.i386.o: ./slant.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
slant2.i386.o: ./slant.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
solo.i386.o: ./solo.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
solo5.i386.o: ./solo.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
solo2.i386.o: ./solo.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
tdq.i386.o: ./tdq.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
tents.i386.o: ./tents.c ./puzzles.h ./maxflow.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
tents5.i386.o: ./tents.c ./puzzles.h ./maxflow.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
tents3.i386.o: ./tents.c ./puzzles.h ./maxflow.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
towers.i386.o: ./towers.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
towers5.i386.o: ./towers.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
towers2.i386.o: ./towers.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
tracks.i386.o: ./tracks.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
tracks3.i386.o: ./tracks.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
tree234.i386.o: ./tree234.c ./tree234.h ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
twiddle.i386.o: ./twiddle.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
twiddle3.i386.o: ./twiddle.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
undead.i386.o: ./undead.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
undead3.i386.o: ./undead.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
unequal.i386.o: ./unequal.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
unequal5.i386.o: ./unequal.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
unequal2.i386.o: ./unequal.c ./puzzles.h ./latin.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
unruly.i386.o: ./unruly.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
unruly5.i386.o: ./unruly.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
unruly2.i386.o: ./unruly.c ./puzzles.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DSTANDALONE_SOLVER -c $< -o $@
|
||||||
|
untangle.i386.o: ./untangle.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
untangl3.i386.o: ./untangle.c ./puzzles.h ./tree234.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
version.i386.o: ./version.c ./version.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
windows.i386.o: ./windows.c ./puzzles.h ./resource.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -c $< -o $@
|
||||||
|
windows1.i386.o: ./windows.c ./puzzles.h ./resource.h
|
||||||
|
$(CC) -arch i386 -mmacosx-version-min=10.4 $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) -DCOMBINED -c $< -o $@
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f *.o *.dmg fifteensolver fifteensolver.i386 fillingsolver fillingsolver.i386 galaxiespicture galaxiespicture.i386 galaxiessolver galaxiessolver.i386 keensolver keensolver.i386 latincheck latincheck.i386 lightupsolver lightupsolver.i386 loopysolver loopysolver.i386 magnetssolver magnetssolver.i386 mapsolver mapsolver.i386 mineobfusc mineobfusc.i386 obfusc obfusc.i386 patternpicture patternpicture.i386 patternsolver patternsolver.i386 pearlbench pearlbench.i386 signpostsolver signpostsolver.i386 singlessolver singlessolver.i386 slantsolver slantsolver.i386 solosolver solosolver.i386 tentssolver tentssolver.i386 towerssolver towerssolver.i386 unequalsolver unequalsolver.i386 unrulysolver unrulysolver.i386
|
||||||
|
rm -rf *.app
|
1040
apps/plugins/puzzles/src/Makefile.vc
Normal file
1040
apps/plugins/puzzles/src/Makefile.vc
Normal file
File diff suppressed because it is too large
Load diff
808
apps/plugins/puzzles/src/Makefile.wce
Normal file
808
apps/plugins/puzzles/src/Makefile.wce
Normal file
|
@ -0,0 +1,808 @@
|
||||||
|
# Makefile for puzzles on PocketPC using eMbedded Visual C.
|
||||||
|
#
|
||||||
|
# This file was created by `mkfiles.pl' from the `Recipe' file.
|
||||||
|
# DO NOT EDIT THIS FILE DIRECTLY; edit Recipe or mkfiles.pl instead.
|
||||||
|
|
||||||
|
# If you rename this file to `Makefile', you should change this line,
|
||||||
|
# so that the .rsp files still depend on the correct makefile.
|
||||||
|
MAKEFILE = Makefile.wce
|
||||||
|
|
||||||
|
# This makefile expects the environment to have been set up by one
|
||||||
|
# of the PocketPC batch files wcearmv4.bat and wceemulator.bat. No
|
||||||
|
# other build targets are currently supported, because they would
|
||||||
|
# need a section in this if statement.
|
||||||
|
!if "$(TARGETCPU)" == "emulator"
|
||||||
|
PLATFORM_DEFS=/D "_i386_" /D "i_386_" /D "_X86_" /D "x86"
|
||||||
|
CC=cl
|
||||||
|
BASELIBS=commctrl.lib coredll.lib corelibc.lib aygshell.lib
|
||||||
|
MACHINE=IX86
|
||||||
|
!else
|
||||||
|
PLATFORM_DEFS=/D "ARM" /D "_ARM_" /D "ARMV4"
|
||||||
|
CC=clarm
|
||||||
|
BASELIBS=commctrl.lib coredll.lib aygshell.lib
|
||||||
|
MACHINE=ARM
|
||||||
|
!endif
|
||||||
|
|
||||||
|
# C compilation flags
|
||||||
|
CFLAGS = /nologo /W3 /O1 /MC /D _WIN32_WCE=420 /D "WIN32_PLATFORM_PSPC=400" /D UNDER_CE=420 \
|
||||||
|
$(PLATFORM_DEFS) \
|
||||||
|
/D "UNICODE" /D "_UNICODE" /D "NDEBUG" /D "NO_HTMLHELP"
|
||||||
|
|
||||||
|
LFLAGS = /nologo /incremental:no \
|
||||||
|
/base:0x00010000 /stack:0x10000,0x1000 /entry:WinMainCRTStartup \
|
||||||
|
/nodefaultlib:libc.lib /nodefaultlib:libcmt.lib /nodefaultlib:msvcrt.lib /nodefaultlib:OLDNAMES.lib \
|
||||||
|
/subsystem:windowsce,4.20 /align:4096 /MACHINE:$(MACHINE)
|
||||||
|
|
||||||
|
RCFL = /d UNDER_CE=420 /d _WIN32_WCE=420 /d "WIN32_PLATFORM_PSPC=400" \
|
||||||
|
$(PLATFORM_DEFS) \
|
||||||
|
/d "NDEBUG" /d "UNICODE" /d "_UNICODE"
|
||||||
|
|
||||||
|
all: blackbox.exe bridges.exe cube.exe dominosa.exe fifteen.exe filling.exe \
|
||||||
|
flip.exe flood.exe galaxies.exe guess.exe inertia.exe \
|
||||||
|
keen.exe lightup.exe loopy.exe magnets.exe map.exe mines.exe \
|
||||||
|
netgame.exe netslide.exe nullgame.exe palisade.exe \
|
||||||
|
pattern.exe pearl.exe pegs.exe puzzles.exe range.exe \
|
||||||
|
rect.exe samegame.exe signpost.exe singles.exe sixteen.exe \
|
||||||
|
slant.exe solo.exe tents.exe towers.exe tracks.exe \
|
||||||
|
twiddle.exe undead.exe unequal.exe unruly.exe untangle.exe
|
||||||
|
|
||||||
|
blackbox.exe: blackbox.obj drawing.obj malloc.obj midend.obj misc.obj \
|
||||||
|
noicon.res printing.obj random.obj version.obj windows.obj \
|
||||||
|
blackbox.rsp
|
||||||
|
link $(LFLAGS) -out:blackbox.exe -map:blackbox.map @blackbox.rsp
|
||||||
|
|
||||||
|
bridges.exe: bridges.obj drawing.obj dsf.obj findloop.obj malloc.obj \
|
||||||
|
midend.obj misc.obj noicon.res printing.obj random.obj \
|
||||||
|
version.obj windows.obj bridges.rsp
|
||||||
|
link $(LFLAGS) -out:bridges.exe -map:bridges.map @bridges.rsp
|
||||||
|
|
||||||
|
cube.exe: cube.obj drawing.obj malloc.obj midend.obj misc.obj noicon.res \
|
||||||
|
printing.obj random.obj version.obj windows.obj cube.rsp
|
||||||
|
link $(LFLAGS) -out:cube.exe -map:cube.map @cube.rsp
|
||||||
|
|
||||||
|
dominosa.exe: dominosa.obj drawing.obj laydomino.obj malloc.obj midend.obj \
|
||||||
|
misc.obj noicon.res printing.obj random.obj version.obj \
|
||||||
|
windows.obj dominosa.rsp
|
||||||
|
link $(LFLAGS) -out:dominosa.exe -map:dominosa.map @dominosa.rsp
|
||||||
|
|
||||||
|
fifteen.exe: drawing.obj fifteen.obj malloc.obj midend.obj misc.obj \
|
||||||
|
noicon.res printing.obj random.obj version.obj windows.obj \
|
||||||
|
fifteen.rsp
|
||||||
|
link $(LFLAGS) -out:fifteen.exe -map:fifteen.map @fifteen.rsp
|
||||||
|
|
||||||
|
filling.exe: drawing.obj dsf.obj filling.obj malloc.obj midend.obj misc.obj \
|
||||||
|
noicon.res printing.obj random.obj version.obj windows.obj \
|
||||||
|
filling.rsp
|
||||||
|
link $(LFLAGS) -out:filling.exe -map:filling.map @filling.rsp
|
||||||
|
|
||||||
|
flip.exe: drawing.obj flip.obj malloc.obj midend.obj misc.obj noicon.res \
|
||||||
|
printing.obj random.obj tree234.obj version.obj windows.obj \
|
||||||
|
flip.rsp
|
||||||
|
link $(LFLAGS) -out:flip.exe -map:flip.map @flip.rsp
|
||||||
|
|
||||||
|
flood.exe: drawing.obj flood.obj malloc.obj midend.obj misc.obj noicon.res \
|
||||||
|
printing.obj random.obj version.obj windows.obj flood.rsp
|
||||||
|
link $(LFLAGS) -out:flood.exe -map:flood.map @flood.rsp
|
||||||
|
|
||||||
|
galaxies.exe: drawing.obj dsf.obj galaxies.obj malloc.obj midend.obj \
|
||||||
|
misc.obj noicon.res printing.obj random.obj version.obj \
|
||||||
|
windows.obj galaxies.rsp
|
||||||
|
link $(LFLAGS) -out:galaxies.exe -map:galaxies.map @galaxies.rsp
|
||||||
|
|
||||||
|
guess.exe: drawing.obj guess.obj malloc.obj midend.obj misc.obj noicon.res \
|
||||||
|
printing.obj random.obj version.obj windows.obj guess.rsp
|
||||||
|
link $(LFLAGS) -out:guess.exe -map:guess.map @guess.rsp
|
||||||
|
|
||||||
|
inertia.exe: drawing.obj inertia.obj malloc.obj midend.obj misc.obj \
|
||||||
|
noicon.res printing.obj random.obj version.obj windows.obj \
|
||||||
|
inertia.rsp
|
||||||
|
link $(LFLAGS) -out:inertia.exe -map:inertia.map @inertia.rsp
|
||||||
|
|
||||||
|
keen.exe: drawing.obj dsf.obj keen.obj latin.obj malloc.obj maxflow.obj \
|
||||||
|
midend.obj misc.obj noicon.res printing.obj random.obj \
|
||||||
|
tree234.obj version.obj windows.obj keen.rsp
|
||||||
|
link $(LFLAGS) -out:keen.exe -map:keen.map @keen.rsp
|
||||||
|
|
||||||
|
lightup.exe: combi.obj drawing.obj lightup.obj malloc.obj midend.obj \
|
||||||
|
misc.obj noicon.res printing.obj random.obj version.obj \
|
||||||
|
windows.obj lightup.rsp
|
||||||
|
link $(LFLAGS) -out:lightup.exe -map:lightup.map @lightup.rsp
|
||||||
|
|
||||||
|
loopy.exe: drawing.obj dsf.obj grid.obj loopgen.obj loopy.obj malloc.obj \
|
||||||
|
midend.obj misc.obj noicon.res penrose.obj printing.obj \
|
||||||
|
random.obj tree234.obj version.obj windows.obj loopy.rsp
|
||||||
|
link $(LFLAGS) -out:loopy.exe -map:loopy.map @loopy.rsp
|
||||||
|
|
||||||
|
magnets.exe: drawing.obj laydomino.obj magnets.obj malloc.obj midend.obj \
|
||||||
|
misc.obj noicon.res printing.obj random.obj version.obj \
|
||||||
|
windows.obj magnets.rsp
|
||||||
|
link $(LFLAGS) -out:magnets.exe -map:magnets.map @magnets.rsp
|
||||||
|
|
||||||
|
map.exe: drawing.obj dsf.obj malloc.obj map.obj midend.obj misc.obj \
|
||||||
|
noicon.res printing.obj random.obj version.obj windows.obj \
|
||||||
|
map.rsp
|
||||||
|
link $(LFLAGS) -out:map.exe -map:map.map @map.rsp
|
||||||
|
|
||||||
|
mines.exe: drawing.obj malloc.obj midend.obj mines.obj misc.obj noicon.res \
|
||||||
|
printing.obj random.obj tree234.obj version.obj windows.obj \
|
||||||
|
mines.rsp
|
||||||
|
link $(LFLAGS) -out:mines.exe -map:mines.map @mines.rsp
|
||||||
|
|
||||||
|
netgame.exe: drawing.obj dsf.obj findloop.obj malloc.obj midend.obj misc.obj \
|
||||||
|
net.obj noicon.res printing.obj random.obj tree234.obj \
|
||||||
|
version.obj windows.obj netgame.rsp
|
||||||
|
link $(LFLAGS) -out:netgame.exe -map:netgame.map @netgame.rsp
|
||||||
|
|
||||||
|
netslide.exe: drawing.obj malloc.obj midend.obj misc.obj netslide.obj \
|
||||||
|
noicon.res printing.obj random.obj tree234.obj version.obj \
|
||||||
|
windows.obj netslide.rsp
|
||||||
|
link $(LFLAGS) -out:netslide.exe -map:netslide.map @netslide.rsp
|
||||||
|
|
||||||
|
nullgame.exe: drawing.obj malloc.obj midend.obj misc.obj noicon.res \
|
||||||
|
nullgame.obj printing.obj random.obj version.obj windows.obj \
|
||||||
|
nullgame.rsp
|
||||||
|
link $(LFLAGS) -out:nullgame.exe -map:nullgame.map @nullgame.rsp
|
||||||
|
|
||||||
|
palisade.exe: divvy.obj drawing.obj dsf.obj malloc.obj midend.obj misc.obj \
|
||||||
|
noicon.res palisade.obj printing.obj random.obj version.obj \
|
||||||
|
windows.obj palisade.rsp
|
||||||
|
link $(LFLAGS) -out:palisade.exe -map:palisade.map @palisade.rsp
|
||||||
|
|
||||||
|
pattern.exe: drawing.obj malloc.obj midend.obj misc.obj noicon.res \
|
||||||
|
pattern.obj printing.obj random.obj version.obj windows.obj \
|
||||||
|
pattern.rsp
|
||||||
|
link $(LFLAGS) -out:pattern.exe -map:pattern.map @pattern.rsp
|
||||||
|
|
||||||
|
pearl.exe: drawing.obj dsf.obj grid.obj loopgen.obj malloc.obj midend.obj \
|
||||||
|
misc.obj pearl.obj penrose.obj printing.obj random.obj \
|
||||||
|
tdq.obj tree234.obj version.obj windows.obj pearl.rsp
|
||||||
|
link $(LFLAGS) -out:pearl.exe -map:pearl.map @pearl.rsp
|
||||||
|
|
||||||
|
pegs.exe: drawing.obj malloc.obj midend.obj misc.obj noicon.res pegs.obj \
|
||||||
|
printing.obj random.obj tree234.obj version.obj windows.obj \
|
||||||
|
pegs.rsp
|
||||||
|
link $(LFLAGS) -out:pegs.exe -map:pegs.map @pegs.rsp
|
||||||
|
|
||||||
|
puzzles.exe: blackbo3.obj bridges3.obj combi.obj cube3.obj divvy.obj \
|
||||||
|
dominos3.obj drawing.obj dsf.obj fifteen5.obj filling5.obj \
|
||||||
|
findloop.obj flip3.obj flood3.obj galaxie7.obj grid.obj \
|
||||||
|
guess3.obj inertia3.obj keen5.obj latin.obj laydomino.obj \
|
||||||
|
lightup5.obj list.obj loopgen.obj loopy5.obj magnets5.obj \
|
||||||
|
malloc.obj map5.obj maxflow.obj midend.obj mines5.obj \
|
||||||
|
misc.obj net3.obj netslid3.obj noicon.res palisad3.obj \
|
||||||
|
pattern7.obj pearl5.obj pegs3.obj penrose.obj printing.obj \
|
||||||
|
random.obj range3.obj rect3.obj samegam3.obj signpos5.obj \
|
||||||
|
singles5.obj sixteen3.obj slant5.obj solo5.obj tdq.obj \
|
||||||
|
tents5.obj towers5.obj tracks3.obj tree234.obj twiddle3.obj \
|
||||||
|
undead3.obj unequal5.obj unruly5.obj untangl3.obj \
|
||||||
|
version.obj windows1.obj puzzles.rsp
|
||||||
|
link $(LFLAGS) -out:puzzles.exe -map:puzzles.map @puzzles.rsp
|
||||||
|
|
||||||
|
range.exe: drawing.obj dsf.obj malloc.obj midend.obj misc.obj noicon.res \
|
||||||
|
printing.obj random.obj range.obj version.obj windows.obj \
|
||||||
|
range.rsp
|
||||||
|
link $(LFLAGS) -out:range.exe -map:range.map @range.rsp
|
||||||
|
|
||||||
|
rect.exe: drawing.obj malloc.obj midend.obj misc.obj noicon.res printing.obj \
|
||||||
|
random.obj rect.obj version.obj windows.obj rect.rsp
|
||||||
|
link $(LFLAGS) -out:rect.exe -map:rect.map @rect.rsp
|
||||||
|
|
||||||
|
samegame.exe: drawing.obj malloc.obj midend.obj misc.obj noicon.res \
|
||||||
|
printing.obj random.obj samegame.obj version.obj windows.obj \
|
||||||
|
samegame.rsp
|
||||||
|
link $(LFLAGS) -out:samegame.exe -map:samegame.map @samegame.rsp
|
||||||
|
|
||||||
|
signpost.exe: drawing.obj dsf.obj malloc.obj midend.obj misc.obj noicon.res \
|
||||||
|
printing.obj random.obj signpost.obj version.obj windows.obj \
|
||||||
|
signpost.rsp
|
||||||
|
link $(LFLAGS) -out:signpost.exe -map:signpost.map @signpost.rsp
|
||||||
|
|
||||||
|
singles.exe: drawing.obj dsf.obj latin.obj malloc.obj maxflow.obj midend.obj \
|
||||||
|
misc.obj noicon.res printing.obj random.obj singles.obj \
|
||||||
|
tree234.obj version.obj windows.obj singles.rsp
|
||||||
|
link $(LFLAGS) -out:singles.exe -map:singles.map @singles.rsp
|
||||||
|
|
||||||
|
sixteen.exe: drawing.obj malloc.obj midend.obj misc.obj noicon.res \
|
||||||
|
printing.obj random.obj sixteen.obj version.obj windows.obj \
|
||||||
|
sixteen.rsp
|
||||||
|
link $(LFLAGS) -out:sixteen.exe -map:sixteen.map @sixteen.rsp
|
||||||
|
|
||||||
|
slant.exe: drawing.obj dsf.obj findloop.obj malloc.obj midend.obj misc.obj \
|
||||||
|
noicon.res printing.obj random.obj slant.obj version.obj \
|
||||||
|
windows.obj slant.rsp
|
||||||
|
link $(LFLAGS) -out:slant.exe -map:slant.map @slant.rsp
|
||||||
|
|
||||||
|
solo.exe: divvy.obj drawing.obj dsf.obj malloc.obj midend.obj misc.obj \
|
||||||
|
noicon.res printing.obj random.obj solo.obj version.obj \
|
||||||
|
windows.obj solo.rsp
|
||||||
|
link $(LFLAGS) -out:solo.exe -map:solo.map @solo.rsp
|
||||||
|
|
||||||
|
tents.exe: drawing.obj dsf.obj malloc.obj maxflow.obj midend.obj misc.obj \
|
||||||
|
noicon.res printing.obj random.obj tents.obj version.obj \
|
||||||
|
windows.obj tents.rsp
|
||||||
|
link $(LFLAGS) -out:tents.exe -map:tents.map @tents.rsp
|
||||||
|
|
||||||
|
towers.exe: drawing.obj latin.obj malloc.obj maxflow.obj midend.obj misc.obj \
|
||||||
|
noicon.res printing.obj random.obj towers.obj tree234.obj \
|
||||||
|
version.obj windows.obj towers.rsp
|
||||||
|
link $(LFLAGS) -out:towers.exe -map:towers.map @towers.rsp
|
||||||
|
|
||||||
|
tracks.exe: drawing.obj dsf.obj findloop.obj malloc.obj midend.obj misc.obj \
|
||||||
|
noicon.res printing.obj random.obj tracks.obj version.obj \
|
||||||
|
windows.obj tracks.rsp
|
||||||
|
link $(LFLAGS) -out:tracks.exe -map:tracks.map @tracks.rsp
|
||||||
|
|
||||||
|
twiddle.exe: drawing.obj malloc.obj midend.obj misc.obj noicon.res \
|
||||||
|
printing.obj random.obj twiddle.obj version.obj windows.obj \
|
||||||
|
twiddle.rsp
|
||||||
|
link $(LFLAGS) -out:twiddle.exe -map:twiddle.map @twiddle.rsp
|
||||||
|
|
||||||
|
undead.exe: drawing.obj malloc.obj midend.obj misc.obj noicon.res \
|
||||||
|
printing.obj random.obj undead.obj version.obj windows.obj \
|
||||||
|
undead.rsp
|
||||||
|
link $(LFLAGS) -out:undead.exe -map:undead.map @undead.rsp
|
||||||
|
|
||||||
|
unequal.exe: drawing.obj latin.obj malloc.obj maxflow.obj midend.obj \
|
||||||
|
misc.obj noicon.res printing.obj random.obj tree234.obj \
|
||||||
|
unequal.obj version.obj windows.obj unequal.rsp
|
||||||
|
link $(LFLAGS) -out:unequal.exe -map:unequal.map @unequal.rsp
|
||||||
|
|
||||||
|
unruly.exe: drawing.obj malloc.obj midend.obj misc.obj noicon.res \
|
||||||
|
printing.obj random.obj unruly.obj version.obj windows.obj \
|
||||||
|
unruly.rsp
|
||||||
|
link $(LFLAGS) -out:unruly.exe -map:unruly.map @unruly.rsp
|
||||||
|
|
||||||
|
untangle.exe: drawing.obj malloc.obj midend.obj misc.obj noicon.res \
|
||||||
|
printing.obj random.obj tree234.obj untangle.obj version.obj \
|
||||||
|
windows.obj untangle.rsp
|
||||||
|
link $(LFLAGS) -out:untangle.exe -map:untangle.map @untangle.rsp
|
||||||
|
|
||||||
|
blackbox.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > blackbox.rsp
|
||||||
|
echo blackbox.obj drawing.obj malloc.obj midend.obj >> blackbox.rsp
|
||||||
|
echo misc.obj noicon.res printing.obj random.obj >> blackbox.rsp
|
||||||
|
echo version.obj windows.obj >> blackbox.rsp
|
||||||
|
|
||||||
|
bridges.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > bridges.rsp
|
||||||
|
echo bridges.obj drawing.obj dsf.obj findloop.obj >> bridges.rsp
|
||||||
|
echo malloc.obj midend.obj misc.obj noicon.res >> bridges.rsp
|
||||||
|
echo printing.obj random.obj version.obj windows.obj >> bridges.rsp
|
||||||
|
|
||||||
|
cube.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > cube.rsp
|
||||||
|
echo cube.obj drawing.obj malloc.obj midend.obj >> cube.rsp
|
||||||
|
echo misc.obj noicon.res printing.obj random.obj >> cube.rsp
|
||||||
|
echo version.obj windows.obj >> cube.rsp
|
||||||
|
|
||||||
|
dominosa.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > dominosa.rsp
|
||||||
|
echo dominosa.obj drawing.obj laydomino.obj malloc.obj >> dominosa.rsp
|
||||||
|
echo midend.obj misc.obj noicon.res printing.obj >> dominosa.rsp
|
||||||
|
echo random.obj version.obj windows.obj >> dominosa.rsp
|
||||||
|
|
||||||
|
fifteen.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > fifteen.rsp
|
||||||
|
echo drawing.obj fifteen.obj malloc.obj midend.obj >> fifteen.rsp
|
||||||
|
echo misc.obj noicon.res printing.obj random.obj >> fifteen.rsp
|
||||||
|
echo version.obj windows.obj >> fifteen.rsp
|
||||||
|
|
||||||
|
filling.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > filling.rsp
|
||||||
|
echo drawing.obj dsf.obj filling.obj malloc.obj >> filling.rsp
|
||||||
|
echo midend.obj misc.obj noicon.res printing.obj >> filling.rsp
|
||||||
|
echo random.obj version.obj windows.obj >> filling.rsp
|
||||||
|
|
||||||
|
flip.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > flip.rsp
|
||||||
|
echo drawing.obj flip.obj malloc.obj midend.obj >> flip.rsp
|
||||||
|
echo misc.obj noicon.res printing.obj random.obj >> flip.rsp
|
||||||
|
echo tree234.obj version.obj windows.obj >> flip.rsp
|
||||||
|
|
||||||
|
flood.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > flood.rsp
|
||||||
|
echo drawing.obj flood.obj malloc.obj midend.obj >> flood.rsp
|
||||||
|
echo misc.obj noicon.res printing.obj random.obj >> flood.rsp
|
||||||
|
echo version.obj windows.obj >> flood.rsp
|
||||||
|
|
||||||
|
galaxies.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > galaxies.rsp
|
||||||
|
echo drawing.obj dsf.obj galaxies.obj malloc.obj >> galaxies.rsp
|
||||||
|
echo midend.obj misc.obj noicon.res printing.obj >> galaxies.rsp
|
||||||
|
echo random.obj version.obj windows.obj >> galaxies.rsp
|
||||||
|
|
||||||
|
guess.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > guess.rsp
|
||||||
|
echo drawing.obj guess.obj malloc.obj midend.obj >> guess.rsp
|
||||||
|
echo misc.obj noicon.res printing.obj random.obj >> guess.rsp
|
||||||
|
echo version.obj windows.obj >> guess.rsp
|
||||||
|
|
||||||
|
inertia.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > inertia.rsp
|
||||||
|
echo drawing.obj inertia.obj malloc.obj midend.obj >> inertia.rsp
|
||||||
|
echo misc.obj noicon.res printing.obj random.obj >> inertia.rsp
|
||||||
|
echo version.obj windows.obj >> inertia.rsp
|
||||||
|
|
||||||
|
keen.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > keen.rsp
|
||||||
|
echo drawing.obj dsf.obj keen.obj latin.obj malloc.obj >> keen.rsp
|
||||||
|
echo maxflow.obj midend.obj misc.obj noicon.res >> keen.rsp
|
||||||
|
echo printing.obj random.obj tree234.obj version.obj >> keen.rsp
|
||||||
|
echo windows.obj >> keen.rsp
|
||||||
|
|
||||||
|
lightup.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > lightup.rsp
|
||||||
|
echo combi.obj drawing.obj lightup.obj malloc.obj >> lightup.rsp
|
||||||
|
echo midend.obj misc.obj noicon.res printing.obj >> lightup.rsp
|
||||||
|
echo random.obj version.obj windows.obj >> lightup.rsp
|
||||||
|
|
||||||
|
loopy.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > loopy.rsp
|
||||||
|
echo drawing.obj dsf.obj grid.obj loopgen.obj >> loopy.rsp
|
||||||
|
echo loopy.obj malloc.obj midend.obj misc.obj >> loopy.rsp
|
||||||
|
echo noicon.res penrose.obj printing.obj random.obj >> loopy.rsp
|
||||||
|
echo tree234.obj version.obj windows.obj >> loopy.rsp
|
||||||
|
|
||||||
|
magnets.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > magnets.rsp
|
||||||
|
echo drawing.obj laydomino.obj magnets.obj malloc.obj >> magnets.rsp
|
||||||
|
echo midend.obj misc.obj noicon.res printing.obj >> magnets.rsp
|
||||||
|
echo random.obj version.obj windows.obj >> magnets.rsp
|
||||||
|
|
||||||
|
map.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > map.rsp
|
||||||
|
echo drawing.obj dsf.obj malloc.obj map.obj midend.obj >> map.rsp
|
||||||
|
echo misc.obj noicon.res printing.obj random.obj >> map.rsp
|
||||||
|
echo version.obj windows.obj >> map.rsp
|
||||||
|
|
||||||
|
mines.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > mines.rsp
|
||||||
|
echo drawing.obj malloc.obj midend.obj mines.obj >> mines.rsp
|
||||||
|
echo misc.obj noicon.res printing.obj random.obj >> mines.rsp
|
||||||
|
echo tree234.obj version.obj windows.obj >> mines.rsp
|
||||||
|
|
||||||
|
netgame.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > netgame.rsp
|
||||||
|
echo drawing.obj dsf.obj findloop.obj malloc.obj >> netgame.rsp
|
||||||
|
echo midend.obj misc.obj net.obj noicon.res >> netgame.rsp
|
||||||
|
echo printing.obj random.obj tree234.obj version.obj >> netgame.rsp
|
||||||
|
echo windows.obj >> netgame.rsp
|
||||||
|
|
||||||
|
netslide.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > netslide.rsp
|
||||||
|
echo drawing.obj malloc.obj midend.obj misc.obj >> netslide.rsp
|
||||||
|
echo netslide.obj noicon.res printing.obj random.obj >> netslide.rsp
|
||||||
|
echo tree234.obj version.obj windows.obj >> netslide.rsp
|
||||||
|
|
||||||
|
nullgame.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > nullgame.rsp
|
||||||
|
echo drawing.obj malloc.obj midend.obj misc.obj >> nullgame.rsp
|
||||||
|
echo noicon.res nullgame.obj printing.obj random.obj >> nullgame.rsp
|
||||||
|
echo version.obj windows.obj >> nullgame.rsp
|
||||||
|
|
||||||
|
palisade.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > palisade.rsp
|
||||||
|
echo divvy.obj drawing.obj dsf.obj malloc.obj >> palisade.rsp
|
||||||
|
echo midend.obj misc.obj noicon.res palisade.obj >> palisade.rsp
|
||||||
|
echo printing.obj random.obj version.obj windows.obj >> palisade.rsp
|
||||||
|
|
||||||
|
pattern.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > pattern.rsp
|
||||||
|
echo drawing.obj malloc.obj midend.obj misc.obj >> pattern.rsp
|
||||||
|
echo noicon.res pattern.obj printing.obj random.obj >> pattern.rsp
|
||||||
|
echo version.obj windows.obj >> pattern.rsp
|
||||||
|
|
||||||
|
pearl.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > pearl.rsp
|
||||||
|
echo drawing.obj dsf.obj grid.obj loopgen.obj >> pearl.rsp
|
||||||
|
echo malloc.obj midend.obj misc.obj pearl.obj >> pearl.rsp
|
||||||
|
echo penrose.obj printing.obj random.obj tdq.obj >> pearl.rsp
|
||||||
|
echo tree234.obj version.obj windows.obj >> pearl.rsp
|
||||||
|
|
||||||
|
pegs.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > pegs.rsp
|
||||||
|
echo drawing.obj malloc.obj midend.obj misc.obj >> pegs.rsp
|
||||||
|
echo noicon.res pegs.obj printing.obj random.obj >> pegs.rsp
|
||||||
|
echo tree234.obj version.obj windows.obj >> pegs.rsp
|
||||||
|
|
||||||
|
puzzles.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > puzzles.rsp
|
||||||
|
echo blackbo3.obj bridges3.obj combi.obj cube3.obj >> puzzles.rsp
|
||||||
|
echo divvy.obj dominos3.obj drawing.obj dsf.obj >> puzzles.rsp
|
||||||
|
echo fifteen5.obj filling5.obj findloop.obj flip3.obj >> puzzles.rsp
|
||||||
|
echo flood3.obj galaxie7.obj grid.obj guess3.obj >> puzzles.rsp
|
||||||
|
echo inertia3.obj keen5.obj latin.obj laydomino.obj >> puzzles.rsp
|
||||||
|
echo lightup5.obj list.obj loopgen.obj loopy5.obj >> puzzles.rsp
|
||||||
|
echo magnets5.obj malloc.obj map5.obj maxflow.obj >> puzzles.rsp
|
||||||
|
echo midend.obj mines5.obj misc.obj net3.obj >> puzzles.rsp
|
||||||
|
echo netslid3.obj noicon.res palisad3.obj pattern7.obj >> puzzles.rsp
|
||||||
|
echo pearl5.obj pegs3.obj penrose.obj printing.obj >> puzzles.rsp
|
||||||
|
echo random.obj range3.obj rect3.obj samegam3.obj >> puzzles.rsp
|
||||||
|
echo signpos5.obj singles5.obj sixteen3.obj slant5.obj >> puzzles.rsp
|
||||||
|
echo solo5.obj tdq.obj tents5.obj towers5.obj >> puzzles.rsp
|
||||||
|
echo tracks3.obj tree234.obj twiddle3.obj undead3.obj >> puzzles.rsp
|
||||||
|
echo unequal5.obj unruly5.obj untangl3.obj version.obj >> puzzles.rsp
|
||||||
|
echo windows1.obj >> puzzles.rsp
|
||||||
|
|
||||||
|
range.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > range.rsp
|
||||||
|
echo drawing.obj dsf.obj malloc.obj midend.obj >> range.rsp
|
||||||
|
echo misc.obj noicon.res printing.obj random.obj >> range.rsp
|
||||||
|
echo range.obj version.obj windows.obj >> range.rsp
|
||||||
|
|
||||||
|
rect.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > rect.rsp
|
||||||
|
echo drawing.obj malloc.obj midend.obj misc.obj >> rect.rsp
|
||||||
|
echo noicon.res printing.obj random.obj rect.obj >> rect.rsp
|
||||||
|
echo version.obj windows.obj >> rect.rsp
|
||||||
|
|
||||||
|
samegame.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > samegame.rsp
|
||||||
|
echo drawing.obj malloc.obj midend.obj misc.obj >> samegame.rsp
|
||||||
|
echo noicon.res printing.obj random.obj samegame.obj >> samegame.rsp
|
||||||
|
echo version.obj windows.obj >> samegame.rsp
|
||||||
|
|
||||||
|
signpost.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > signpost.rsp
|
||||||
|
echo drawing.obj dsf.obj malloc.obj midend.obj >> signpost.rsp
|
||||||
|
echo misc.obj noicon.res printing.obj random.obj >> signpost.rsp
|
||||||
|
echo signpost.obj version.obj windows.obj >> signpost.rsp
|
||||||
|
|
||||||
|
singles.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > singles.rsp
|
||||||
|
echo drawing.obj dsf.obj latin.obj malloc.obj >> singles.rsp
|
||||||
|
echo maxflow.obj midend.obj misc.obj noicon.res >> singles.rsp
|
||||||
|
echo printing.obj random.obj singles.obj tree234.obj >> singles.rsp
|
||||||
|
echo version.obj windows.obj >> singles.rsp
|
||||||
|
|
||||||
|
sixteen.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > sixteen.rsp
|
||||||
|
echo drawing.obj malloc.obj midend.obj misc.obj >> sixteen.rsp
|
||||||
|
echo noicon.res printing.obj random.obj sixteen.obj >> sixteen.rsp
|
||||||
|
echo version.obj windows.obj >> sixteen.rsp
|
||||||
|
|
||||||
|
slant.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > slant.rsp
|
||||||
|
echo drawing.obj dsf.obj findloop.obj malloc.obj >> slant.rsp
|
||||||
|
echo midend.obj misc.obj noicon.res printing.obj >> slant.rsp
|
||||||
|
echo random.obj slant.obj version.obj windows.obj >> slant.rsp
|
||||||
|
|
||||||
|
solo.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > solo.rsp
|
||||||
|
echo divvy.obj drawing.obj dsf.obj malloc.obj >> solo.rsp
|
||||||
|
echo midend.obj misc.obj noicon.res printing.obj >> solo.rsp
|
||||||
|
echo random.obj solo.obj version.obj windows.obj >> solo.rsp
|
||||||
|
|
||||||
|
tents.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > tents.rsp
|
||||||
|
echo drawing.obj dsf.obj malloc.obj maxflow.obj >> tents.rsp
|
||||||
|
echo midend.obj misc.obj noicon.res printing.obj >> tents.rsp
|
||||||
|
echo random.obj tents.obj version.obj windows.obj >> tents.rsp
|
||||||
|
|
||||||
|
towers.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > towers.rsp
|
||||||
|
echo drawing.obj latin.obj malloc.obj maxflow.obj >> towers.rsp
|
||||||
|
echo midend.obj misc.obj noicon.res printing.obj >> towers.rsp
|
||||||
|
echo random.obj towers.obj tree234.obj version.obj >> towers.rsp
|
||||||
|
echo windows.obj >> towers.rsp
|
||||||
|
|
||||||
|
tracks.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > tracks.rsp
|
||||||
|
echo drawing.obj dsf.obj findloop.obj malloc.obj >> tracks.rsp
|
||||||
|
echo midend.obj misc.obj noicon.res printing.obj >> tracks.rsp
|
||||||
|
echo random.obj tracks.obj version.obj windows.obj >> tracks.rsp
|
||||||
|
|
||||||
|
twiddle.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > twiddle.rsp
|
||||||
|
echo drawing.obj malloc.obj midend.obj misc.obj >> twiddle.rsp
|
||||||
|
echo noicon.res printing.obj random.obj twiddle.obj >> twiddle.rsp
|
||||||
|
echo version.obj windows.obj >> twiddle.rsp
|
||||||
|
|
||||||
|
undead.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > undead.rsp
|
||||||
|
echo drawing.obj malloc.obj midend.obj misc.obj >> undead.rsp
|
||||||
|
echo noicon.res printing.obj random.obj undead.obj >> undead.rsp
|
||||||
|
echo version.obj windows.obj >> undead.rsp
|
||||||
|
|
||||||
|
unequal.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > unequal.rsp
|
||||||
|
echo drawing.obj latin.obj malloc.obj maxflow.obj >> unequal.rsp
|
||||||
|
echo midend.obj misc.obj noicon.res printing.obj >> unequal.rsp
|
||||||
|
echo random.obj tree234.obj unequal.obj version.obj >> unequal.rsp
|
||||||
|
echo windows.obj >> unequal.rsp
|
||||||
|
|
||||||
|
unruly.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > unruly.rsp
|
||||||
|
echo drawing.obj malloc.obj midend.obj misc.obj >> unruly.rsp
|
||||||
|
echo noicon.res printing.obj random.obj unruly.obj >> unruly.rsp
|
||||||
|
echo version.obj windows.obj >> unruly.rsp
|
||||||
|
|
||||||
|
untangle.rsp: $(MAKEFILE)
|
||||||
|
echo $(BASELIBS) > untangle.rsp
|
||||||
|
echo drawing.obj malloc.obj midend.obj misc.obj >> untangle.rsp
|
||||||
|
echo noicon.res printing.obj random.obj tree234.obj >> untangle.rsp
|
||||||
|
echo untangle.obj version.obj windows.obj >> untangle.rsp
|
||||||
|
|
||||||
|
blackbox.obj: .\blackbox.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\blackbox.c /Foblackbox.obj
|
||||||
|
blackbo3.obj: .\blackbox.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\blackbox.c /Foblackbo3.obj
|
||||||
|
bridges.obj: .\bridges.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\bridges.c /Fobridges.obj
|
||||||
|
bridges3.obj: .\bridges.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\bridges.c /Fobridges3.obj
|
||||||
|
combi.obj: .\combi.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\combi.c /Focombi.obj
|
||||||
|
cube.obj: .\cube.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\cube.c /Focube.obj
|
||||||
|
cube3.obj: .\cube.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\cube.c /Focube3.obj
|
||||||
|
divvy.obj: .\divvy.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\divvy.c /Fodivvy.obj
|
||||||
|
dominosa.obj: .\dominosa.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\dominosa.c /Fodominosa.obj
|
||||||
|
dominos3.obj: .\dominosa.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\dominosa.c /Fodominos3.obj
|
||||||
|
drawing.obj: .\drawing.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\drawing.c /Fodrawing.obj
|
||||||
|
dsf.obj: .\dsf.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\dsf.c /Fodsf.obj
|
||||||
|
fifteen.obj: .\fifteen.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\fifteen.c /Fofifteen.obj
|
||||||
|
fifteen5.obj: .\fifteen.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\fifteen.c /Fofifteen5.obj
|
||||||
|
fifteen2.obj: .\fifteen.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_SOLVER /c .\fifteen.c /Fofifteen2.obj
|
||||||
|
filling.obj: .\filling.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\filling.c /Fofilling.obj
|
||||||
|
filling5.obj: .\filling.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\filling.c /Fofilling5.obj
|
||||||
|
filling2.obj: .\filling.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_SOLVER /c .\filling.c /Fofilling2.obj
|
||||||
|
findloop.obj: .\findloop.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\findloop.c /Fofindloop.obj
|
||||||
|
flip.obj: .\flip.c .\puzzles.h .\tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\flip.c /Foflip.obj
|
||||||
|
flip3.obj: .\flip.c .\puzzles.h .\tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\flip.c /Foflip3.obj
|
||||||
|
flood.obj: .\flood.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\flood.c /Foflood.obj
|
||||||
|
flood3.obj: .\flood.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\flood.c /Foflood3.obj
|
||||||
|
galaxies.obj: .\galaxies.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\galaxies.c /Fogalaxies.obj
|
||||||
|
galaxie7.obj: .\galaxies.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\galaxies.c /Fogalaxie7.obj
|
||||||
|
galaxie4.obj: .\galaxies.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_PICTURE_GENERATOR /c .\galaxies.c /Fogalaxie4.obj
|
||||||
|
galaxie2.obj: .\galaxies.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_SOLVER /c .\galaxies.c /Fogalaxie2.obj
|
||||||
|
grid.obj: .\grid.c .\puzzles.h .\tree234.h .\grid.h .\penrose.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\grid.c /Fogrid.obj
|
||||||
|
gtk.obj: .\gtk.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\gtk.c /Fogtk.obj
|
||||||
|
guess.obj: .\guess.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\guess.c /Foguess.obj
|
||||||
|
guess3.obj: .\guess.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\guess.c /Foguess3.obj
|
||||||
|
inertia.obj: .\inertia.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\inertia.c /Foinertia.obj
|
||||||
|
inertia3.obj: .\inertia.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\inertia.c /Foinertia3.obj
|
||||||
|
keen.obj: .\keen.c .\puzzles.h .\latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\keen.c /Fokeen.obj
|
||||||
|
keen5.obj: .\keen.c .\puzzles.h .\latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\keen.c /Fokeen5.obj
|
||||||
|
keen2.obj: .\keen.c .\puzzles.h .\latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_SOLVER /c .\keen.c /Fokeen2.obj
|
||||||
|
latin.obj: .\latin.c .\puzzles.h .\tree234.h .\maxflow.h .\latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\latin.c /Folatin.obj
|
||||||
|
latin8.obj: .\latin.c .\puzzles.h .\tree234.h .\maxflow.h .\latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_LATIN_TEST /c .\latin.c /Folatin8.obj
|
||||||
|
latin6.obj: .\latin.c .\puzzles.h .\tree234.h .\maxflow.h .\latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_SOLVER /c .\latin.c /Folatin6.obj
|
||||||
|
laydomino.obj: .\laydomino.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\laydomino.c /Folaydomino.obj
|
||||||
|
lightup.obj: .\lightup.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\lightup.c /Folightup.obj
|
||||||
|
lightup5.obj: .\lightup.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\lightup.c /Folightup5.obj
|
||||||
|
lightup2.obj: .\lightup.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_SOLVER /c .\lightup.c /Folightup2.obj
|
||||||
|
list.obj: .\list.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\list.c /Folist.obj
|
||||||
|
loopgen.obj: .\loopgen.c .\puzzles.h .\tree234.h .\grid.h .\loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\loopgen.c /Foloopgen.obj
|
||||||
|
loopy.obj: .\loopy.c .\puzzles.h .\tree234.h .\grid.h .\loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\loopy.c /Foloopy.obj
|
||||||
|
loopy5.obj: .\loopy.c .\puzzles.h .\tree234.h .\grid.h .\loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\loopy.c /Foloopy5.obj
|
||||||
|
loopy2.obj: .\loopy.c .\puzzles.h .\tree234.h .\grid.h .\loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_SOLVER /c .\loopy.c /Foloopy2.obj
|
||||||
|
magnets.obj: .\magnets.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\magnets.c /Fomagnets.obj
|
||||||
|
magnets5.obj: .\magnets.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\magnets.c /Fomagnets5.obj
|
||||||
|
magnets2.obj: .\magnets.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_SOLVER /c .\magnets.c /Fomagnets2.obj
|
||||||
|
malloc.obj: .\malloc.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\malloc.c /Fomalloc.obj
|
||||||
|
map.obj: .\map.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\map.c /Fomap.obj
|
||||||
|
map5.obj: .\map.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\map.c /Fomap5.obj
|
||||||
|
map2.obj: .\map.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_SOLVER /c .\map.c /Fomap2.obj
|
||||||
|
maxflow.obj: .\maxflow.c .\maxflow.h .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\maxflow.c /Fomaxflow.obj
|
||||||
|
midend.obj: .\midend.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\midend.c /Fomidend.obj
|
||||||
|
mines.obj: .\mines.c .\tree234.h .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\mines.c /Fomines.obj
|
||||||
|
mines5.obj: .\mines.c .\tree234.h .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\mines.c /Fomines5.obj
|
||||||
|
mines2.obj: .\mines.c .\tree234.h .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_OBFUSCATOR /c .\mines.c /Fomines2.obj
|
||||||
|
misc.obj: .\misc.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\misc.c /Fomisc.obj
|
||||||
|
net.obj: .\net.c .\puzzles.h .\tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\net.c /Fonet.obj
|
||||||
|
net3.obj: .\net.c .\puzzles.h .\tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\net.c /Fonet3.obj
|
||||||
|
netslide.obj: .\netslide.c .\puzzles.h .\tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\netslide.c /Fonetslide.obj
|
||||||
|
netslid3.obj: .\netslide.c .\puzzles.h .\tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\netslide.c /Fonetslid3.obj
|
||||||
|
no-icon.obj: .\no-icon.c
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\no-icon.c /Fono-icon.obj
|
||||||
|
noicon.res: .\noicon.rc .\puzzles.rc2 .\resource.h
|
||||||
|
rc $(FWHACK) $(RCFL) -r -fonoicon.res .\noicon.rc
|
||||||
|
nullfe.obj: .\nullfe.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\nullfe.c /Fonullfe.obj
|
||||||
|
nullgame.obj: .\nullgame.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\nullgame.c /Fonullgame.obj
|
||||||
|
obfusc.obj: .\obfusc.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\obfusc.c /Foobfusc.obj
|
||||||
|
osx.obj: .\osx.m .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\osx.m /Foosx.obj
|
||||||
|
palisade.obj: .\palisade.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\palisade.c /Fopalisade.obj
|
||||||
|
palisad3.obj: .\palisade.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\palisade.c /Fopalisad3.obj
|
||||||
|
pattern.obj: .\pattern.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\pattern.c /Fopattern.obj
|
||||||
|
pattern7.obj: .\pattern.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\pattern.c /Fopattern7.obj
|
||||||
|
pattern4.obj: .\pattern.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_PICTURE_GENERATOR /c .\pattern.c /Fopattern4.obj
|
||||||
|
pattern2.obj: .\pattern.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_SOLVER /c .\pattern.c /Fopattern2.obj
|
||||||
|
pearl.obj: .\pearl.c .\puzzles.h .\grid.h .\loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\pearl.c /Fopearl.obj
|
||||||
|
pearl5.obj: .\pearl.c .\puzzles.h .\grid.h .\loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\pearl.c /Fopearl5.obj
|
||||||
|
pearl2.obj: .\pearl.c .\puzzles.h .\grid.h .\loopgen.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_SOLVER /c .\pearl.c /Fopearl2.obj
|
||||||
|
pegs.obj: .\pegs.c .\puzzles.h .\tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\pegs.c /Fopegs.obj
|
||||||
|
pegs3.obj: .\pegs.c .\puzzles.h .\tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\pegs.c /Fopegs3.obj
|
||||||
|
penrose.obj: .\penrose.c .\puzzles.h .\penrose.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\penrose.c /Fopenrose.obj
|
||||||
|
printing.obj: .\printing.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\printing.c /Foprinting.obj
|
||||||
|
ps.obj: .\ps.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\ps.c /Fops.obj
|
||||||
|
random.obj: .\random.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\random.c /Forandom.obj
|
||||||
|
range.obj: .\range.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\range.c /Forange.obj
|
||||||
|
range3.obj: .\range.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\range.c /Forange3.obj
|
||||||
|
rect.obj: .\rect.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\rect.c /Forect.obj
|
||||||
|
rect3.obj: .\rect.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\rect.c /Forect3.obj
|
||||||
|
samegame.obj: .\samegame.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\samegame.c /Fosamegame.obj
|
||||||
|
samegam3.obj: .\samegame.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\samegame.c /Fosamegam3.obj
|
||||||
|
signpost.obj: .\signpost.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\signpost.c /Fosignpost.obj
|
||||||
|
signpos5.obj: .\signpost.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\signpost.c /Fosignpos5.obj
|
||||||
|
signpos2.obj: .\signpost.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_SOLVER /c .\signpost.c /Fosignpos2.obj
|
||||||
|
singles.obj: .\singles.c .\puzzles.h .\latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\singles.c /Fosingles.obj
|
||||||
|
singles5.obj: .\singles.c .\puzzles.h .\latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\singles.c /Fosingles5.obj
|
||||||
|
singles3.obj: .\singles.c .\puzzles.h .\latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_SOLVER /c .\singles.c /Fosingles3.obj
|
||||||
|
sixteen.obj: .\sixteen.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\sixteen.c /Fosixteen.obj
|
||||||
|
sixteen3.obj: .\sixteen.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\sixteen.c /Fosixteen3.obj
|
||||||
|
slant.obj: .\slant.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\slant.c /Foslant.obj
|
||||||
|
slant5.obj: .\slant.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\slant.c /Foslant5.obj
|
||||||
|
slant2.obj: .\slant.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_SOLVER /c .\slant.c /Foslant2.obj
|
||||||
|
solo.obj: .\solo.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\solo.c /Fosolo.obj
|
||||||
|
solo5.obj: .\solo.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\solo.c /Fosolo5.obj
|
||||||
|
solo2.obj: .\solo.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_SOLVER /c .\solo.c /Fosolo2.obj
|
||||||
|
tdq.obj: .\tdq.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\tdq.c /Fotdq.obj
|
||||||
|
tents.obj: .\tents.c .\puzzles.h .\maxflow.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\tents.c /Fotents.obj
|
||||||
|
tents5.obj: .\tents.c .\puzzles.h .\maxflow.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\tents.c /Fotents5.obj
|
||||||
|
tents3.obj: .\tents.c .\puzzles.h .\maxflow.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_SOLVER /c .\tents.c /Fotents3.obj
|
||||||
|
towers.obj: .\towers.c .\puzzles.h .\latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\towers.c /Fotowers.obj
|
||||||
|
towers5.obj: .\towers.c .\puzzles.h .\latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\towers.c /Fotowers5.obj
|
||||||
|
towers2.obj: .\towers.c .\puzzles.h .\latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_SOLVER /c .\towers.c /Fotowers2.obj
|
||||||
|
tracks.obj: .\tracks.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\tracks.c /Fotracks.obj
|
||||||
|
tracks3.obj: .\tracks.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\tracks.c /Fotracks3.obj
|
||||||
|
tree234.obj: .\tree234.c .\tree234.h .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\tree234.c /Fotree234.obj
|
||||||
|
twiddle.obj: .\twiddle.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\twiddle.c /Fotwiddle.obj
|
||||||
|
twiddle3.obj: .\twiddle.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\twiddle.c /Fotwiddle3.obj
|
||||||
|
undead.obj: .\undead.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\undead.c /Foundead.obj
|
||||||
|
undead3.obj: .\undead.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\undead.c /Foundead3.obj
|
||||||
|
unequal.obj: .\unequal.c .\puzzles.h .\latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\unequal.c /Founequal.obj
|
||||||
|
unequal5.obj: .\unequal.c .\puzzles.h .\latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\unequal.c /Founequal5.obj
|
||||||
|
unequal2.obj: .\unequal.c .\puzzles.h .\latin.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_SOLVER /c .\unequal.c /Founequal2.obj
|
||||||
|
unruly.obj: .\unruly.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\unruly.c /Founruly.obj
|
||||||
|
unruly5.obj: .\unruly.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\unruly.c /Founruly5.obj
|
||||||
|
unruly2.obj: .\unruly.c .\puzzles.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DSTANDALONE_SOLVER /c .\unruly.c /Founruly2.obj
|
||||||
|
untangle.obj: .\untangle.c .\puzzles.h .\tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\untangle.c /Fountangle.obj
|
||||||
|
untangl3.obj: .\untangle.c .\puzzles.h .\tree234.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\untangle.c /Fountangl3.obj
|
||||||
|
version.obj: .\version.c .\version.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\version.c /Foversion.obj
|
||||||
|
windows.obj: .\windows.c .\puzzles.h .\resource.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /c .\windows.c /Fowindows.obj
|
||||||
|
windows1.obj: .\windows.c .\puzzles.h .\resource.h
|
||||||
|
$(CC) $(COMPAT) $(FWHACK) $(CFLAGS) $(XFLAGS) /DCOMBINED /c .\windows.c /Fowindows1.obj
|
||||||
|
|
||||||
|
|
||||||
|
clean: tidy
|
||||||
|
-del *.exe
|
||||||
|
|
||||||
|
tidy:
|
||||||
|
-del *.obj
|
||||||
|
-del *.res
|
||||||
|
-del *.pch
|
||||||
|
-del *.aps
|
||||||
|
-del *.ilk
|
||||||
|
-del *.pdb
|
||||||
|
-del *.rsp
|
||||||
|
-del *.dsp
|
||||||
|
-del *.dsw
|
||||||
|
-del *.ncb
|
||||||
|
-del *.opt
|
||||||
|
-del *.plg
|
||||||
|
-del *.map
|
||||||
|
-del *.idb
|
||||||
|
-del debug.log
|
|
@ -28,6 +28,9 @@ public class PuzzleApplet extends JApplet implements Runtime.CallJavaCB {
|
||||||
private JFrame mainWindow;
|
private JFrame mainWindow;
|
||||||
|
|
||||||
private JMenu typeMenu;
|
private JMenu typeMenu;
|
||||||
|
private JMenuItem[] typeMenuItems;
|
||||||
|
private int customMenuItemIndex;
|
||||||
|
|
||||||
private JMenuItem solveCommand;
|
private JMenuItem solveCommand;
|
||||||
private Color[] colors;
|
private Color[] colors;
|
||||||
private JLabel statusBar;
|
private JLabel statusBar;
|
||||||
|
@ -219,17 +222,17 @@ public class PuzzleApplet extends JApplet implements Runtime.CallJavaCB {
|
||||||
}
|
}
|
||||||
|
|
||||||
private JMenuItem addMenuItemCallback(JMenu jm, String name, final String callback, final int arg) {
|
private JMenuItem addMenuItemCallback(JMenu jm, String name, final String callback, final int arg) {
|
||||||
return addMenuItemCallback(jm, name, callback, new int[] {arg});
|
return addMenuItemCallback(jm, name, callback, new int[] {arg}, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
private JMenuItem addMenuItemCallback(JMenu jm, String name, final String callback) {
|
private JMenuItem addMenuItemCallback(JMenu jm, String name, final String callback) {
|
||||||
return addMenuItemCallback(jm, name, callback, new int[0]);
|
return addMenuItemCallback(jm, name, callback, new int[0], false);
|
||||||
}
|
}
|
||||||
|
|
||||||
private JMenuItem addMenuItemCallback(JMenu jm, String name, final String callback, final int[] args) {
|
private JMenuItem addMenuItemCallback(JMenu jm, String name, final String callback, final int[] args, boolean checkbox) {
|
||||||
JMenuItem jmi;
|
JMenuItem jmi;
|
||||||
if (jm == typeMenu)
|
if (checkbox)
|
||||||
typeMenu.add(jmi = new JCheckBoxMenuItem(name));
|
jm.add(jmi = new JCheckBoxMenuItem(name));
|
||||||
else
|
else
|
||||||
jm.add(jmi = new JMenuItem(name));
|
jm.add(jmi = new JMenuItem(name));
|
||||||
jmi.addActionListener(new ActionListener() {
|
jmi.addActionListener(new ActionListener() {
|
||||||
|
@ -261,12 +264,29 @@ public class PuzzleApplet extends JApplet implements Runtime.CallJavaCB {
|
||||||
} else {
|
} else {
|
||||||
typeMenu.setVisible(true);
|
typeMenu.setVisible(true);
|
||||||
}
|
}
|
||||||
addMenuItemCallback(typeMenu, "Custom...", "jcallback_config_event", CFG_SETTINGS);
|
typeMenuItems[customMenuItemIndex] =
|
||||||
|
addMenuItemCallback(typeMenu, "Custom...",
|
||||||
|
"jcallback_config_event",
|
||||||
|
new int[] {CFG_SETTINGS}, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void addTypeItem(String name, final int ptrGameParams) {
|
private void addTypeItem
|
||||||
|
(JMenu targetMenu, String name, int newId, final int ptrGameParams) {
|
||||||
|
|
||||||
typeMenu.setVisible(true);
|
typeMenu.setVisible(true);
|
||||||
addMenuItemCallback(typeMenu, name, "jcallback_preset_event", ptrGameParams);
|
typeMenuItems[newId] =
|
||||||
|
addMenuItemCallback(targetMenu, name,
|
||||||
|
"jcallback_preset_event",
|
||||||
|
new int[] {ptrGameParams}, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void addTypeSubmenu
|
||||||
|
(JMenu targetMenu, String name, int newId) {
|
||||||
|
|
||||||
|
JMenu newMenu = new JMenu(name);
|
||||||
|
newMenu.setVisible(true);
|
||||||
|
typeMenuItems[newId] = newMenu;
|
||||||
|
targetMenu.add(newMenu);
|
||||||
}
|
}
|
||||||
|
|
||||||
public int call(int cmd, int arg1, int arg2, int arg3) {
|
public int call(int cmd, int arg1, int arg2, int arg3) {
|
||||||
|
@ -279,8 +299,20 @@ public class PuzzleApplet extends JApplet implements Runtime.CallJavaCB {
|
||||||
if ((arg2 & 4) != 0) solveCommand.setEnabled(true);
|
if ((arg2 & 4) != 0) solveCommand.setEnabled(true);
|
||||||
colors = new Color[arg3];
|
colors = new Color[arg3];
|
||||||
return 0;
|
return 0;
|
||||||
case 1: // Type menu item
|
case 1: // configure Type menu
|
||||||
addTypeItem(runtime.cstring(arg1), arg2);
|
if (arg1 == 0) {
|
||||||
|
// preliminary setup
|
||||||
|
typeMenuItems = new JMenuItem[arg2 + 2];
|
||||||
|
typeMenuItems[arg2] = typeMenu;
|
||||||
|
customMenuItemIndex = arg2 + 1;
|
||||||
|
return arg2;
|
||||||
|
} else if (xarg1 != 0) {
|
||||||
|
addTypeItem((JMenu)typeMenuItems[arg2],
|
||||||
|
runtime.cstring(arg1), arg3, xarg1);
|
||||||
|
} else {
|
||||||
|
addTypeSubmenu((JMenu)typeMenuItems[arg2],
|
||||||
|
runtime.cstring(arg1), arg3);
|
||||||
|
}
|
||||||
return 0;
|
return 0;
|
||||||
case 2: // MessageBox
|
case 2: // MessageBox
|
||||||
JOptionPane.showMessageDialog(this, runtime.cstring(arg2), runtime.cstring(arg1), arg3 == 0 ? JOptionPane.INFORMATION_MESSAGE : JOptionPane.ERROR_MESSAGE);
|
JOptionPane.showMessageDialog(this, runtime.cstring(arg2), runtime.cstring(arg1), arg3 == 0 ? JOptionPane.INFORMATION_MESSAGE : JOptionPane.ERROR_MESSAGE);
|
||||||
|
@ -432,10 +464,11 @@ public class PuzzleApplet extends JApplet implements Runtime.CallJavaCB {
|
||||||
dlg = null;
|
dlg = null;
|
||||||
return 0;
|
return 0;
|
||||||
case 13: // tick a menu item
|
case 13: // tick a menu item
|
||||||
if (arg1 < 0) arg1 = typeMenu.getItemCount() - 1;
|
if (arg1 < 0) arg1 = customMenuItemIndex;
|
||||||
for (int i = 0; i < typeMenu.getItemCount(); i++) {
|
for (int i = 0; i < typeMenuItems.length; i++) {
|
||||||
if (typeMenu.getMenuComponent(i) instanceof JCheckBoxMenuItem) {
|
if (typeMenuItems[i] instanceof JCheckBoxMenuItem) {
|
||||||
((JCheckBoxMenuItem)typeMenu.getMenuComponent(i)).setSelected(arg1 == i);
|
((JCheckBoxMenuItem)typeMenuItems[i]).setSelected
|
||||||
|
(arg1 == i);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
1832
apps/plugins/puzzles/src/aclocal.m4
vendored
Normal file
1832
apps/plugins/puzzles/src/aclocal.m4
vendored
Normal file
File diff suppressed because it is too large
Load diff
|
@ -5,7 +5,7 @@
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include "rbassert.h"
|
#include <assert.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
|
|
||||||
|
@ -1505,7 +1505,7 @@ static void game_print(drawing *dr, const game_state *state, int tilesize)
|
||||||
const struct game thegame = {
|
const struct game thegame = {
|
||||||
"Black Box", "games.blackbox", "blackbox",
|
"Black Box", "games.blackbox", "blackbox",
|
||||||
default_params,
|
default_params,
|
||||||
game_fetch_preset,
|
game_fetch_preset, NULL,
|
||||||
decode_params,
|
decode_params,
|
||||||
encode_params,
|
encode_params,
|
||||||
free_params,
|
free_params,
|
125
apps/plugins/puzzles/src/blackbox.html
Normal file
125
apps/plugins/puzzles/src/blackbox.html
Normal file
|
@ -0,0 +1,125 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
|
||||||
|
"http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="content-type" content="text/html; charset=US-ASCII">
|
||||||
|
<title>Black Box</title>
|
||||||
|
<link rel="previous" href="untangle.html">
|
||||||
|
<link rel="ToC" href="index.html">
|
||||||
|
<link rel="up" href="index.html">
|
||||||
|
<link rel="index" href="docindex.html">
|
||||||
|
<link rel="next" href="slant.html">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<p><a href="untangle.html">Previous</a> | <a href="index.html">Contents</a> | <a href="docindex.html">Index</a> | <a href="slant.html">Next</a></p>
|
||||||
|
<h1><a name="C19"></a>Chapter 19: <a name="i0"></a>Black Box</h1>
|
||||||
|
<p>
|
||||||
|
A number of balls are hidden in a rectangular arena. You have to deduce the positions of the balls by firing lasers positioned at the edges of the arena and observing how their beams are deflected.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Beams will travel straight from their origin until they hit the opposite side of the arena (at which point they emerge), unless affected by balls in one of the following ways:
|
||||||
|
</p>
|
||||||
|
<ul><li>
|
||||||
|
A beam that hits a ball head-on is absorbed and will never re-emerge. This includes beams that meet a ball on the first rank of the arena.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
A beam with a ball in its front-left square and no ball ahead of it gets deflected 90 degrees to the right.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
A beam with a ball in its front-right square and no ball ahead of it gets similarly deflected to the left.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
A beam that would re-emerge from its entry location is considered to be ‘reflected’.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
A beam which would get deflected before entering the arena by a ball to the front-left or front-right of its entry point is also considered to be ‘reflected’.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<p>
|
||||||
|
Beams that are reflected appear as a ‘R’; beams that hit balls head-on appear as ‘H’. Otherwise, a number appears at the firing point and the location where the beam emerges (this number is unique to that shot).
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
You can place guesses as to the location of the balls, based on the entry and exit patterns of the beams; once you have placed enough balls a button appears enabling you to have your guesses checked.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Here is a diagram showing how the positions of balls can create each of the beam behaviours shown above:
|
||||||
|
</p>
|
||||||
|
<pre><code> 1RHR----
|
||||||
|
|..O.O...|
|
||||||
|
2........3
|
||||||
|
|........|
|
||||||
|
|........|
|
||||||
|
3........|
|
||||||
|
|......O.|
|
||||||
|
H........|
|
||||||
|
|.....O..|
|
||||||
|
12-RR---
|
||||||
|
</code></pre>
|
||||||
|
<p>
|
||||||
|
As shown, it is possible for a beam to receive multiple reflections before re-emerging (see turn 3). Similarly, a beam may be reflected (possibly more than once) before receiving a hit (the ‘H’ on the left side of the example).
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Note that any layout with more than 4 balls may have a non-unique solution. The following diagram illustrates this; if you know the board contains 5 balls, it is impossible to determine where the fifth ball is (possible positions marked with an <code>x</code>):
|
||||||
|
</p>
|
||||||
|
<pre><code> --------
|
||||||
|
|........|
|
||||||
|
|........|
|
||||||
|
|..O..O..|
|
||||||
|
|...xx...|
|
||||||
|
|...xx...|
|
||||||
|
|..O..O..|
|
||||||
|
|........|
|
||||||
|
|........|
|
||||||
|
--------
|
||||||
|
</code></pre>
|
||||||
|
<p>
|
||||||
|
For this reason, when you have your guesses checked, the game will check that your solution <em>produces the same results</em> as the computer's, rather than that your solution is identical to the computer's. So in the above example, you could put the fifth ball at <em>any</em> of the locations marked with an <code>x</code>, and you would still win.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Black Box was contributed to this collection by James Harvey.
|
||||||
|
</p>
|
||||||
|
<h2><a name="S19.1"></a>19.1 <a name="i1"></a>Black Box controls</h2>
|
||||||
|
<p>
|
||||||
|
To fire a laser beam, left-click in a square around the edge of the arena. The results will be displayed immediately. Clicking or holding the left button on one of these squares will highlight the current go (or a previous go) to confirm the exit point for that laser, if applicable.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
To guess the location of a ball, left-click within the arena and a black circle will appear marking the guess; click again to remove the guessed ball.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Locations in the arena may be locked against modification by right-clicking; whole rows and columns may be similarly locked by right-clicking in the laser square above/below that column, or to the left/right of that row.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
The cursor keys may also be used to move around the grid. Pressing the Enter key will fire a laser or add a new ball-location guess, and pressing Space will lock a cell, row, or column.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
When an appropriate number of balls have been guessed, a button will appear at the top-left corner of the grid; clicking that (with mouse or cursor) will check your guesses.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
If you click the ‘check’ button and your guesses are not correct, the game will show you the minimum information necessary to demonstrate this to you, so you can try again. If your ball positions are not consistent with the beam paths you already know about, one beam path will be circled to indicate that it proves you wrong. If your positions match all the existing beam paths but are still wrong, one new beam path will be revealed (written in red) which is not consistent with your current guesses.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
If you decide to give up completely, you can select Solve to reveal the actual ball positions. At this point, correctly-placed balls will be displayed as filled black circles, incorrectly-placed balls as filled black circles with red crosses, and missing balls as filled red circles. In addition, a red circle marks any laser you had already fired which is not consistent with your ball layout (just as when you press the ‘check’ button), and red text marks any laser you <em>could</em> have fired in order to distinguish your ball layout from the correct one.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
(All the actions described in <a href="common.html#S2.1">section 2.1</a> are also available.)
|
||||||
|
</p>
|
||||||
|
<h2><a name="S19.2"></a>19.2 <a name="i2"></a>Black Box parameters</h2>
|
||||||
|
<p>
|
||||||
|
These parameters are available from the ‘Custom...’ option on the ‘Type’ menu.
|
||||||
|
</p>
|
||||||
|
<dl><dt>
|
||||||
|
<em>Width</em>, <em>Height</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Size of grid in squares. There are 2 × <em>Width</em> × <em>Height</em> lasers per grid, two per row and two per column.
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<em>No. of balls</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Number of balls to place in the grid. This can be a single number, or a range (separated with a hyphen, like ‘2-6’), and determines the number of balls to place on the grid. The ‘reveal’ button is only enabled if you have guessed an appropriate number of balls; a guess using a different number to the original solution is still acceptable, if all the beam inputs and outputs match.
|
||||||
|
</dd>
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
<hr><address></address></body>
|
||||||
|
</html>
|
|
@ -70,7 +70,7 @@
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include "rbassert.h"
|
#include <assert.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
|
|
||||||
|
@ -3224,7 +3224,7 @@ static void game_print(drawing *dr, const game_state *state, int ts)
|
||||||
const struct game thegame = {
|
const struct game thegame = {
|
||||||
"Bridges", "games.bridges", "bridges",
|
"Bridges", "games.bridges", "bridges",
|
||||||
default_params,
|
default_params,
|
||||||
game_fetch_preset,
|
game_fetch_preset, NULL,
|
||||||
decode_params,
|
decode_params,
|
||||||
encode_params,
|
encode_params,
|
||||||
free_params,
|
free_params,
|
135
apps/plugins/puzzles/src/bridges.html
Normal file
135
apps/plugins/puzzles/src/bridges.html
Normal file
|
@ -0,0 +1,135 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
|
||||||
|
"http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="content-type" content="text/html; charset=US-ASCII">
|
||||||
|
<title>Bridges</title>
|
||||||
|
<link rel="previous" href="tents.html">
|
||||||
|
<link rel="ToC" href="index.html">
|
||||||
|
<link rel="up" href="index.html">
|
||||||
|
<link rel="index" href="docindex.html">
|
||||||
|
<link rel="next" href="unequal.html">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<p><a href="tents.html">Previous</a> | <a href="index.html">Contents</a> | <a href="docindex.html">Index</a> | <a href="unequal.html">Next</a></p>
|
||||||
|
<h1><a name="C26"></a>Chapter 26: <a name="i0"></a>Bridges</h1>
|
||||||
|
<p>
|
||||||
|
You have a set of islands distributed across the playing area. Each island contains a number. Your aim is to connect the islands together with bridges, in such a way that:
|
||||||
|
</p>
|
||||||
|
<ul><li>
|
||||||
|
Bridges run horizontally or vertically.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
The number of bridges terminating at any island is equal to the number written in that island.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Two bridges may run in parallel between the same two islands, but no more than two may do so.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
No bridge crosses another bridge.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
All the islands are connected together.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<p>
|
||||||
|
There are some configurable alternative modes, which involve changing the parallel-bridge limit to something other than 2, and introducing the additional constraint that no sequence of bridges may form a loop from one island back to the same island. The rules stated above are the default ones.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Credit for this puzzle goes to <a name="i1"></a>Nikoli <a href="#p0">[12]</a>.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Bridges was contributed to this collection by James Harvey.
|
||||||
|
</p>
|
||||||
|
<p><a name="p0"></a>
|
||||||
|
[12] <a href="http://www.nikoli.co.jp/en/puzzles/hashiwokakero.html"><code>http://www.nikoli.co.jp/en/puzzles/hashiwokakero.html</code></a> (beware of Flash)
|
||||||
|
</p>
|
||||||
|
<h2><a name="S26.1"></a>26.1 <a name="i2"></a>Bridges controls</h2>
|
||||||
|
<p>
|
||||||
|
To place a bridge between two islands, click the mouse down on one island and drag it towards the other. You do not need to drag all the way to the other island; you only need to move the mouse far enough for the intended bridge direction to be unambiguous. (So you can keep the mouse near the starting island and conveniently throw bridges out from it in many directions.)
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Doing this again when a bridge is already present will add another parallel bridge. If there are already as many bridges between the two islands as permitted by the current game rules (i.e. two by default), the same dragging action will remove all of them.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
If you want to remind yourself that two islands definitely <em>do not</em> have a bridge between them, you can right-drag between them in the same way to draw a ‘non-bridge’ marker.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
If you think you have finished with an island (i.e. you have placed all its bridges and are confident that they are in the right places), you can mark the island as finished by left-clicking on it. This will highlight it and all the bridges connected to it, and you will be prevented from accidentally modifying any of those bridges in future. Left-clicking again on a highlighted island will unmark it and restore your ability to modify it.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
You can also use the cursor keys to move around the grid: if possible the cursor will always move orthogonally, otherwise it will move towards the nearest island to the indicated direction. Holding Control and pressing a cursor key will lay a bridge in that direction (if available); Shift and a cursor key will lay a ‘non-bridge’ marker. Pressing the return key followed by a cursor key will also lay a bridge in that direction.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
You can mark an island as finished by pressing the space bar or by pressing the return key twice.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
By pressing a number key, you can jump to the nearest island with that number. Letters ‘a’, ..., ‘f’ count as 10, ..., 15 and ‘0’ as 16.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Violations of the puzzle rules will be marked in red:
|
||||||
|
</p>
|
||||||
|
<ul><li>
|
||||||
|
An island with too many bridges will be highlighted in red.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
An island with too few bridges will be highlighted in red if it is definitely an error (as opposed to merely not being finished yet): if adding enough bridges would involve having to cross another bridge or remove a non-bridge marker, or if the island has been highlighted as complete.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
A group of islands and bridges may be highlighted in red if it is a closed subset of the puzzle with no way to connect it to the rest of the islands. For example, if you directly connect two 1s together with a bridge and they are not the only two islands on the grid, they will light up red to indicate that such a group cannot be contained in any valid solution.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
If you have selected the (non-default) option to disallow loops in the solution, a group of bridges which forms a loop will be highlighted.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<p>
|
||||||
|
(All the actions described in <a href="common.html#S2.1">section 2.1</a> are also available.)
|
||||||
|
</p>
|
||||||
|
<h2><a name="S26.2"></a>26.2 <a name="i3"></a>Bridges parameters</h2>
|
||||||
|
<p>
|
||||||
|
These parameters are available from the ‘Custom...’ option on the ‘Type’ menu.
|
||||||
|
</p>
|
||||||
|
<dl><dt>
|
||||||
|
<em>Width</em>, <em>Height</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Size of grid in squares.
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<em>Difficulty</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Difficulty level of puzzle.
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<em>Allow loops</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
This is set by default. If cleared, puzzles will be generated in such a way that they are always soluble without creating a loop, and solutions which do involve a loop will be disallowed.
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<em>Max. bridges per direction</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Maximum number of bridges in any particular direction. The default is 2, but you can change it to 1, 3 or 4. In general, fewer is easier.
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<em>%age of island squares</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Gives a rough percentage of islands the generator will try and lay before finishing the puzzle. Certain layouts will not manage to lay enough islands; this is an upper bound.
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<em>Expansion factor (%age)</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
The grid generator works by picking an existing island at random (after first creating an initial island somewhere). It then decides on a direction (at random), and then works out how far it could extend before creating another island. This parameter determines how likely it is to extend as far as it can, rather than choosing somewhere closer.
|
||||||
|
<p>
|
||||||
|
High expansion factors usually mean easier puzzles with fewer possible islands; low expansion factors can create lots of tightly-packed islands.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
</dd>
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
<hr><address></address></body>
|
||||||
|
</html>
|
|
@ -1,4 +1,4 @@
|
||||||
#include "rbassert.h"
|
#include <assert.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
#include "puzzles.h"
|
#include "puzzles.h"
|
285
apps/plugins/puzzles/src/common.html
Normal file
285
apps/plugins/puzzles/src/common.html
Normal file
|
@ -0,0 +1,285 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
|
||||||
|
"http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="content-type" content="text/html; charset=US-ASCII">
|
||||||
|
<title>Common features</title>
|
||||||
|
<link rel="previous" href="intro.html">
|
||||||
|
<link rel="ToC" href="index.html">
|
||||||
|
<link rel="up" href="index.html">
|
||||||
|
<link rel="index" href="docindex.html">
|
||||||
|
<link rel="next" href="net.html">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<p><a href="intro.html">Previous</a> | <a href="index.html">Contents</a> | <a href="docindex.html">Index</a> | <a href="net.html">Next</a></p>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li><a href="#C2">Chapter 2: Common features</a>
|
||||||
|
<ul>
|
||||||
|
<li><a href="#S2.1">2.1 Common actions</a></li>
|
||||||
|
<li><a href="#S2.2">2.2 Specifying games with the game ID</a></li>
|
||||||
|
<li><a href="#S2.3">2.3 The ‘Type’ menu</a></li>
|
||||||
|
<li><a href="#S2.4">2.4 Specifying game parameters on the command line</a></li>
|
||||||
|
<li><a href="#S2.5">2.5 Unix command-line options</a></li>
|
||||||
|
</ul></li>
|
||||||
|
</ul>
|
||||||
|
<h1><a name="C2"></a>Chapter 2: <a name="i0"></a>Common features</h1>
|
||||||
|
<p>
|
||||||
|
This chapter describes features that are common to all the games.
|
||||||
|
</p>
|
||||||
|
<h2><a name="S2.1"></a>2.1 <a name="i1"></a>Common actions</h2>
|
||||||
|
<p>
|
||||||
|
These actions are all available from the <a name="i2"></a>‘Game’ menu and via <a name="i3"></a>keyboard shortcuts, in addition to any game-specific actions.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
(On <a name="i4"></a>Mac OS X, to conform with local user interface standards, these actions are situated on the <a name="i5"></a>‘File’ and <a name="i6"></a>‘Edit’ menus instead.)
|
||||||
|
</p>
|
||||||
|
<dl><dt>
|
||||||
|
<a name="i7"></a><em>New game</em> (‘N’, Ctrl+‘N’)
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Starts a new game, with a random initial state.
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<a name="i8"></a><em>Restart game</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Resets the current game to its initial state. (This can be undone.)
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<a name="i9"></a><em>Load</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Loads a saved game from a file on disk.
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<a name="i10"></a><em>Save</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Saves the current state of your game to a file on disk.
|
||||||
|
<p>
|
||||||
|
The Load and Save operations preserve your entire game history (so you can save, reload, and still Undo and Redo things you had done before saving).
|
||||||
|
</p>
|
||||||
|
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<a name="i11"></a><em>Print</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Where supported (currently only on Windows), brings up a dialog allowing you to print an arbitrary number of puzzles randomly generated from the current parameters, optionally including the current puzzle. (Only for puzzles which make sense to print, of course – it's hard to think of a sensible printable representation of Fifteen!)
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<a name="i12"></a><em>Undo</em> (‘U’, Ctrl+‘Z’, Ctrl+‘_’)
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Undoes a single move. (You can undo moves back to the start of the session.)
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<a name="i13"></a><em>Redo</em> (‘R’, Ctrl+‘R’)
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Redoes a previously undone move.
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<a name="i14"></a><em>Copy</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Copies the current state of your game to the clipboard in text format, so that you can paste it into (say) an e-mail client or a web message board if you're discussing the game with someone else. (Not all games support this feature.)
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<a name="i15"></a><em>Solve</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Transforms the puzzle instantly into its solved state. For some games (Cube) this feature is not supported at all because it is of no particular use. For other games (such as Pattern), the solved state can be used to give you information, if you can't see how a solution can exist at all or you want to know where you made a mistake. For still other games (such as Sixteen), automatic solution tells you nothing about how to <em>get</em> to the solution, but it does provide a useful way to get there quickly so that you can experiment with set-piece moves and transformations.
|
||||||
|
<p>
|
||||||
|
Some games (such as Solo) are capable of solving a game ID you have typed in from elsewhere. Other games (such as Rectangles) cannot solve a game ID they didn't invent themself, but when they did invent the game ID they know what the solution is already. Still other games (Pattern) can solve <em>some</em> external game IDs, but only if they aren't too difficult.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
The ‘Solve’ command adds the solved state to the end of the undo chain for the puzzle. In other words, if you want to go back to solving it yourself after seeing the answer, you can just press Undo.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<a name="i16"></a><a name="i17"></a><em>Quit</em> (‘Q’, Ctrl+‘Q’)
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Closes the application entirely.
|
||||||
|
</dd>
|
||||||
|
</dl>
|
||||||
|
<h2><a name="S2.2"></a>2.2 Specifying games with the <a name="i18"></a>game ID</h2>
|
||||||
|
<p>
|
||||||
|
There are two ways to save a game specification out of a puzzle and recreate it later, or recreate it in somebody else's copy of the same puzzle.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
The ‘<a name="i19"></a>Specific’ and ‘<a name="i20"></a>Random Seed’ options from the <a name="i21"></a>‘Game’ menu (or the ‘File’ menu, on <a name="i22"></a>Mac OS X) each show a piece of text (a ‘game ID’) which is sufficient to reconstruct precisely the same game at a later date.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
You can enter either of these pieces of text back into the program (via the same ‘Specific’ or ‘Random Seed’ menu options) at a later point, and it will recreate the same game. You can also use either one as a <a name="i23"></a>command line argument (on Windows or Unix); see <a href="#S2.4">section 2.4</a> for more detail.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
The difference between the two forms is that a descriptive game ID is a literal <em>description</em> of the <a name="i24"></a>initial state of the game, whereas a random seed is just a piece of arbitrary text which was provided as input to the random number generator used to create the puzzle. This means that:
|
||||||
|
</p>
|
||||||
|
<ul><li>
|
||||||
|
Descriptive game IDs tend to be longer in many puzzles (although some, such as Cube (<a href="cube.html#C4">chapter 4</a>), only need very short descriptions). So a random seed is often a <em>quicker</em> way to note down the puzzle you're currently playing, or to tell it to somebody else so they can play the same one as you.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Any text at all is a valid random seed. The automatically generated ones are fifteen-digit numbers, but anything will do; you can type in your full name, or a word you just made up, and a valid puzzle will be generated from it. This provides a way for two or more people to race to complete the same puzzle: you think of a random seed, then everybody types it in at the same time, and nobody has an advantage due to having seen the generated puzzle before anybody else.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
It is often possible to convert puzzles from other sources (such as ‘nonograms’ or ‘sudoku’ from newspapers) into descriptive game IDs suitable for use with these programs.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Random seeds are not guaranteed to produce the same result if you use them with a different <a name="i25"></a><em>version</em> of the puzzle program. This is because the generation algorithm might have been improved or modified in later versions of the code, and will therefore produce a different result when given the same sequence of random numbers. Use a descriptive game ID if you aren't sure that it will be used on the same version of the program as yours.
|
||||||
|
<p>
|
||||||
|
(Use the ‘About’ menu option to find out the version number of the program. Programs with the same version number running on different platforms should still be random-seed compatible.)
|
||||||
|
</p>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<p>
|
||||||
|
<a name="i26"></a>A descriptive game ID starts with a piece of text which encodes the <a name="i27"></a><em>parameters</em> of the current game (such as grid size). Then there is a colon, and after that is the description of the game's initial state. A random seed starts with a similar string of parameters, but then it contains a hash sign followed by arbitrary data.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
If you enter a descriptive game ID, the program will not be able to show you the random seed which generated it, since it wasn't generated <em>from</em> a random seed. If you <em>enter</em> a random seed, however, the program will be able to show you the descriptive game ID derived from that random seed.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Note that the game parameter strings are not always identical between the two forms. For some games, there will be parameter data provided with the random seed which is not included in the descriptive game ID. This is because that parameter information is only relevant when <em>generating</em> puzzle grids, and is not important when playing them. Thus, for example, the difficulty level in Solo (<a href="solo.html#C11">chapter 11</a>) is not mentioned in the descriptive game ID.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
These additional parameters are also not set permanently if you type in a game ID. For example, suppose you have Solo set to ‘Advanced’ difficulty level, and then a friend wants your help with a ‘Trivial’ puzzle; so the friend reads out a random seed specifying ‘Trivial’ difficulty, and you type it in. The program will generate you the same ‘Trivial’ grid which your friend was having trouble with, but once you have finished playing it, when you ask for a new game it will automatically go back to the ‘Advanced’ difficulty which it was previously set on.
|
||||||
|
</p>
|
||||||
|
<h2><a name="S2.3"></a>2.3 The ‘Type’ menu</h2>
|
||||||
|
<p>
|
||||||
|
The <a name="i28"></a>‘Type’ menu, if present, may contain a list of <a name="i29"></a>preset game settings. Selecting one of these will start a new random game with the parameters specified.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
The ‘Type’ menu may also contain a ‘<a name="i30"></a>Custom’ option which allows you to fine-tune game <a name="i31"></a>parameters. The parameters available are specific to each game and are described in the following sections.
|
||||||
|
</p>
|
||||||
|
<h2><a name="S2.4"></a>2.4 Specifying game parameters on the <a name="i32"></a>command line</h2>
|
||||||
|
<p>
|
||||||
|
(This section does not apply to the <a name="i33"></a>Mac OS X version.)
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
The games in this collection deliberately do not ever save information on to the computer they run on: they have no high score tables and no saved preferences. (This is because I expect at least some people to play them at work, and those people will probably appreciate leaving as little evidence as possible!)
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
However, if you do want to arrange for one of these games to <a name="i34"></a>default to a particular set of parameters, you can specify them on the command line.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
The easiest way to do this is to set up the parameters you want using the ‘Type’ menu (see <a href="#S2.3">section 2.3</a>), and then to select ‘Random Seed’ from the ‘Game’ or ‘File’ menu (see <a href="#S2.2">section 2.2</a>). The text in the ‘Game ID’ box will be composed of two parts, separated by a hash. The first of these parts represents the game parameters (the size of the playing area, for example, and anything else you set using the ‘Type’ menu).
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
If you run the game with just that parameter text on the command line, it will start up with the settings you specified.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
For example: if you run Cube (see <a href="cube.html#C4">chapter 4</a>), select ‘Octahedron’ from the ‘Type’ menu, and then go to the game ID selection, you will see a string of the form ‘<code>o2x2#338686542711620</code>’. Take only the part before the hash (‘<code>o2x2</code>’), and start Cube with that text on the command line: ‘<code>PREFIX-cube o2x2</code>’.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
If you copy the <em>entire</em> game ID on to the command line, the game will start up in the specific game that was described. This is occasionally a more convenient way to start a particular game ID than by pasting it into the game ID selection box.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
(You could also retrieve the encoded game parameters using the ‘Specific’ menu option instead of ‘Random Seed’, but if you do then some options, such as the difficulty level in Solo, will be missing. See <a href="#S2.2">section 2.2</a> for more details on this.)
|
||||||
|
</p>
|
||||||
|
<h2><a name="S2.5"></a>2.5 <a name="i35"></a>Unix <a name="i36"></a>command-line options</h2>
|
||||||
|
<p>
|
||||||
|
(This section only applies to the Unix port.)
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
In addition to being able to specify game parameters on the command line (see <a href="#S2.4">section 2.4</a>), there are various other options:
|
||||||
|
</p>
|
||||||
|
<dl><dt>
|
||||||
|
<code>--game</code>
|
||||||
|
</dt>
|
||||||
|
<dt>
|
||||||
|
<code>--load</code>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
These options respectively determine whether the command-line argument is treated as specifying game parameters or a <a name="i37"></a>save file to <a name="i38"></a>load. Only one should be specified. If neither of these options is specified, a guess is made based on the format of the argument.
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<code>--generate </code><em>n</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
If this option is specified, instead of a puzzle being displayed, a number of descriptive game IDs will be <a name="i39"></a>invented and printed on standard output. This is useful for gaining access to the game generation algorithms without necessarily using the frontend.
|
||||||
|
<p>
|
||||||
|
If game parameters are specified on the command-line, they will be used to generate the game IDs; otherwise a default set of parameters will be used.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
The most common use of this option is in conjunction with <code>--print</code>, in which case its behaviour is slightly different; see below.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<a name="i40"></a><code>--print </code><em>w</em><code>x</code><em>h</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
If this option is specified, instead of a puzzle being displayed, a printed representation of one or more unsolved puzzles is sent to standard output, in <a name="i41"></a>PostScript format.
|
||||||
|
<p>
|
||||||
|
On each page of puzzles, there will be <em>w</em> across and <em>h</em> down. If there are more puzzles than <em>w</em>×<em>h</em>, more than one page will be printed.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
If <code>--generate</code> has also been specified, the invented game IDs will be used to generate the printed output. Otherwise, a list of game IDs is expected on standard input (which can be descriptive or random seeds; see <a href="#S2.2">section 2.2</a>), in the same format produced by <code>--generate</code>.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
For example:
|
||||||
|
</p>
|
||||||
|
<pre><code>PREFIX-net --generate 12 --print 2x3 7x7w | lpr
|
||||||
|
</code></pre>
|
||||||
|
<p>
|
||||||
|
will generate two pages of printed Net puzzles (each of which will have a 7×7 wrapping grid), and pipe the output to the <code>lpr</code> command, which on many systems will send them to an actual printer.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
There are various other options which affect printing; see below.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<code>--save </code><em>file-prefix</em> [ <code>--save-suffix </code><em>file-suffix</em> ]
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
If this option is specified, instead of a puzzle being displayed, saved-game files for one or more unsolved puzzles are written to files constructed from the supplied prefix and/or suffix.
|
||||||
|
<p>
|
||||||
|
If <code>--generate</code> has also been specified, the invented game IDs will be used to generate the printed output. Otherwise, a list of game IDs is expected on standard input (which can be descriptive or random seeds; see <a href="#S2.2">section 2.2</a>), in the same format produced by <code>--generate</code>.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
For example:
|
||||||
|
</p>
|
||||||
|
<pre><code>PREFIX-net --generate 12 --save game --save-suffix .sav
|
||||||
|
</code></pre>
|
||||||
|
<p>
|
||||||
|
will generate twelve Net saved-game files with the names <code>game0.sav</code> to <code>game11.sav</code>.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<code>--version</code>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Prints version information about the game, and then quits.
|
||||||
|
</dd>
|
||||||
|
</dl>
|
||||||
|
<p>
|
||||||
|
The following options are only meaningful if <code>--print</code> is also specified:
|
||||||
|
</p>
|
||||||
|
<dl><dt>
|
||||||
|
<code>--with-solutions</code>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
The set of pages filled with unsolved puzzles will be followed by the solutions to those puzzles.
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<code>--scale </code><em>n</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Adjusts how big each puzzle is when printed. Larger numbers make puzzles bigger; the default is 1.0.
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<code>--colour</code>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Puzzles will be printed in colour, rather than in black and white (if supported by the puzzle).
|
||||||
|
</dd>
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
<hr><address></address></body>
|
||||||
|
</html>
|
347
apps/plugins/puzzles/src/compile
Executable file
347
apps/plugins/puzzles/src/compile
Executable file
|
@ -0,0 +1,347 @@
|
||||||
|
#! /bin/sh
|
||||||
|
# Wrapper for compilers which do not understand '-c -o'.
|
||||||
|
|
||||||
|
scriptversion=2012-10-14.11; # UTC
|
||||||
|
|
||||||
|
# Copyright (C) 1999-2014 Free Software Foundation, Inc.
|
||||||
|
# Written by Tom Tromey <tromey@cygnus.com>.
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2, or (at your option)
|
||||||
|
# any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
# As a special exception to the GNU General Public License, if you
|
||||||
|
# distribute this file as part of a program that contains a
|
||||||
|
# configuration script generated by Autoconf, you may include it under
|
||||||
|
# the same distribution terms that you use for the rest of that program.
|
||||||
|
|
||||||
|
# This file is maintained in Automake, please report
|
||||||
|
# bugs to <bug-automake@gnu.org> or send patches to
|
||||||
|
# <automake-patches@gnu.org>.
|
||||||
|
|
||||||
|
nl='
|
||||||
|
'
|
||||||
|
|
||||||
|
# We need space, tab and new line, in precisely that order. Quoting is
|
||||||
|
# there to prevent tools from complaining about whitespace usage.
|
||||||
|
IFS=" "" $nl"
|
||||||
|
|
||||||
|
file_conv=
|
||||||
|
|
||||||
|
# func_file_conv build_file lazy
|
||||||
|
# Convert a $build file to $host form and store it in $file
|
||||||
|
# Currently only supports Windows hosts. If the determined conversion
|
||||||
|
# type is listed in (the comma separated) LAZY, no conversion will
|
||||||
|
# take place.
|
||||||
|
func_file_conv ()
|
||||||
|
{
|
||||||
|
file=$1
|
||||||
|
case $file in
|
||||||
|
/ | /[!/]*) # absolute file, and not a UNC file
|
||||||
|
if test -z "$file_conv"; then
|
||||||
|
# lazily determine how to convert abs files
|
||||||
|
case `uname -s` in
|
||||||
|
MINGW*)
|
||||||
|
file_conv=mingw
|
||||||
|
;;
|
||||||
|
CYGWIN*)
|
||||||
|
file_conv=cygwin
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
file_conv=wine
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
case $file_conv/,$2, in
|
||||||
|
*,$file_conv,*)
|
||||||
|
;;
|
||||||
|
mingw/*)
|
||||||
|
file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
|
||||||
|
;;
|
||||||
|
cygwin/*)
|
||||||
|
file=`cygpath -m "$file" || echo "$file"`
|
||||||
|
;;
|
||||||
|
wine/*)
|
||||||
|
file=`winepath -w "$file" || echo "$file"`
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
# func_cl_dashL linkdir
|
||||||
|
# Make cl look for libraries in LINKDIR
|
||||||
|
func_cl_dashL ()
|
||||||
|
{
|
||||||
|
func_file_conv "$1"
|
||||||
|
if test -z "$lib_path"; then
|
||||||
|
lib_path=$file
|
||||||
|
else
|
||||||
|
lib_path="$lib_path;$file"
|
||||||
|
fi
|
||||||
|
linker_opts="$linker_opts -LIBPATH:$file"
|
||||||
|
}
|
||||||
|
|
||||||
|
# func_cl_dashl library
|
||||||
|
# Do a library search-path lookup for cl
|
||||||
|
func_cl_dashl ()
|
||||||
|
{
|
||||||
|
lib=$1
|
||||||
|
found=no
|
||||||
|
save_IFS=$IFS
|
||||||
|
IFS=';'
|
||||||
|
for dir in $lib_path $LIB
|
||||||
|
do
|
||||||
|
IFS=$save_IFS
|
||||||
|
if $shared && test -f "$dir/$lib.dll.lib"; then
|
||||||
|
found=yes
|
||||||
|
lib=$dir/$lib.dll.lib
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
if test -f "$dir/$lib.lib"; then
|
||||||
|
found=yes
|
||||||
|
lib=$dir/$lib.lib
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
if test -f "$dir/lib$lib.a"; then
|
||||||
|
found=yes
|
||||||
|
lib=$dir/lib$lib.a
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
IFS=$save_IFS
|
||||||
|
|
||||||
|
if test "$found" != yes; then
|
||||||
|
lib=$lib.lib
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# func_cl_wrapper cl arg...
|
||||||
|
# Adjust compile command to suit cl
|
||||||
|
func_cl_wrapper ()
|
||||||
|
{
|
||||||
|
# Assume a capable shell
|
||||||
|
lib_path=
|
||||||
|
shared=:
|
||||||
|
linker_opts=
|
||||||
|
for arg
|
||||||
|
do
|
||||||
|
if test -n "$eat"; then
|
||||||
|
eat=
|
||||||
|
else
|
||||||
|
case $1 in
|
||||||
|
-o)
|
||||||
|
# configure might choose to run compile as 'compile cc -o foo foo.c'.
|
||||||
|
eat=1
|
||||||
|
case $2 in
|
||||||
|
*.o | *.[oO][bB][jJ])
|
||||||
|
func_file_conv "$2"
|
||||||
|
set x "$@" -Fo"$file"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
func_file_conv "$2"
|
||||||
|
set x "$@" -Fe"$file"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
-I)
|
||||||
|
eat=1
|
||||||
|
func_file_conv "$2" mingw
|
||||||
|
set x "$@" -I"$file"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-I*)
|
||||||
|
func_file_conv "${1#-I}" mingw
|
||||||
|
set x "$@" -I"$file"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-l)
|
||||||
|
eat=1
|
||||||
|
func_cl_dashl "$2"
|
||||||
|
set x "$@" "$lib"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-l*)
|
||||||
|
func_cl_dashl "${1#-l}"
|
||||||
|
set x "$@" "$lib"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-L)
|
||||||
|
eat=1
|
||||||
|
func_cl_dashL "$2"
|
||||||
|
;;
|
||||||
|
-L*)
|
||||||
|
func_cl_dashL "${1#-L}"
|
||||||
|
;;
|
||||||
|
-static)
|
||||||
|
shared=false
|
||||||
|
;;
|
||||||
|
-Wl,*)
|
||||||
|
arg=${1#-Wl,}
|
||||||
|
save_ifs="$IFS"; IFS=','
|
||||||
|
for flag in $arg; do
|
||||||
|
IFS="$save_ifs"
|
||||||
|
linker_opts="$linker_opts $flag"
|
||||||
|
done
|
||||||
|
IFS="$save_ifs"
|
||||||
|
;;
|
||||||
|
-Xlinker)
|
||||||
|
eat=1
|
||||||
|
linker_opts="$linker_opts $2"
|
||||||
|
;;
|
||||||
|
-*)
|
||||||
|
set x "$@" "$1"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
*.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
|
||||||
|
func_file_conv "$1"
|
||||||
|
set x "$@" -Tp"$file"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
*.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
|
||||||
|
func_file_conv "$1" mingw
|
||||||
|
set x "$@" "$file"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
set x "$@" "$1"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
if test -n "$linker_opts"; then
|
||||||
|
linker_opts="-link$linker_opts"
|
||||||
|
fi
|
||||||
|
exec "$@" $linker_opts
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
eat=
|
||||||
|
|
||||||
|
case $1 in
|
||||||
|
'')
|
||||||
|
echo "$0: No command. Try '$0 --help' for more information." 1>&2
|
||||||
|
exit 1;
|
||||||
|
;;
|
||||||
|
-h | --h*)
|
||||||
|
cat <<\EOF
|
||||||
|
Usage: compile [--help] [--version] PROGRAM [ARGS]
|
||||||
|
|
||||||
|
Wrapper for compilers which do not understand '-c -o'.
|
||||||
|
Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
|
||||||
|
arguments, and rename the output as expected.
|
||||||
|
|
||||||
|
If you are trying to build a whole package this is not the
|
||||||
|
right script to run: please start by reading the file 'INSTALL'.
|
||||||
|
|
||||||
|
Report bugs to <bug-automake@gnu.org>.
|
||||||
|
EOF
|
||||||
|
exit $?
|
||||||
|
;;
|
||||||
|
-v | --v*)
|
||||||
|
echo "compile $scriptversion"
|
||||||
|
exit $?
|
||||||
|
;;
|
||||||
|
cl | *[/\\]cl | cl.exe | *[/\\]cl.exe )
|
||||||
|
func_cl_wrapper "$@" # Doesn't return...
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
ofile=
|
||||||
|
cfile=
|
||||||
|
|
||||||
|
for arg
|
||||||
|
do
|
||||||
|
if test -n "$eat"; then
|
||||||
|
eat=
|
||||||
|
else
|
||||||
|
case $1 in
|
||||||
|
-o)
|
||||||
|
# configure might choose to run compile as 'compile cc -o foo foo.c'.
|
||||||
|
# So we strip '-o arg' only if arg is an object.
|
||||||
|
eat=1
|
||||||
|
case $2 in
|
||||||
|
*.o | *.obj)
|
||||||
|
ofile=$2
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
set x "$@" -o "$2"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
*.c)
|
||||||
|
cfile=$1
|
||||||
|
set x "$@" "$1"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
set x "$@" "$1"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
|
||||||
|
if test -z "$ofile" || test -z "$cfile"; then
|
||||||
|
# If no '-o' option was seen then we might have been invoked from a
|
||||||
|
# pattern rule where we don't need one. That is ok -- this is a
|
||||||
|
# normal compilation that the losing compiler can handle. If no
|
||||||
|
# '.c' file was seen then we are probably linking. That is also
|
||||||
|
# ok.
|
||||||
|
exec "$@"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Name of file we expect compiler to create.
|
||||||
|
cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
|
||||||
|
|
||||||
|
# Create the lock directory.
|
||||||
|
# Note: use '[/\\:.-]' here to ensure that we don't use the same name
|
||||||
|
# that we are using for the .o file. Also, base the name on the expected
|
||||||
|
# object file name, since that is what matters with a parallel build.
|
||||||
|
lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
|
||||||
|
while true; do
|
||||||
|
if mkdir "$lockdir" >/dev/null 2>&1; then
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
# FIXME: race condition here if user kills between mkdir and trap.
|
||||||
|
trap "rmdir '$lockdir'; exit 1" 1 2 15
|
||||||
|
|
||||||
|
# Run the compile.
|
||||||
|
"$@"
|
||||||
|
ret=$?
|
||||||
|
|
||||||
|
if test -f "$cofile"; then
|
||||||
|
test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
|
||||||
|
elif test -f "${cofile}bj"; then
|
||||||
|
test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
|
||||||
|
fi
|
||||||
|
|
||||||
|
rmdir "$lockdir"
|
||||||
|
exit $ret
|
||||||
|
|
||||||
|
# Local Variables:
|
||||||
|
# mode: shell-script
|
||||||
|
# sh-indentation: 2
|
||||||
|
# eval: (add-hook 'write-file-hooks 'time-stamp)
|
||||||
|
# time-stamp-start: "scriptversion="
|
||||||
|
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||||
|
# time-stamp-time-zone: "UTC"
|
||||||
|
# time-stamp-end: "; # UTC"
|
||||||
|
# End:
|
135
apps/plugins/puzzles/src/config.log
Normal file
135
apps/plugins/puzzles/src/config.log
Normal file
|
@ -0,0 +1,135 @@
|
||||||
|
This file contains any messages produced by compilers while
|
||||||
|
running configure, to aid debugging if configure makes a mistake.
|
||||||
|
|
||||||
|
It was created by puzzles configure 6.66, which was
|
||||||
|
generated by GNU Autoconf 2.69. Invocation command line was
|
||||||
|
|
||||||
|
$ ./configure
|
||||||
|
|
||||||
|
## --------- ##
|
||||||
|
## Platform. ##
|
||||||
|
## --------- ##
|
||||||
|
|
||||||
|
hostname = alpha
|
||||||
|
uname -m = x86_64
|
||||||
|
uname -r = 4.8.4-1-ARCH
|
||||||
|
uname -s = Linux
|
||||||
|
uname -v = #1 SMP PREEMPT Sat Oct 22 18:26:57 CEST 2016
|
||||||
|
|
||||||
|
/usr/bin/uname -p = unknown
|
||||||
|
/bin/uname -X = unknown
|
||||||
|
|
||||||
|
/bin/arch = unknown
|
||||||
|
/usr/bin/arch -k = unknown
|
||||||
|
/usr/convex/getsysinfo = unknown
|
||||||
|
/usr/bin/hostinfo = unknown
|
||||||
|
/bin/machine = unknown
|
||||||
|
/usr/bin/oslevel = unknown
|
||||||
|
/bin/universe = unknown
|
||||||
|
|
||||||
|
PATH: /usr/local/sbin
|
||||||
|
PATH: /usr/local/bin
|
||||||
|
PATH: /usr/bin
|
||||||
|
PATH: /opt/cuda/bin
|
||||||
|
PATH: /usr/lib/jvm/default/bin
|
||||||
|
PATH: /opt/kde/bin
|
||||||
|
PATH: /usr/bin/site_perl
|
||||||
|
PATH: /usr/bin/vendor_perl
|
||||||
|
PATH: /usr/bin/core_perl
|
||||||
|
|
||||||
|
|
||||||
|
## ----------- ##
|
||||||
|
## Core tests. ##
|
||||||
|
## ----------- ##
|
||||||
|
|
||||||
|
|
||||||
|
## ---------------- ##
|
||||||
|
## Cache variables. ##
|
||||||
|
## ---------------- ##
|
||||||
|
|
||||||
|
ac_cv_env_CC_set=
|
||||||
|
ac_cv_env_CC_value=
|
||||||
|
ac_cv_env_CFLAGS_set=
|
||||||
|
ac_cv_env_CFLAGS_value=
|
||||||
|
ac_cv_env_CPPFLAGS_set=
|
||||||
|
ac_cv_env_CPPFLAGS_value=
|
||||||
|
ac_cv_env_LDFLAGS_set=
|
||||||
|
ac_cv_env_LDFLAGS_value=
|
||||||
|
ac_cv_env_LIBS_set=
|
||||||
|
ac_cv_env_LIBS_value=
|
||||||
|
ac_cv_env_build_alias_set=
|
||||||
|
ac_cv_env_build_alias_value=
|
||||||
|
ac_cv_env_host_alias_set=
|
||||||
|
ac_cv_env_host_alias_value=
|
||||||
|
ac_cv_env_target_alias_set=
|
||||||
|
ac_cv_env_target_alias_value=
|
||||||
|
|
||||||
|
## ----------------- ##
|
||||||
|
## Output variables. ##
|
||||||
|
## ----------------- ##
|
||||||
|
|
||||||
|
CC=''
|
||||||
|
CFLAGS=''
|
||||||
|
CPPFLAGS=''
|
||||||
|
DEFS=''
|
||||||
|
ECHO_C=''
|
||||||
|
ECHO_N='-n'
|
||||||
|
ECHO_T=''
|
||||||
|
EXEEXT=''
|
||||||
|
INSTALL_DATA=''
|
||||||
|
INSTALL_PROGRAM=''
|
||||||
|
INSTALL_SCRIPT=''
|
||||||
|
LDFLAGS=''
|
||||||
|
LIBOBJS=''
|
||||||
|
LIBS=''
|
||||||
|
LTLIBOBJS=''
|
||||||
|
OBJEXT=''
|
||||||
|
PACKAGE_BUGREPORT='anakin@pobox.com'
|
||||||
|
PACKAGE_NAME='puzzles'
|
||||||
|
PACKAGE_STRING='puzzles 6.66'
|
||||||
|
PACKAGE_TARNAME='puzzles'
|
||||||
|
PACKAGE_URL=''
|
||||||
|
PACKAGE_VERSION='6.66'
|
||||||
|
PATH_SEPARATOR=':'
|
||||||
|
RANLIB=''
|
||||||
|
SHELL='/bin/sh'
|
||||||
|
ac_ct_CC=''
|
||||||
|
bindir='${exec_prefix}/bin'
|
||||||
|
build_alias=''
|
||||||
|
datadir='${datarootdir}'
|
||||||
|
datarootdir='${prefix}/share'
|
||||||
|
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
|
||||||
|
dvidir='${docdir}'
|
||||||
|
exec_prefix='NONE'
|
||||||
|
host_alias=''
|
||||||
|
htmldir='${docdir}'
|
||||||
|
includedir='${prefix}/include'
|
||||||
|
infodir='${datarootdir}/info'
|
||||||
|
libdir='${exec_prefix}/lib'
|
||||||
|
libexecdir='${exec_prefix}/libexec'
|
||||||
|
localedir='${datarootdir}/locale'
|
||||||
|
localstatedir='${prefix}/var'
|
||||||
|
mandir='${datarootdir}/man'
|
||||||
|
oldincludedir='/usr/include'
|
||||||
|
pdfdir='${docdir}'
|
||||||
|
prefix='NONE'
|
||||||
|
program_transform_name='s,x,x,'
|
||||||
|
psdir='${docdir}'
|
||||||
|
sbindir='${exec_prefix}/sbin'
|
||||||
|
sharedstatedir='${prefix}/com'
|
||||||
|
sysconfdir='${prefix}/etc'
|
||||||
|
target_alias=''
|
||||||
|
|
||||||
|
## ----------- ##
|
||||||
|
## confdefs.h. ##
|
||||||
|
## ----------- ##
|
||||||
|
|
||||||
|
/* confdefs.h */
|
||||||
|
#define PACKAGE_NAME "puzzles"
|
||||||
|
#define PACKAGE_TARNAME "puzzles"
|
||||||
|
#define PACKAGE_VERSION "6.66"
|
||||||
|
#define PACKAGE_STRING "puzzles 6.66"
|
||||||
|
#define PACKAGE_BUGREPORT "anakin@pobox.com"
|
||||||
|
#define PACKAGE_URL ""
|
||||||
|
|
||||||
|
configure: exit 2
|
5739
apps/plugins/puzzles/src/configure
vendored
Executable file
5739
apps/plugins/puzzles/src/configure
vendored
Executable file
File diff suppressed because it is too large
Load diff
|
@ -5,7 +5,7 @@
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include "rbassert.h"
|
#include <assert.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
|
|
||||||
|
@ -1737,7 +1737,7 @@ static void game_print(drawing *dr, const game_state *state, int tilesize)
|
||||||
const struct game thegame = {
|
const struct game thegame = {
|
||||||
"Cube", "games.cube", "cube",
|
"Cube", "games.cube", "cube",
|
||||||
default_params,
|
default_params,
|
||||||
game_fetch_preset,
|
game_fetch_preset, NULL,
|
||||||
decode_params,
|
decode_params,
|
||||||
encode_params,
|
encode_params,
|
||||||
free_params,
|
free_params,
|
57
apps/plugins/puzzles/src/cube.html
Normal file
57
apps/plugins/puzzles/src/cube.html
Normal file
|
@ -0,0 +1,57 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
|
||||||
|
"http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="content-type" content="text/html; charset=US-ASCII">
|
||||||
|
<title>Cube</title>
|
||||||
|
<link rel="previous" href="net.html">
|
||||||
|
<link rel="ToC" href="index.html">
|
||||||
|
<link rel="up" href="index.html">
|
||||||
|
<link rel="index" href="docindex.html">
|
||||||
|
<link rel="next" href="fifteen.html">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<p><a href="net.html">Previous</a> | <a href="index.html">Contents</a> | <a href="docindex.html">Index</a> | <a href="fifteen.html">Next</a></p>
|
||||||
|
<h1><a name="C4"></a>Chapter 4: <a name="i0"></a>Cube</h1>
|
||||||
|
<p>
|
||||||
|
This is another one I originally saw as a web game. This one was a Java game <a href="#p0">[2]</a>, by Paul Scott. You have a grid of 16 squares, six of which are blue; on one square rests a cube. Your move is to use the arrow keys to roll the cube through 90 degrees so that it moves to an adjacent square. If you roll the cube on to a blue square, the blue square is picked up on one face of the cube; if you roll a blue face of the cube on to a non-blue square, the blueness is put down again. (In general, whenever you roll the cube, the two faces that come into contact swap colours.) Your job is to get all six blue squares on to the six faces of the cube at the same time. Count your moves and try to do it in as few as possible.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Unlike the original Java game, my version has an additional feature: once you've mastered the game with a cube rolling on a square grid, you can change to a triangular grid and roll any of a tetrahedron, an octahedron or an icosahedron.
|
||||||
|
</p>
|
||||||
|
<p><a name="p0"></a>
|
||||||
|
[2] <a href="http://www3.sympatico.ca/paulscott/cube/cube.htm"><code>http://www3.sympatico.ca/paulscott/cube/cube.htm</code></a>
|
||||||
|
</p>
|
||||||
|
<h2><a name="S4.1"></a>4.1 <a name="i1"></a>Cube controls</h2>
|
||||||
|
<p>
|
||||||
|
This game can be played with either the keyboard or the mouse.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Left-clicking anywhere on the window will move the cube (or other solid) towards the mouse pointer.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
The arrow keys can also used to roll the cube on its square grid in the four cardinal directions. On the triangular grids, the mapping of arrow keys to directions is more approximate. Vertical movement is disallowed where it doesn't make sense. The four keys surrounding the arrow keys on the numeric keypad (‘7’, ‘9’, ‘1’, ‘3’) can be used for diagonal movement.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
(All the actions described in <a href="common.html#S2.1">section 2.1</a> are also available.)
|
||||||
|
</p>
|
||||||
|
<h2><a name="S4.2"></a>4.2 <a name="i2"></a>Cube parameters</h2>
|
||||||
|
<p>
|
||||||
|
These parameters are available from the ‘Custom...’ option on the ‘Type’ menu.
|
||||||
|
</p>
|
||||||
|
<dl><dt>
|
||||||
|
<em>Type of solid</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Selects the solid to roll (and hence the shape of the grid): tetrahedron, cube, octahedron, or icosahedron.
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<em>Width / top</em>, <em>Height / bottom</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
On a square grid, horizontal and vertical dimensions. On a triangular grid, the number of triangles on the top and bottom rows respectively.
|
||||||
|
</dd>
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
<hr><address></address></body>
|
||||||
|
</html>
|
791
apps/plugins/puzzles/src/depcomp
Executable file
791
apps/plugins/puzzles/src/depcomp
Executable file
|
@ -0,0 +1,791 @@
|
||||||
|
#! /bin/sh
|
||||||
|
# depcomp - compile a program generating dependencies as side-effects
|
||||||
|
|
||||||
|
scriptversion=2013-05-30.07; # UTC
|
||||||
|
|
||||||
|
# Copyright (C) 1999-2014 Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
# This program is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2, or (at your option)
|
||||||
|
# any later version.
|
||||||
|
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
# As a special exception to the GNU General Public License, if you
|
||||||
|
# distribute this file as part of a program that contains a
|
||||||
|
# configuration script generated by Autoconf, you may include it under
|
||||||
|
# the same distribution terms that you use for the rest of that program.
|
||||||
|
|
||||||
|
# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
|
||||||
|
|
||||||
|
case $1 in
|
||||||
|
'')
|
||||||
|
echo "$0: No command. Try '$0 --help' for more information." 1>&2
|
||||||
|
exit 1;
|
||||||
|
;;
|
||||||
|
-h | --h*)
|
||||||
|
cat <<\EOF
|
||||||
|
Usage: depcomp [--help] [--version] PROGRAM [ARGS]
|
||||||
|
|
||||||
|
Run PROGRAMS ARGS to compile a file, generating dependencies
|
||||||
|
as side-effects.
|
||||||
|
|
||||||
|
Environment variables:
|
||||||
|
depmode Dependency tracking mode.
|
||||||
|
source Source file read by 'PROGRAMS ARGS'.
|
||||||
|
object Object file output by 'PROGRAMS ARGS'.
|
||||||
|
DEPDIR directory where to store dependencies.
|
||||||
|
depfile Dependency file to output.
|
||||||
|
tmpdepfile Temporary file to use when outputting dependencies.
|
||||||
|
libtool Whether libtool is used (yes/no).
|
||||||
|
|
||||||
|
Report bugs to <bug-automake@gnu.org>.
|
||||||
|
EOF
|
||||||
|
exit $?
|
||||||
|
;;
|
||||||
|
-v | --v*)
|
||||||
|
echo "depcomp $scriptversion"
|
||||||
|
exit $?
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# Get the directory component of the given path, and save it in the
|
||||||
|
# global variables '$dir'. Note that this directory component will
|
||||||
|
# be either empty or ending with a '/' character. This is deliberate.
|
||||||
|
set_dir_from ()
|
||||||
|
{
|
||||||
|
case $1 in
|
||||||
|
*/*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;;
|
||||||
|
*) dir=;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
# Get the suffix-stripped basename of the given path, and save it the
|
||||||
|
# global variable '$base'.
|
||||||
|
set_base_from ()
|
||||||
|
{
|
||||||
|
base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'`
|
||||||
|
}
|
||||||
|
|
||||||
|
# If no dependency file was actually created by the compiler invocation,
|
||||||
|
# we still have to create a dummy depfile, to avoid errors with the
|
||||||
|
# Makefile "include basename.Plo" scheme.
|
||||||
|
make_dummy_depfile ()
|
||||||
|
{
|
||||||
|
echo "#dummy" > "$depfile"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Factor out some common post-processing of the generated depfile.
|
||||||
|
# Requires the auxiliary global variable '$tmpdepfile' to be set.
|
||||||
|
aix_post_process_depfile ()
|
||||||
|
{
|
||||||
|
# If the compiler actually managed to produce a dependency file,
|
||||||
|
# post-process it.
|
||||||
|
if test -f "$tmpdepfile"; then
|
||||||
|
# Each line is of the form 'foo.o: dependency.h'.
|
||||||
|
# Do two passes, one to just change these to
|
||||||
|
# $object: dependency.h
|
||||||
|
# and one to simply output
|
||||||
|
# dependency.h:
|
||||||
|
# which is needed to avoid the deleted-header problem.
|
||||||
|
{ sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile"
|
||||||
|
sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile"
|
||||||
|
} > "$depfile"
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
else
|
||||||
|
make_dummy_depfile
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# A tabulation character.
|
||||||
|
tab=' '
|
||||||
|
# A newline character.
|
||||||
|
nl='
|
||||||
|
'
|
||||||
|
# Character ranges might be problematic outside the C locale.
|
||||||
|
# These definitions help.
|
||||||
|
upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ
|
||||||
|
lower=abcdefghijklmnopqrstuvwxyz
|
||||||
|
digits=0123456789
|
||||||
|
alpha=${upper}${lower}
|
||||||
|
|
||||||
|
if test -z "$depmode" || test -z "$source" || test -z "$object"; then
|
||||||
|
echo "depcomp: Variables source, object and depmode must be set" 1>&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
|
||||||
|
depfile=${depfile-`echo "$object" |
|
||||||
|
sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
|
||||||
|
tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
|
||||||
|
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
|
||||||
|
# Avoid interferences from the environment.
|
||||||
|
gccflag= dashmflag=
|
||||||
|
|
||||||
|
# Some modes work just like other modes, but use different flags. We
|
||||||
|
# parameterize here, but still list the modes in the big case below,
|
||||||
|
# to make depend.m4 easier to write. Note that we *cannot* use a case
|
||||||
|
# here, because this file can only contain one case statement.
|
||||||
|
if test "$depmode" = hp; then
|
||||||
|
# HP compiler uses -M and no extra arg.
|
||||||
|
gccflag=-M
|
||||||
|
depmode=gcc
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$depmode" = dashXmstdout; then
|
||||||
|
# This is just like dashmstdout with a different argument.
|
||||||
|
dashmflag=-xM
|
||||||
|
depmode=dashmstdout
|
||||||
|
fi
|
||||||
|
|
||||||
|
cygpath_u="cygpath -u -f -"
|
||||||
|
if test "$depmode" = msvcmsys; then
|
||||||
|
# This is just like msvisualcpp but w/o cygpath translation.
|
||||||
|
# Just convert the backslash-escaped backslashes to single forward
|
||||||
|
# slashes to satisfy depend.m4
|
||||||
|
cygpath_u='sed s,\\\\,/,g'
|
||||||
|
depmode=msvisualcpp
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$depmode" = msvc7msys; then
|
||||||
|
# This is just like msvc7 but w/o cygpath translation.
|
||||||
|
# Just convert the backslash-escaped backslashes to single forward
|
||||||
|
# slashes to satisfy depend.m4
|
||||||
|
cygpath_u='sed s,\\\\,/,g'
|
||||||
|
depmode=msvc7
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$depmode" = xlc; then
|
||||||
|
# IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information.
|
||||||
|
gccflag=-qmakedep=gcc,-MF
|
||||||
|
depmode=gcc
|
||||||
|
fi
|
||||||
|
|
||||||
|
case "$depmode" in
|
||||||
|
gcc3)
|
||||||
|
## gcc 3 implements dependency tracking that does exactly what
|
||||||
|
## we want. Yay! Note: for some reason libtool 1.4 doesn't like
|
||||||
|
## it if -MD -MP comes after the -MF stuff. Hmm.
|
||||||
|
## Unfortunately, FreeBSD c89 acceptance of flags depends upon
|
||||||
|
## the command line argument order; so add the flags where they
|
||||||
|
## appear in depend2.am. Note that the slowdown incurred here
|
||||||
|
## affects only configure: in makefiles, %FASTDEP% shortcuts this.
|
||||||
|
for arg
|
||||||
|
do
|
||||||
|
case $arg in
|
||||||
|
-c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
|
||||||
|
*) set fnord "$@" "$arg" ;;
|
||||||
|
esac
|
||||||
|
shift # fnord
|
||||||
|
shift # $arg
|
||||||
|
done
|
||||||
|
"$@"
|
||||||
|
stat=$?
|
||||||
|
if test $stat -ne 0; then
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
exit $stat
|
||||||
|
fi
|
||||||
|
mv "$tmpdepfile" "$depfile"
|
||||||
|
;;
|
||||||
|
|
||||||
|
gcc)
|
||||||
|
## Note that this doesn't just cater to obsosete pre-3.x GCC compilers.
|
||||||
|
## but also to in-use compilers like IMB xlc/xlC and the HP C compiler.
|
||||||
|
## (see the conditional assignment to $gccflag above).
|
||||||
|
## There are various ways to get dependency output from gcc. Here's
|
||||||
|
## why we pick this rather obscure method:
|
||||||
|
## - Don't want to use -MD because we'd like the dependencies to end
|
||||||
|
## up in a subdir. Having to rename by hand is ugly.
|
||||||
|
## (We might end up doing this anyway to support other compilers.)
|
||||||
|
## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
|
||||||
|
## -MM, not -M (despite what the docs say). Also, it might not be
|
||||||
|
## supported by the other compilers which use the 'gcc' depmode.
|
||||||
|
## - Using -M directly means running the compiler twice (even worse
|
||||||
|
## than renaming).
|
||||||
|
if test -z "$gccflag"; then
|
||||||
|
gccflag=-MD,
|
||||||
|
fi
|
||||||
|
"$@" -Wp,"$gccflag$tmpdepfile"
|
||||||
|
stat=$?
|
||||||
|
if test $stat -ne 0; then
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
exit $stat
|
||||||
|
fi
|
||||||
|
rm -f "$depfile"
|
||||||
|
echo "$object : \\" > "$depfile"
|
||||||
|
# The second -e expression handles DOS-style file names with drive
|
||||||
|
# letters.
|
||||||
|
sed -e 's/^[^:]*: / /' \
|
||||||
|
-e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
|
||||||
|
## This next piece of magic avoids the "deleted header file" problem.
|
||||||
|
## The problem is that when a header file which appears in a .P file
|
||||||
|
## is deleted, the dependency causes make to die (because there is
|
||||||
|
## typically no way to rebuild the header). We avoid this by adding
|
||||||
|
## dummy dependencies for each header file. Too bad gcc doesn't do
|
||||||
|
## this for us directly.
|
||||||
|
## Some versions of gcc put a space before the ':'. On the theory
|
||||||
|
## that the space means something, we add a space to the output as
|
||||||
|
## well. hp depmode also adds that space, but also prefixes the VPATH
|
||||||
|
## to the object. Take care to not repeat it in the output.
|
||||||
|
## Some versions of the HPUX 10.20 sed can't process this invocation
|
||||||
|
## correctly. Breaking it into two sed invocations is a workaround.
|
||||||
|
tr ' ' "$nl" < "$tmpdepfile" \
|
||||||
|
| sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
|
||||||
|
| sed -e 's/$/ :/' >> "$depfile"
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
;;
|
||||||
|
|
||||||
|
hp)
|
||||||
|
# This case exists only to let depend.m4 do its work. It works by
|
||||||
|
# looking at the text of this script. This case will never be run,
|
||||||
|
# since it is checked for above.
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
|
||||||
|
sgi)
|
||||||
|
if test "$libtool" = yes; then
|
||||||
|
"$@" "-Wp,-MDupdate,$tmpdepfile"
|
||||||
|
else
|
||||||
|
"$@" -MDupdate "$tmpdepfile"
|
||||||
|
fi
|
||||||
|
stat=$?
|
||||||
|
if test $stat -ne 0; then
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
exit $stat
|
||||||
|
fi
|
||||||
|
rm -f "$depfile"
|
||||||
|
|
||||||
|
if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
|
||||||
|
echo "$object : \\" > "$depfile"
|
||||||
|
# Clip off the initial element (the dependent). Don't try to be
|
||||||
|
# clever and replace this with sed code, as IRIX sed won't handle
|
||||||
|
# lines with more than a fixed number of characters (4096 in
|
||||||
|
# IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
|
||||||
|
# the IRIX cc adds comments like '#:fec' to the end of the
|
||||||
|
# dependency line.
|
||||||
|
tr ' ' "$nl" < "$tmpdepfile" \
|
||||||
|
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \
|
||||||
|
| tr "$nl" ' ' >> "$depfile"
|
||||||
|
echo >> "$depfile"
|
||||||
|
# The second pass generates a dummy entry for each header file.
|
||||||
|
tr ' ' "$nl" < "$tmpdepfile" \
|
||||||
|
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
|
||||||
|
>> "$depfile"
|
||||||
|
else
|
||||||
|
make_dummy_depfile
|
||||||
|
fi
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
;;
|
||||||
|
|
||||||
|
xlc)
|
||||||
|
# This case exists only to let depend.m4 do its work. It works by
|
||||||
|
# looking at the text of this script. This case will never be run,
|
||||||
|
# since it is checked for above.
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
|
||||||
|
aix)
|
||||||
|
# The C for AIX Compiler uses -M and outputs the dependencies
|
||||||
|
# in a .u file. In older versions, this file always lives in the
|
||||||
|
# current directory. Also, the AIX compiler puts '$object:' at the
|
||||||
|
# start of each line; $object doesn't have directory information.
|
||||||
|
# Version 6 uses the directory in both cases.
|
||||||
|
set_dir_from "$object"
|
||||||
|
set_base_from "$object"
|
||||||
|
if test "$libtool" = yes; then
|
||||||
|
tmpdepfile1=$dir$base.u
|
||||||
|
tmpdepfile2=$base.u
|
||||||
|
tmpdepfile3=$dir.libs/$base.u
|
||||||
|
"$@" -Wc,-M
|
||||||
|
else
|
||||||
|
tmpdepfile1=$dir$base.u
|
||||||
|
tmpdepfile2=$dir$base.u
|
||||||
|
tmpdepfile3=$dir$base.u
|
||||||
|
"$@" -M
|
||||||
|
fi
|
||||||
|
stat=$?
|
||||||
|
if test $stat -ne 0; then
|
||||||
|
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||||
|
exit $stat
|
||||||
|
fi
|
||||||
|
|
||||||
|
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||||
|
do
|
||||||
|
test -f "$tmpdepfile" && break
|
||||||
|
done
|
||||||
|
aix_post_process_depfile
|
||||||
|
;;
|
||||||
|
|
||||||
|
tcc)
|
||||||
|
# tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26
|
||||||
|
# FIXME: That version still under development at the moment of writing.
|
||||||
|
# Make that this statement remains true also for stable, released
|
||||||
|
# versions.
|
||||||
|
# It will wrap lines (doesn't matter whether long or short) with a
|
||||||
|
# trailing '\', as in:
|
||||||
|
#
|
||||||
|
# foo.o : \
|
||||||
|
# foo.c \
|
||||||
|
# foo.h \
|
||||||
|
#
|
||||||
|
# It will put a trailing '\' even on the last line, and will use leading
|
||||||
|
# spaces rather than leading tabs (at least since its commit 0394caf7
|
||||||
|
# "Emit spaces for -MD").
|
||||||
|
"$@" -MD -MF "$tmpdepfile"
|
||||||
|
stat=$?
|
||||||
|
if test $stat -ne 0; then
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
exit $stat
|
||||||
|
fi
|
||||||
|
rm -f "$depfile"
|
||||||
|
# Each non-empty line is of the form 'foo.o : \' or ' dep.h \'.
|
||||||
|
# We have to change lines of the first kind to '$object: \'.
|
||||||
|
sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile"
|
||||||
|
# And for each line of the second kind, we have to emit a 'dep.h:'
|
||||||
|
# dummy dependency, to avoid the deleted-header problem.
|
||||||
|
sed -n -e 's|^ *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile"
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
;;
|
||||||
|
|
||||||
|
## The order of this option in the case statement is important, since the
|
||||||
|
## shell code in configure will try each of these formats in the order
|
||||||
|
## listed in this file. A plain '-MD' option would be understood by many
|
||||||
|
## compilers, so we must ensure this comes after the gcc and icc options.
|
||||||
|
pgcc)
|
||||||
|
# Portland's C compiler understands '-MD'.
|
||||||
|
# Will always output deps to 'file.d' where file is the root name of the
|
||||||
|
# source file under compilation, even if file resides in a subdirectory.
|
||||||
|
# The object file name does not affect the name of the '.d' file.
|
||||||
|
# pgcc 10.2 will output
|
||||||
|
# foo.o: sub/foo.c sub/foo.h
|
||||||
|
# and will wrap long lines using '\' :
|
||||||
|
# foo.o: sub/foo.c ... \
|
||||||
|
# sub/foo.h ... \
|
||||||
|
# ...
|
||||||
|
set_dir_from "$object"
|
||||||
|
# Use the source, not the object, to determine the base name, since
|
||||||
|
# that's sadly what pgcc will do too.
|
||||||
|
set_base_from "$source"
|
||||||
|
tmpdepfile=$base.d
|
||||||
|
|
||||||
|
# For projects that build the same source file twice into different object
|
||||||
|
# files, the pgcc approach of using the *source* file root name can cause
|
||||||
|
# problems in parallel builds. Use a locking strategy to avoid stomping on
|
||||||
|
# the same $tmpdepfile.
|
||||||
|
lockdir=$base.d-lock
|
||||||
|
trap "
|
||||||
|
echo '$0: caught signal, cleaning up...' >&2
|
||||||
|
rmdir '$lockdir'
|
||||||
|
exit 1
|
||||||
|
" 1 2 13 15
|
||||||
|
numtries=100
|
||||||
|
i=$numtries
|
||||||
|
while test $i -gt 0; do
|
||||||
|
# mkdir is a portable test-and-set.
|
||||||
|
if mkdir "$lockdir" 2>/dev/null; then
|
||||||
|
# This process acquired the lock.
|
||||||
|
"$@" -MD
|
||||||
|
stat=$?
|
||||||
|
# Release the lock.
|
||||||
|
rmdir "$lockdir"
|
||||||
|
break
|
||||||
|
else
|
||||||
|
# If the lock is being held by a different process, wait
|
||||||
|
# until the winning process is done or we timeout.
|
||||||
|
while test -d "$lockdir" && test $i -gt 0; do
|
||||||
|
sleep 1
|
||||||
|
i=`expr $i - 1`
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
i=`expr $i - 1`
|
||||||
|
done
|
||||||
|
trap - 1 2 13 15
|
||||||
|
if test $i -le 0; then
|
||||||
|
echo "$0: failed to acquire lock after $numtries attempts" >&2
|
||||||
|
echo "$0: check lockdir '$lockdir'" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test $stat -ne 0; then
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
exit $stat
|
||||||
|
fi
|
||||||
|
rm -f "$depfile"
|
||||||
|
# Each line is of the form `foo.o: dependent.h',
|
||||||
|
# or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
|
||||||
|
# Do two passes, one to just change these to
|
||||||
|
# `$object: dependent.h' and one to simply `dependent.h:'.
|
||||||
|
sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
|
||||||
|
# Some versions of the HPUX 10.20 sed can't process this invocation
|
||||||
|
# correctly. Breaking it into two sed invocations is a workaround.
|
||||||
|
sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \
|
||||||
|
| sed -e 's/$/ :/' >> "$depfile"
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
;;
|
||||||
|
|
||||||
|
hp2)
|
||||||
|
# The "hp" stanza above does not work with aCC (C++) and HP's ia64
|
||||||
|
# compilers, which have integrated preprocessors. The correct option
|
||||||
|
# to use with these is +Maked; it writes dependencies to a file named
|
||||||
|
# 'foo.d', which lands next to the object file, wherever that
|
||||||
|
# happens to be.
|
||||||
|
# Much of this is similar to the tru64 case; see comments there.
|
||||||
|
set_dir_from "$object"
|
||||||
|
set_base_from "$object"
|
||||||
|
if test "$libtool" = yes; then
|
||||||
|
tmpdepfile1=$dir$base.d
|
||||||
|
tmpdepfile2=$dir.libs/$base.d
|
||||||
|
"$@" -Wc,+Maked
|
||||||
|
else
|
||||||
|
tmpdepfile1=$dir$base.d
|
||||||
|
tmpdepfile2=$dir$base.d
|
||||||
|
"$@" +Maked
|
||||||
|
fi
|
||||||
|
stat=$?
|
||||||
|
if test $stat -ne 0; then
|
||||||
|
rm -f "$tmpdepfile1" "$tmpdepfile2"
|
||||||
|
exit $stat
|
||||||
|
fi
|
||||||
|
|
||||||
|
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
|
||||||
|
do
|
||||||
|
test -f "$tmpdepfile" && break
|
||||||
|
done
|
||||||
|
if test -f "$tmpdepfile"; then
|
||||||
|
sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile"
|
||||||
|
# Add 'dependent.h:' lines.
|
||||||
|
sed -ne '2,${
|
||||||
|
s/^ *//
|
||||||
|
s/ \\*$//
|
||||||
|
s/$/:/
|
||||||
|
p
|
||||||
|
}' "$tmpdepfile" >> "$depfile"
|
||||||
|
else
|
||||||
|
make_dummy_depfile
|
||||||
|
fi
|
||||||
|
rm -f "$tmpdepfile" "$tmpdepfile2"
|
||||||
|
;;
|
||||||
|
|
||||||
|
tru64)
|
||||||
|
# The Tru64 compiler uses -MD to generate dependencies as a side
|
||||||
|
# effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.
|
||||||
|
# At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
|
||||||
|
# dependencies in 'foo.d' instead, so we check for that too.
|
||||||
|
# Subdirectories are respected.
|
||||||
|
set_dir_from "$object"
|
||||||
|
set_base_from "$object"
|
||||||
|
|
||||||
|
if test "$libtool" = yes; then
|
||||||
|
# Libtool generates 2 separate objects for the 2 libraries. These
|
||||||
|
# two compilations output dependencies in $dir.libs/$base.o.d and
|
||||||
|
# in $dir$base.o.d. We have to check for both files, because
|
||||||
|
# one of the two compilations can be disabled. We should prefer
|
||||||
|
# $dir$base.o.d over $dir.libs/$base.o.d because the latter is
|
||||||
|
# automatically cleaned when .libs/ is deleted, while ignoring
|
||||||
|
# the former would cause a distcleancheck panic.
|
||||||
|
tmpdepfile1=$dir$base.o.d # libtool 1.5
|
||||||
|
tmpdepfile2=$dir.libs/$base.o.d # Likewise.
|
||||||
|
tmpdepfile3=$dir.libs/$base.d # Compaq CCC V6.2-504
|
||||||
|
"$@" -Wc,-MD
|
||||||
|
else
|
||||||
|
tmpdepfile1=$dir$base.d
|
||||||
|
tmpdepfile2=$dir$base.d
|
||||||
|
tmpdepfile3=$dir$base.d
|
||||||
|
"$@" -MD
|
||||||
|
fi
|
||||||
|
|
||||||
|
stat=$?
|
||||||
|
if test $stat -ne 0; then
|
||||||
|
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||||
|
exit $stat
|
||||||
|
fi
|
||||||
|
|
||||||
|
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||||
|
do
|
||||||
|
test -f "$tmpdepfile" && break
|
||||||
|
done
|
||||||
|
# Same post-processing that is required for AIX mode.
|
||||||
|
aix_post_process_depfile
|
||||||
|
;;
|
||||||
|
|
||||||
|
msvc7)
|
||||||
|
if test "$libtool" = yes; then
|
||||||
|
showIncludes=-Wc,-showIncludes
|
||||||
|
else
|
||||||
|
showIncludes=-showIncludes
|
||||||
|
fi
|
||||||
|
"$@" $showIncludes > "$tmpdepfile"
|
||||||
|
stat=$?
|
||||||
|
grep -v '^Note: including file: ' "$tmpdepfile"
|
||||||
|
if test $stat -ne 0; then
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
exit $stat
|
||||||
|
fi
|
||||||
|
rm -f "$depfile"
|
||||||
|
echo "$object : \\" > "$depfile"
|
||||||
|
# The first sed program below extracts the file names and escapes
|
||||||
|
# backslashes for cygpath. The second sed program outputs the file
|
||||||
|
# name when reading, but also accumulates all include files in the
|
||||||
|
# hold buffer in order to output them again at the end. This only
|
||||||
|
# works with sed implementations that can handle large buffers.
|
||||||
|
sed < "$tmpdepfile" -n '
|
||||||
|
/^Note: including file: *\(.*\)/ {
|
||||||
|
s//\1/
|
||||||
|
s/\\/\\\\/g
|
||||||
|
p
|
||||||
|
}' | $cygpath_u | sort -u | sed -n '
|
||||||
|
s/ /\\ /g
|
||||||
|
s/\(.*\)/'"$tab"'\1 \\/p
|
||||||
|
s/.\(.*\) \\/\1:/
|
||||||
|
H
|
||||||
|
$ {
|
||||||
|
s/.*/'"$tab"'/
|
||||||
|
G
|
||||||
|
p
|
||||||
|
}' >> "$depfile"
|
||||||
|
echo >> "$depfile" # make sure the fragment doesn't end with a backslash
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
;;
|
||||||
|
|
||||||
|
msvc7msys)
|
||||||
|
# This case exists only to let depend.m4 do its work. It works by
|
||||||
|
# looking at the text of this script. This case will never be run,
|
||||||
|
# since it is checked for above.
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
|
||||||
|
#nosideeffect)
|
||||||
|
# This comment above is used by automake to tell side-effect
|
||||||
|
# dependency tracking mechanisms from slower ones.
|
||||||
|
|
||||||
|
dashmstdout)
|
||||||
|
# Important note: in order to support this mode, a compiler *must*
|
||||||
|
# always write the preprocessed file to stdout, regardless of -o.
|
||||||
|
"$@" || exit $?
|
||||||
|
|
||||||
|
# Remove the call to Libtool.
|
||||||
|
if test "$libtool" = yes; then
|
||||||
|
while test "X$1" != 'X--mode=compile'; do
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
shift
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Remove '-o $object'.
|
||||||
|
IFS=" "
|
||||||
|
for arg
|
||||||
|
do
|
||||||
|
case $arg in
|
||||||
|
-o)
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
$object)
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
set fnord "$@" "$arg"
|
||||||
|
shift # fnord
|
||||||
|
shift # $arg
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
test -z "$dashmflag" && dashmflag=-M
|
||||||
|
# Require at least two characters before searching for ':'
|
||||||
|
# in the target name. This is to cope with DOS-style filenames:
|
||||||
|
# a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise.
|
||||||
|
"$@" $dashmflag |
|
||||||
|
sed "s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile"
|
||||||
|
rm -f "$depfile"
|
||||||
|
cat < "$tmpdepfile" > "$depfile"
|
||||||
|
# Some versions of the HPUX 10.20 sed can't process this sed invocation
|
||||||
|
# correctly. Breaking it into two sed invocations is a workaround.
|
||||||
|
tr ' ' "$nl" < "$tmpdepfile" \
|
||||||
|
| sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
|
||||||
|
| sed -e 's/$/ :/' >> "$depfile"
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
;;
|
||||||
|
|
||||||
|
dashXmstdout)
|
||||||
|
# This case only exists to satisfy depend.m4. It is never actually
|
||||||
|
# run, as this mode is specially recognized in the preamble.
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
|
||||||
|
makedepend)
|
||||||
|
"$@" || exit $?
|
||||||
|
# Remove any Libtool call
|
||||||
|
if test "$libtool" = yes; then
|
||||||
|
while test "X$1" != 'X--mode=compile'; do
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
shift
|
||||||
|
fi
|
||||||
|
# X makedepend
|
||||||
|
shift
|
||||||
|
cleared=no eat=no
|
||||||
|
for arg
|
||||||
|
do
|
||||||
|
case $cleared in
|
||||||
|
no)
|
||||||
|
set ""; shift
|
||||||
|
cleared=yes ;;
|
||||||
|
esac
|
||||||
|
if test $eat = yes; then
|
||||||
|
eat=no
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
case "$arg" in
|
||||||
|
-D*|-I*)
|
||||||
|
set fnord "$@" "$arg"; shift ;;
|
||||||
|
# Strip any option that makedepend may not understand. Remove
|
||||||
|
# the object too, otherwise makedepend will parse it as a source file.
|
||||||
|
-arch)
|
||||||
|
eat=yes ;;
|
||||||
|
-*|$object)
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
set fnord "$@" "$arg"; shift ;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
obj_suffix=`echo "$object" | sed 's/^.*\././'`
|
||||||
|
touch "$tmpdepfile"
|
||||||
|
${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
|
||||||
|
rm -f "$depfile"
|
||||||
|
# makedepend may prepend the VPATH from the source file name to the object.
|
||||||
|
# No need to regex-escape $object, excess matching of '.' is harmless.
|
||||||
|
sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile"
|
||||||
|
# Some versions of the HPUX 10.20 sed can't process the last invocation
|
||||||
|
# correctly. Breaking it into two sed invocations is a workaround.
|
||||||
|
sed '1,2d' "$tmpdepfile" \
|
||||||
|
| tr ' ' "$nl" \
|
||||||
|
| sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
|
||||||
|
| sed -e 's/$/ :/' >> "$depfile"
|
||||||
|
rm -f "$tmpdepfile" "$tmpdepfile".bak
|
||||||
|
;;
|
||||||
|
|
||||||
|
cpp)
|
||||||
|
# Important note: in order to support this mode, a compiler *must*
|
||||||
|
# always write the preprocessed file to stdout.
|
||||||
|
"$@" || exit $?
|
||||||
|
|
||||||
|
# Remove the call to Libtool.
|
||||||
|
if test "$libtool" = yes; then
|
||||||
|
while test "X$1" != 'X--mode=compile'; do
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
shift
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Remove '-o $object'.
|
||||||
|
IFS=" "
|
||||||
|
for arg
|
||||||
|
do
|
||||||
|
case $arg in
|
||||||
|
-o)
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
$object)
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
set fnord "$@" "$arg"
|
||||||
|
shift # fnord
|
||||||
|
shift # $arg
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
"$@" -E \
|
||||||
|
| sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
|
||||||
|
-e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
|
||||||
|
| sed '$ s: \\$::' > "$tmpdepfile"
|
||||||
|
rm -f "$depfile"
|
||||||
|
echo "$object : \\" > "$depfile"
|
||||||
|
cat < "$tmpdepfile" >> "$depfile"
|
||||||
|
sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
;;
|
||||||
|
|
||||||
|
msvisualcpp)
|
||||||
|
# Important note: in order to support this mode, a compiler *must*
|
||||||
|
# always write the preprocessed file to stdout.
|
||||||
|
"$@" || exit $?
|
||||||
|
|
||||||
|
# Remove the call to Libtool.
|
||||||
|
if test "$libtool" = yes; then
|
||||||
|
while test "X$1" != 'X--mode=compile'; do
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
shift
|
||||||
|
fi
|
||||||
|
|
||||||
|
IFS=" "
|
||||||
|
for arg
|
||||||
|
do
|
||||||
|
case "$arg" in
|
||||||
|
-o)
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
$object)
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
"-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
|
||||||
|
set fnord "$@"
|
||||||
|
shift
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
set fnord "$@" "$arg"
|
||||||
|
shift
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
"$@" -E 2>/dev/null |
|
||||||
|
sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
|
||||||
|
rm -f "$depfile"
|
||||||
|
echo "$object : \\" > "$depfile"
|
||||||
|
sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile"
|
||||||
|
echo "$tab" >> "$depfile"
|
||||||
|
sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
|
||||||
|
rm -f "$tmpdepfile"
|
||||||
|
;;
|
||||||
|
|
||||||
|
msvcmsys)
|
||||||
|
# This case exists only to let depend.m4 do its work. It works by
|
||||||
|
# looking at the text of this script. This case will never be run,
|
||||||
|
# since it is checked for above.
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
|
||||||
|
none)
|
||||||
|
exec "$@"
|
||||||
|
;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
echo "Unknown depmode $depmode" 1>&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
# Local Variables:
|
||||||
|
# mode: shell-script
|
||||||
|
# sh-indentation: 2
|
||||||
|
# eval: (add-hook 'write-file-hooks 'time-stamp)
|
||||||
|
# time-stamp-start: "scriptversion="
|
||||||
|
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||||
|
# time-stamp-time-zone: "UTC"
|
||||||
|
# time-stamp-end: "; # UTC"
|
||||||
|
# End:
|
|
@ -391,8 +391,9 @@ with the default values, and returns a pointer to it.
|
||||||
|
|
||||||
\c int (*fetch_preset)(int i, char **name, game_params **params);
|
\c int (*fetch_preset)(int i, char **name, game_params **params);
|
||||||
|
|
||||||
This function is used to populate the \q{Type} menu, which provides
|
This function is one of the two APIs a back end can provide to
|
||||||
a list of conveniently accessible preset parameters for most games.
|
populate the \q{Type} menu, which provides a list of conveniently
|
||||||
|
accessible preset parameters for most games.
|
||||||
|
|
||||||
The function is called with \c{i} equal to the index of the preset
|
The function is called with \c{i} equal to the index of the preset
|
||||||
required (numbering from zero). It returns \cw{FALSE} if that preset
|
required (numbering from zero). It returns \cw{FALSE} if that preset
|
||||||
|
@ -406,6 +407,33 @@ returns \cw{TRUE}.
|
||||||
If the game does not wish to support any presets at all, this
|
If the game does not wish to support any presets at all, this
|
||||||
function is permitted to return \cw{FALSE} always.
|
function is permitted to return \cw{FALSE} always.
|
||||||
|
|
||||||
|
If the game wants to return presets in the form of a hierarchical menu
|
||||||
|
instead of a flat list (and, indeed, even if it doesn't), then it may
|
||||||
|
set this function pointer to \cw{NULL}, and instead fill in the
|
||||||
|
alternative function pointer \cw{preset_menu}
|
||||||
|
(\k{backend-preset-menu}).
|
||||||
|
|
||||||
|
\S{backend-preset-menu} \cw{preset_menu()}
|
||||||
|
|
||||||
|
\c struct preset_menu *(*preset_menu)(void);
|
||||||
|
|
||||||
|
This function is the more flexible of the two APIs by which a back end
|
||||||
|
can define a collection of preset game parameters.
|
||||||
|
|
||||||
|
This function simply returns a complete menu hierarchy, in the form of
|
||||||
|
a \c{struct preset_menu} (see \k{midend-get-presets}) and further
|
||||||
|
submenus (if it wishes) dangling off it. There are utility functions
|
||||||
|
described in \k{utils-presets} to make it easy for the back end to
|
||||||
|
construct this menu.
|
||||||
|
|
||||||
|
If the game has no need to return a hierarchy of menus, it may instead
|
||||||
|
opt to implement the \cw{fetch_preset()} function (see
|
||||||
|
\k{backend-fetch-preset}).
|
||||||
|
|
||||||
|
The game need not fill in the \c{id} fields in the preset menu
|
||||||
|
structures. The mid-end will do that after it receives the structure
|
||||||
|
from the game, and before passing it on to the front end.
|
||||||
|
|
||||||
\S{backend-encode-params} \cw{encode_params()}
|
\S{backend-encode-params} \cw{encode_params()}
|
||||||
|
|
||||||
\c char *(*encode_params)(const game_params *params, int full);
|
\c char *(*encode_params)(const game_params *params, int full);
|
||||||
|
@ -2743,8 +2771,8 @@ these parameters until further notice.
|
||||||
|
|
||||||
The usual way in which the front end will have an actual
|
The usual way in which the front end will have an actual
|
||||||
\c{game_params} structure to pass to this function is if it had
|
\c{game_params} structure to pass to this function is if it had
|
||||||
previously got it from \cw{midend_fetch_preset()}
|
previously got it from \cw{midend_get_presets()}
|
||||||
(\k{midend-fetch-preset}). Thus, this function is usually called in
|
(\k{midend-get-presets}). Thus, this function is usually called in
|
||||||
response to the user making a selection from the presets menu.
|
response to the user making a selection from the presets menu.
|
||||||
|
|
||||||
\H{midend-get-params} \cw{midend_get_params()}
|
\H{midend-get-params} \cw{midend_get_params()}
|
||||||
|
@ -2966,34 +2994,63 @@ One of the major purposes of timing in the mid-end is to perform
|
||||||
move animation. Therefore, calling this function is very likely to
|
move animation. Therefore, calling this function is very likely to
|
||||||
result in calls back to the front end's drawing API.
|
result in calls back to the front end's drawing API.
|
||||||
|
|
||||||
\H{midend-num-presets} \cw{midend_num_presets()}
|
\H{midend-get-presets} \cw{midend_get_presets()}
|
||||||
|
|
||||||
\c int midend_num_presets(midend *me);
|
\c struct preset_menu *midend_get_presets(midend *me, int *id_limit);
|
||||||
|
|
||||||
Returns the number of game parameter presets supplied by this game.
|
Returns a data structure describing this game's collection of preset
|
||||||
Front ends should use this function and \cw{midend_fetch_preset()}
|
game parameters, organised into a hierarchical structure of menus and
|
||||||
to configure their presets menu rather than calling the back end
|
submenus.
|
||||||
directly, since the mid-end adds standard customisation facilities.
|
|
||||||
(At the time of writing, those customisation facilities are
|
|
||||||
implemented hackily by means of environment variables, but it's not
|
|
||||||
impossible that they may become more full and formal in future.)
|
|
||||||
|
|
||||||
\H{midend-fetch-preset} \cw{midend_fetch_preset()}
|
The return value is a pointer to a data structure containing the
|
||||||
|
following fields (among others, which are not intended for front end
|
||||||
|
use):
|
||||||
|
|
||||||
\c void midend_fetch_preset(midend *me, int n,
|
\c struct preset_menu {
|
||||||
\c char **name, game_params **params);
|
\c int n_entries;
|
||||||
|
\c struct preset_menu_entry *entries;
|
||||||
|
\c /* and other things */
|
||||||
|
\e iiiiiiiiiiiiiiiiiiiiii
|
||||||
|
\c };
|
||||||
|
|
||||||
Returns one of the preset game parameter structures for the game. On
|
Those fields describe the intended contents of one particular menu in
|
||||||
input \c{n} must be a non-negative integer and less than the value
|
the hierarchy. \cq{entries} points to an array of \cq{n_entries}
|
||||||
returned from \cw{midend_num_presets()}. On output, \c{*name} is set
|
items, each of which is a structure containing the following fields:
|
||||||
to an ASCII string suitable for entering in the game's presets menu,
|
|
||||||
and \c{*params} is set to the corresponding \c{game_params}
|
|
||||||
structure.
|
|
||||||
|
|
||||||
Both of the two output values are dynamically allocated, but they
|
\c struct preset_menu_entry {
|
||||||
are owned by the mid-end structure: the front end should not ever
|
\c char *title;
|
||||||
free them directly, because they will be freed automatically during
|
\c game_params *params;
|
||||||
\cw{midend_free()}.
|
\c struct preset_menu *submenu;
|
||||||
|
\c int id;
|
||||||
|
\c };
|
||||||
|
|
||||||
|
Of these fields, \cq{title} and \cq{id} are present in every entry,
|
||||||
|
giving (respectively) the textual name of the menu item and an integer
|
||||||
|
identifier for it. The integer id will correspond to the one returned
|
||||||
|
by \c{midend_which_preset} (\k{midend-which-preset}), when that preset
|
||||||
|
is the one selected.
|
||||||
|
|
||||||
|
The other two fields are mutually exclusive. Each \c{struct
|
||||||
|
preset_menu_entry} will have one of those fields \cw{NULL} and the
|
||||||
|
other one non-null. If the menu item is an actual preset, then
|
||||||
|
\cq{params} will point to the set of game parameters that go with the
|
||||||
|
name; if it's a submenu, then \cq{submenu} instead will be non-null,
|
||||||
|
and will point at a subsidiary \c{struct preset_menu}.
|
||||||
|
|
||||||
|
The complete hierarchy of these structures is owned by the mid-end,
|
||||||
|
and will be freed when the mid-end is freed. The front end should not
|
||||||
|
attempt to free any of it.
|
||||||
|
|
||||||
|
The integer identifiers will be allocated densely from 0 upwards, so
|
||||||
|
that it's reasonable for the front end to allocate an array which uses
|
||||||
|
them as indices, if it needs to store information per preset menu
|
||||||
|
item. For this purpose, the front end may pass the second parameter
|
||||||
|
\cq{id_limit} to \cw{midend_get_presets} as the address of an \c{int}
|
||||||
|
variable, into which \cw{midend_get_presets} will write an integer one
|
||||||
|
larger than the largest id number actually used (i.e. the number of
|
||||||
|
elements the front end would need in the array).
|
||||||
|
|
||||||
|
Submenu-type entries also have integer identifiers.
|
||||||
|
|
||||||
\H{midend-which-preset} \cw{midend_which_preset()}
|
\H{midend-which-preset} \cw{midend_which_preset()}
|
||||||
|
|
||||||
|
@ -3005,6 +3062,10 @@ no preset matches. Front ends could use this to maintain a tick
|
||||||
beside one of the items in the menu (or tick the \q{Custom} option
|
beside one of the items in the menu (or tick the \q{Custom} option
|
||||||
if the return value is less than zero).
|
if the return value is less than zero).
|
||||||
|
|
||||||
|
The returned index value (if non-negative) will match the \c{id} field
|
||||||
|
of the corresponding \cw{struct preset_menu_entry} returned by
|
||||||
|
\c{midend_get_presets()} (\k{midend-get-presets}).
|
||||||
|
|
||||||
\H{midend-wants-statusbar} \cw{midend_wants_statusbar()}
|
\H{midend-wants-statusbar} \cw{midend_wants_statusbar()}
|
||||||
|
|
||||||
\c int midend_wants_statusbar(midend *me);
|
\c int midend_wants_statusbar(midend *me);
|
||||||
|
@ -3535,6 +3596,63 @@ single element (typically measured using \c{sizeof}). \c{rs} is a
|
||||||
\c{random_state} used to generate all the random numbers for the
|
\c{random_state} used to generate all the random numbers for the
|
||||||
shuffling process.
|
shuffling process.
|
||||||
|
|
||||||
|
\H{utils-presets} Presets menu management
|
||||||
|
|
||||||
|
The function \c{midend_get_presets()} (\k{midend-get-presets}) returns
|
||||||
|
a data structure describing a menu hierarchy. Back ends can also
|
||||||
|
choose to provide such a structure to the mid-end, if they want to
|
||||||
|
group their presets hierarchically. To make this easy, there are a few
|
||||||
|
utility functions to construct preset menu structures, and also one
|
||||||
|
intended for front-end use.
|
||||||
|
|
||||||
|
\S{utils-preset-menu-new} \cw{preset_menu_new()}
|
||||||
|
|
||||||
|
\c struct preset_menu *preset_menu_new(void);
|
||||||
|
|
||||||
|
Allocates a new \c{struct preset_menu}, and initialises it to hold no
|
||||||
|
menu items.
|
||||||
|
|
||||||
|
\S{utils-preset-menu-add_submenu} \cw{preset_menu_add_submenu()}
|
||||||
|
|
||||||
|
\c struct preset_menu *preset_menu_add_submenu
|
||||||
|
\c (struct preset_menu *parent, char *title);
|
||||||
|
|
||||||
|
Adds a new submenu to the end of an existing preset menu, and returns
|
||||||
|
a pointer to a newly allocated \c{struct preset_menu} describing the
|
||||||
|
submenu.
|
||||||
|
|
||||||
|
The string parameter \cq{title} must be dynamically allocated by the
|
||||||
|
caller. The preset-menu structure will take ownership of it, so the
|
||||||
|
caller must not free it.
|
||||||
|
|
||||||
|
\S{utils-preset-menu-add-preset} \cw{preset_menu_add_preset()}
|
||||||
|
|
||||||
|
\c void preset_menu_add_preset
|
||||||
|
\c (struct preset_menu *menu, char *title, game_params *params);
|
||||||
|
|
||||||
|
Adds a preset game configuration to the end of a preset menu.
|
||||||
|
|
||||||
|
Both the string parameter \cq{title} and the game parameter structure
|
||||||
|
\cq{params} itself must be dynamically allocated by the caller. The
|
||||||
|
preset-menu structure will take ownership of it, so the caller must
|
||||||
|
not free it.
|
||||||
|
|
||||||
|
\S{utils-preset-menu-lookup-by-id} \cw{preset_menu_lookup_by_id()}
|
||||||
|
|
||||||
|
\c game_params *preset_menu_lookup_by_id
|
||||||
|
\c (struct preset_menu *menu, int id);
|
||||||
|
|
||||||
|
Given a numeric index, searches recursively through a preset menu
|
||||||
|
hierarchy to find the corresponding menu entry, and returns a pointer
|
||||||
|
to its existing \c{game_params} structure.
|
||||||
|
|
||||||
|
This function is intended for front end use (but front ends need not
|
||||||
|
use it if they prefer to do things another way). If a front end finds
|
||||||
|
it inconvenient to store anything more than a numeric index alongside
|
||||||
|
each menu item, then this function provides an easy way for the front
|
||||||
|
end to get back the actual game parameters corresponding to a menu
|
||||||
|
item that the user has selected.
|
||||||
|
|
||||||
\H{utils-alloc} Memory allocation
|
\H{utils-alloc} Memory allocation
|
||||||
|
|
||||||
Puzzles has some central wrappers on the standard memory allocation
|
Puzzles has some central wrappers on the standard memory allocation
|
|
@ -185,7 +185,7 @@
|
||||||
* think of.
|
* think of.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "rbassert.h"
|
#include <assert.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <stddef.h>
|
#include <stddef.h>
|
217
apps/plugins/puzzles/src/docindex.html
Normal file
217
apps/plugins/puzzles/src/docindex.html
Normal file
|
@ -0,0 +1,217 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
|
||||||
|
"http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="content-type" content="text/html; charset=US-ASCII">
|
||||||
|
<title></title>
|
||||||
|
<link rel="previous" href="licence.html">
|
||||||
|
<link rel="ToC" href="index.html">
|
||||||
|
<link rel="up" href="index.html">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<p><a href="licence.html">Previous</a> | <a href="index.html">Contents</a> | Index | Next</p>
|
||||||
|
<h1><a name="Index"></a>Index</h1><p>
|
||||||
|
Black Box: <a href="blackbox.html#i0">Chapter 19</a><br>
|
||||||
|
Bridges: <a href="bridges.html#i0">Chapter 26</a><br>
|
||||||
|
bugs: <a href="intro.html#i7">Chapter 1</a><br>
|
||||||
|
command line: <a href="common.html#i23">Section 2.2</a>, <a href="common.html#i32">Section 2.4</a>, <a href="common.html#i36">Section 2.5</a><br>
|
||||||
|
common features: <a href="common.html#i0">Chapter 2</a><br>
|
||||||
|
controls: <a href="common.html#i1">Section 2.1</a><br>
|
||||||
|
controls, for Black Box: <a href="blackbox.html#i1">Section 19.1</a><br>
|
||||||
|
controls, for Bridges: <a href="bridges.html#i2">Section 26.1</a><br>
|
||||||
|
controls, for Cube: <a href="cube.html#i1">Section 4.1</a><br>
|
||||||
|
controls, for Dominosa: <a href="dominosa.html#i1">Section 17.1</a><br>
|
||||||
|
controls, for Fifteen: <a href="fifteen.html#i2">Section 5.1</a><br>
|
||||||
|
controls, for Filling: <a href="filling.html#i2">Section 29.1</a><br>
|
||||||
|
controls, for Flip: <a href="flip.html#i1">Section 14.1</a><br>
|
||||||
|
controls, for Flood: <a href="flood.html#i1">Section 39.1</a><br>
|
||||||
|
controls, for Galaxies: <a href="galaxies.html#i2">Section 28.1</a><br>
|
||||||
|
controls, for Guess: <a href="guess.html#i2">Section 15.1</a><br>
|
||||||
|
controls, for Inertia: <a href="inertia.html#i1">Section 24.1</a><br>
|
||||||
|
controls, for Keen: <a href="keen.html#i2">Section 30.1</a><br>
|
||||||
|
controls, for Light Up: <a href="lightup.html#i2">Section 21.1</a><br>
|
||||||
|
controls, for Loopy: <a href="loopy.html#i2">Section 23.1</a><br>
|
||||||
|
controls, for Magnets: <a href="magnets.html#i2">Section 33.1</a><br>
|
||||||
|
controls, for Map: <a href="map.html#i2">Section 22.1</a><br>
|
||||||
|
controls, for Mines: <a href="mines.html#i1">Section 12.1</a><br>
|
||||||
|
controls, for Net: <a href="net.html#i5">Section 3.1</a><br>
|
||||||
|
controls, for Netslide: <a href="netslide.html#i1">Chapter 9</a><br>
|
||||||
|
controls, for Palisade: <a href="palisade.html#i2">Section 41.1</a><br>
|
||||||
|
controls, for Pattern: <a href="pattern.html#i2">Section 10.1</a><br>
|
||||||
|
controls, for Pearl: <a href="pearl.html#i2">Section 36.1</a><br>
|
||||||
|
controls, for Pegs: <a href="pegs.html#i2">Section 16.1</a><br>
|
||||||
|
controls, for Range: <a href="range.html#i2">Section 35.1</a><br>
|
||||||
|
controls, for Rectangles: <a href="rect.html#i3">Section 8.1</a><br>
|
||||||
|
controls, for Same Game: <a href="samegame.html#i1">Section 13.1</a><br>
|
||||||
|
controls, for Signpost: <a href="signpost.html#i2">Section 34.1</a><br>
|
||||||
|
controls, for Singles: <a href="singles.html#i3">Section 32.1</a><br>
|
||||||
|
controls, for Sixteen: <a href="sixteen.html#i1">Section 6.1</a><br>
|
||||||
|
controls, for Slant: <a href="slant.html#i2">Section 20.1</a><br>
|
||||||
|
controls, for Solo: <a href="solo.html#i2">Section 11.1</a><br>
|
||||||
|
controls, for Tents: <a href="tents.html#i1">Section 25.1</a><br>
|
||||||
|
controls, for Towers: <a href="towers.html#i2">Section 31.1</a><br>
|
||||||
|
controls, for Tracks: <a href="tracks.html#i1">Section 40.1</a><br>
|
||||||
|
controls, for Twiddle: <a href="twiddle.html#i1">Section 7.1</a><br>
|
||||||
|
controls, for Undead: <a href="undead.html#i1">Section 37.1</a><br>
|
||||||
|
controls, for Unequal: <a href="unequal.html#i3">Section 27.1</a><br>
|
||||||
|
controls, for Unruly: <a href="unruly.html#i1">Section 38.1</a><br>
|
||||||
|
controls, for Untangle: <a href="untangle.html#i2">Section 18.1</a><br>
|
||||||
|
copy: <a href="common.html#i14">Section 2.1</a><br>
|
||||||
|
copyright: <a href="licence.html#i2">Appendix A</a><br>
|
||||||
|
Cube: <a href="cube.html#i0">Chapter 4</a><br>
|
||||||
|
‘Custom’, menu option: <a href="common.html#i30">Section 2.3</a><br>
|
||||||
|
default parameters, specifying: <a href="common.html#i34">Section 2.4</a><br>
|
||||||
|
Dominosa: <a href="dominosa.html#i0">Chapter 17</a><br>
|
||||||
|
Edit menu: <a href="common.html#i6">Section 2.1</a><br>
|
||||||
|
exit: <a href="common.html#i16">Section 2.1</a><br>
|
||||||
|
feedback: <a href="intro.html#i6">Chapter 1</a><br>
|
||||||
|
Fifteen: <a href="fifteen.html#i0">Chapter 5</a><br>
|
||||||
|
File menu: <a href="common.html#i5">Section 2.1</a><br>
|
||||||
|
Filling: <a href="filling.html#i0">Chapter 29</a><br>
|
||||||
|
Flip: <a href="flip.html#i0">Chapter 14</a><br>
|
||||||
|
Flood: <a href="flood.html#i0">Chapter 39</a><br>
|
||||||
|
format, ID: <a href="common.html#i26">Section 2.2</a><br>
|
||||||
|
four-colouring: <a href="map.html#i1">Chapter 22</a><br>
|
||||||
|
FreeNet: <a href="net.html#i3">Chapter 3</a><br>
|
||||||
|
Futoshiki: <a href="unequal.html#i2">Chapter 27</a><br>
|
||||||
|
Galaxies: <a href="galaxies.html#i0">Chapter 28</a><br>
|
||||||
|
game ID: <a href="common.html#i18">Section 2.2</a><br>
|
||||||
|
game ID, format: <a href="common.html#i26">Section 2.2</a><br>
|
||||||
|
game ID, generating: <a href="common.html#i39">Section 2.5</a><br>
|
||||||
|
Game menu: <a href="common.html#i2">Section 2.1</a>, <a href="common.html#i21">Section 2.2</a><br>
|
||||||
|
generating game IDs: <a href="common.html#i39">Section 2.5</a><br>
|
||||||
|
Guess: <a href="guess.html#i0">Chapter 15</a><br>
|
||||||
|
Hitori: <a href="singles.html#i2">Chapter 32</a><br>
|
||||||
|
ID format: <a href="common.html#i26">Section 2.2</a><br>
|
||||||
|
ID, game: <a href="common.html#i18">Section 2.2</a><br>
|
||||||
|
Inertia: <a href="inertia.html#i0">Chapter 24</a><br>
|
||||||
|
initial state: <a href="common.html#i24">Section 2.2</a><br>
|
||||||
|
Janko: <a href="magnets.html#i1">Chapter 33</a>, <a href="signpost.html#i1">Chapter 34</a><br>
|
||||||
|
Keen: <a href="keen.html#i0">Chapter 30</a><br>
|
||||||
|
KenKen: <a href="keen.html#i1">Chapter 30</a><br>
|
||||||
|
keys: <a href="common.html#i3">Section 2.1</a><br>
|
||||||
|
keys, for Black Box: <a href="blackbox.html#i1">Section 19.1</a><br>
|
||||||
|
keys, for Cube: <a href="cube.html#i1">Section 4.1</a><br>
|
||||||
|
keys, for Fifteen: <a href="fifteen.html#i2">Section 5.1</a><br>
|
||||||
|
keys, for Flip: <a href="flip.html#i1">Section 14.1</a><br>
|
||||||
|
keys, for Guess: <a href="guess.html#i2">Section 15.1</a><br>
|
||||||
|
keys, for Inertia: <a href="inertia.html#i1">Section 24.1</a><br>
|
||||||
|
keys, for Net: <a href="net.html#i5">Section 3.1</a><br>
|
||||||
|
keys, for Same Game: <a href="samegame.html#i1">Section 13.1</a><br>
|
||||||
|
Latin square: <a href="unequal.html#i1">Chapter 27</a><br>
|
||||||
|
licence: <a href="licence.html#i1">Appendix A</a><br>
|
||||||
|
licence, MIT: <a href="intro.html#i3">Chapter 1</a>, <a href="licence.html#i0">Appendix A</a><br>
|
||||||
|
Light Up: <a href="lightup.html#i0">Chapter 21</a><br>
|
||||||
|
Linux: <a href="intro.html#i0">Chapter 1</a>, <a href="common.html#i35">Section 2.5</a><br>
|
||||||
|
load: <a href="common.html#i9">Section 2.1</a>, <a href="common.html#i38">Section 2.5</a><br>
|
||||||
|
Loopy: <a href="loopy.html#i0">Chapter 23</a><br>
|
||||||
|
Mac OS X: <a href="intro.html#i2">Chapter 1</a>, <a href="common.html#i4">Section 2.1</a>, <a href="common.html#i22">Section 2.2</a>, <a href="common.html#i33">Section 2.4</a><br>
|
||||||
|
Magnets: <a href="magnets.html#i0">Chapter 33</a><br>
|
||||||
|
Map: <a href="map.html#i0">Chapter 22</a><br>
|
||||||
|
Mastermind: <a href="guess.html#i1">Chapter 15</a><br>
|
||||||
|
Mines: <a href="mines.html#i0">Chapter 12</a><br>
|
||||||
|
MIT licence: <a href="intro.html#i3">Chapter 1</a>, <a href="licence.html#i0">Appendix A</a><br>
|
||||||
|
Net: <a href="net.html#i0">Chapter 3</a><br>
|
||||||
|
<code>NETGAME.EXE</code>: <a href="net.html#i2">Chapter 3</a><br>
|
||||||
|
Netslide: <a href="netslide.html#i0">Chapter 9</a><br>
|
||||||
|
NetWalk: <a href="net.html#i4">Chapter 3</a><br>
|
||||||
|
new game: <a href="common.html#i7">Section 2.1</a><br>
|
||||||
|
Nikoli: <a href="rect.html#i1">Chapter 8</a>, <a href="solo.html#i1">Chapter 11</a>, <a href="slant.html#i1">Chapter 20</a>, <a href="lightup.html#i1">Chapter 21</a>, <a href="loopy.html#i1">Chapter 23</a>, <a href="bridges.html#i1">Chapter 26</a>, <a href="galaxies.html#i1">Chapter 28</a>, <a href="filling.html#i1">Chapter 29</a>, <a href="singles.html#i1">Chapter 32</a>, <a href="range.html#i1">Chapter 35</a>, <a href="pearl.html#i1">Chapter 36</a>, <a href="palisade.html#i1">Chapter 41</a><br>
|
||||||
|
nonograms: <a href="pattern.html#i1">Chapter 10</a><br>
|
||||||
|
Palisade: <a href="palisade.html#i0">Chapter 41</a><br>
|
||||||
|
parameters: <a href="common.html#i27">Section 2.2</a>, <a href="common.html#i31">Section 2.3</a><br>
|
||||||
|
parameters, for Black Box: <a href="blackbox.html#i2">Section 19.2</a><br>
|
||||||
|
parameters, for Bridges: <a href="bridges.html#i3">Section 26.2</a><br>
|
||||||
|
parameters, for Cube: <a href="cube.html#i2">Section 4.2</a><br>
|
||||||
|
parameters, for Dominosa: <a href="dominosa.html#i2">Section 17.2</a><br>
|
||||||
|
parameters, for Fifteen: <a href="fifteen.html#i3">Section 5.2</a><br>
|
||||||
|
parameters, for Filling: <a href="filling.html#i3">Section 29.2</a><br>
|
||||||
|
parameters, for flip: <a href="flip.html#i2">Section 14.2</a><br>
|
||||||
|
parameters, for Flood: <a href="flood.html#i2">Section 39.2</a><br>
|
||||||
|
parameters, for Galaxies: <a href="galaxies.html#i3">Section 28.2</a><br>
|
||||||
|
parameters, for Guess: <a href="guess.html#i3">Section 15.2</a><br>
|
||||||
|
parameters, for Inertia: <a href="inertia.html#i2">Section 24.2</a><br>
|
||||||
|
parameters, for Keen: <a href="keen.html#i3">Section 30.2</a><br>
|
||||||
|
parameters, for Light Up: <a href="lightup.html#i3">Section 21.2</a><br>
|
||||||
|
parameters, for Loopy: <a href="loopy.html#i3">Section 23.2</a><br>
|
||||||
|
parameters, for Magnets: <a href="magnets.html#i3">Section 33.2</a><br>
|
||||||
|
parameters, for Map: <a href="map.html#i3">Section 22.2</a><br>
|
||||||
|
parameters, for Mines: <a href="mines.html#i2">Section 12.2</a><br>
|
||||||
|
parameters, for Net: <a href="net.html#i6">Section 3.2</a><br>
|
||||||
|
parameters, for Netslide: <a href="netslide.html#i2">Chapter 9</a><br>
|
||||||
|
parameters, for Palisade: <a href="palisade.html#i3">Section 41.2</a><br>
|
||||||
|
parameters, for Pattern: <a href="pattern.html#i3">Section 10.2</a><br>
|
||||||
|
parameters, for Pearl: <a href="pearl.html#i3">Section 36.2</a><br>
|
||||||
|
parameters, for Pegs: <a href="pegs.html#i3">Section 16.2</a><br>
|
||||||
|
parameters, for Range: <a href="range.html#i3">Section 35.2</a><br>
|
||||||
|
parameters, for Rectangles: <a href="rect.html#i4">Section 8.2</a><br>
|
||||||
|
parameters, for Same Game: <a href="samegame.html#i2">Section 13.2</a><br>
|
||||||
|
parameters, for Signpost: <a href="signpost.html#i3">Section 34.2</a><br>
|
||||||
|
parameters, for Singles: <a href="singles.html#i4">Section 32.2</a><br>
|
||||||
|
parameters, for Sixteen: <a href="sixteen.html#i2">Section 6.2</a><br>
|
||||||
|
parameters, for Slant: <a href="slant.html#i3">Section 20.2</a><br>
|
||||||
|
parameters, for Solo: <a href="solo.html#i3">Section 11.2</a><br>
|
||||||
|
parameters, for Tents: <a href="tents.html#i2">Section 25.2</a><br>
|
||||||
|
parameters, for Towers: <a href="towers.html#i3">Section 31.2</a><br>
|
||||||
|
parameters, for Tracks: <a href="tracks.html#i2">Section 40.2</a><br>
|
||||||
|
parameters, for Twiddle: <a href="twiddle.html#i2">Section 7.2</a><br>
|
||||||
|
parameters, for Undead: <a href="undead.html#i2">Section 37.2</a><br>
|
||||||
|
parameters, for Unequal: <a href="unequal.html#i4">Section 27.2</a><br>
|
||||||
|
parameters, for Unruly: <a href="unruly.html#i2">Section 38.2</a><br>
|
||||||
|
parameters, for Untangle: <a href="untangle.html#i3">Section 18.2</a><br>
|
||||||
|
patches: <a href="intro.html#i8">Chapter 1</a><br>
|
||||||
|
Pattern: <a href="pattern.html#i0">Chapter 10</a><br>
|
||||||
|
Pearl: <a href="pearl.html#i0">Chapter 36</a><br>
|
||||||
|
Pegs: <a href="pegs.html#i0">Chapter 16</a><br>
|
||||||
|
Planarity: <a href="untangle.html#i1">Chapter 18</a><br>
|
||||||
|
PostScript: <a href="common.html#i41">Section 2.5</a><br>
|
||||||
|
preferences, specifying default: <a href="common.html#i34">Section 2.4</a><br>
|
||||||
|
preset: <a href="common.html#i29">Section 2.3</a><br>
|
||||||
|
printing, on Unix: <a href="common.html#i40">Section 2.5</a><br>
|
||||||
|
printing, on Windows: <a href="common.html#i11">Section 2.1</a><br>
|
||||||
|
15-puzzle: <a href="fifteen.html#i1">Chapter 5</a><br>
|
||||||
|
Puzzle Palace: <a href="rect.html#i2">Chapter 8</a><br>
|
||||||
|
quit: <a href="common.html#i17">Section 2.1</a><br>
|
||||||
|
Random Seed: <a href="common.html#i20">Section 2.2</a><br>
|
||||||
|
Range: <a href="range.html#i0">Chapter 35</a><br>
|
||||||
|
Rectangles: <a href="rect.html#i0">Chapter 8</a><br>
|
||||||
|
redo: <a href="common.html#i13">Section 2.1</a><br>
|
||||||
|
restart game: <a href="common.html#i8">Section 2.1</a><br>
|
||||||
|
Same Game: <a href="samegame.html#i0">Chapter 13</a><br>
|
||||||
|
save: <a href="common.html#i10">Section 2.1</a>, <a href="common.html#i37">Section 2.5</a><br>
|
||||||
|
shortcuts (keyboard): <a href="common.html#i3">Section 2.1</a><br>
|
||||||
|
shortcuts (keyboard), for Black Box: <a href="blackbox.html#i1">Section 19.1</a><br>
|
||||||
|
shortcuts (keyboard), for Cube: <a href="cube.html#i1">Section 4.1</a><br>
|
||||||
|
shortcuts (keyboard), for Fifteen: <a href="fifteen.html#i2">Section 5.1</a><br>
|
||||||
|
shortcuts (keyboard), for Flip: <a href="flip.html#i1">Section 14.1</a><br>
|
||||||
|
shortcuts (keyboard), for Guess: <a href="guess.html#i2">Section 15.1</a><br>
|
||||||
|
shortcuts (keyboard), for Inertia: <a href="inertia.html#i1">Section 24.1</a><br>
|
||||||
|
shortcuts (keyboard), for Net: <a href="net.html#i5">Section 3.1</a><br>
|
||||||
|
shortcuts (keyboard), for Same Game: <a href="samegame.html#i1">Section 13.1</a><br>
|
||||||
|
Signpost: <a href="signpost.html#i0">Chapter 34</a><br>
|
||||||
|
Singles: <a href="singles.html#i0">Chapter 32</a><br>
|
||||||
|
Sixteen: <a href="sixteen.html#i0">Chapter 6</a><br>
|
||||||
|
Skyscrapers: <a href="towers.html#i1">Chapter 31</a><br>
|
||||||
|
Slant: <a href="slant.html#i0">Chapter 20</a><br>
|
||||||
|
Solitaire, Peg: <a href="pegs.html#i1">Chapter 16</a><br>
|
||||||
|
Solo: <a href="solo.html#i0">Chapter 11</a><br>
|
||||||
|
solve: <a href="common.html#i15">Section 2.1</a><br>
|
||||||
|
source code: <a href="intro.html#i4">Chapter 1</a><br>
|
||||||
|
‘Specific’, menu option: <a href="common.html#i19">Section 2.2</a><br>
|
||||||
|
state, initial: <a href="common.html#i24">Section 2.2</a><br>
|
||||||
|
Tents: <a href="tents.html#i0">Chapter 25</a><br>
|
||||||
|
Towers: <a href="towers.html#i0">Chapter 31</a><br>
|
||||||
|
Tracks: <a href="tracks.html#i0">Chapter 40</a><br>
|
||||||
|
Twiddle: <a href="twiddle.html#i0">Chapter 7</a><br>
|
||||||
|
Type menu: <a href="common.html#i28">Section 2.3</a><br>
|
||||||
|
Undead: <a href="undead.html#i0">Chapter 37</a><br>
|
||||||
|
undo: <a href="common.html#i12">Section 2.1</a><br>
|
||||||
|
Unequal: <a href="unequal.html#i0">Chapter 27</a><br>
|
||||||
|
Unix: <a href="intro.html#i0">Chapter 1</a>, <a href="common.html#i35">Section 2.5</a><br>
|
||||||
|
Unruly: <a href="unruly.html#i0">Chapter 38</a><br>
|
||||||
|
Untangle: <a href="untangle.html#i0">Chapter 18</a><br>
|
||||||
|
version: <a href="common.html#i25">Section 2.2</a><br>
|
||||||
|
website: <a href="intro.html#i5">Chapter 1</a><br>
|
||||||
|
Windows: <a href="intro.html#i1">Chapter 1</a>, <a href="net.html#i1">Chapter 3</a></p>
|
||||||
|
<hr><address></address></body>
|
||||||
|
</html>
|
|
@ -42,7 +42,7 @@
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include "rbassert.h"
|
#include <assert.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
|
|
||||||
|
@ -1709,7 +1709,7 @@ static void game_print(drawing *dr, const game_state *state, int tilesize)
|
||||||
const struct game thegame = {
|
const struct game thegame = {
|
||||||
"Dominosa", "games.dominosa", "dominosa",
|
"Dominosa", "games.dominosa", "dominosa",
|
||||||
default_params,
|
default_params,
|
||||||
game_fetch_preset,
|
game_fetch_preset, NULL,
|
||||||
decode_params,
|
decode_params,
|
||||||
encode_params,
|
encode_params,
|
||||||
free_params,
|
free_params,
|
57
apps/plugins/puzzles/src/dominosa.html
Normal file
57
apps/plugins/puzzles/src/dominosa.html
Normal file
|
@ -0,0 +1,57 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
|
||||||
|
"http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="content-type" content="text/html; charset=US-ASCII">
|
||||||
|
<title>Dominosa</title>
|
||||||
|
<link rel="previous" href="pegs.html">
|
||||||
|
<link rel="ToC" href="index.html">
|
||||||
|
<link rel="up" href="index.html">
|
||||||
|
<link rel="index" href="docindex.html">
|
||||||
|
<link rel="next" href="untangle.html">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<p><a href="pegs.html">Previous</a> | <a href="index.html">Contents</a> | <a href="docindex.html">Index</a> | <a href="untangle.html">Next</a></p>
|
||||||
|
<h1><a name="C17"></a>Chapter 17: <a name="i0"></a>Dominosa</h1>
|
||||||
|
<p>
|
||||||
|
A normal set of dominoes – that is, one instance of every (unordered) pair of numbers from 0 to 6 – has been arranged irregularly into a rectangle; then the number in each square has been written down and the dominoes themselves removed. Your task is to reconstruct the pattern by arranging the set of dominoes to match the provided array of numbers.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
This puzzle is widely credited to O. S. Adler, and takes part of its name from those initials.
|
||||||
|
</p>
|
||||||
|
<h2><a name="S17.1"></a>17.1 <a name="i1"></a>Dominosa controls</h2>
|
||||||
|
<p>
|
||||||
|
Left-clicking between any two adjacent numbers places a domino covering them, or removes one if it is already present. Trying to place a domino which overlaps existing dominoes will remove the ones it overlaps.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Right-clicking between two adjacent numbers draws a line between them, which you can use to remind yourself that you know those two numbers are <em>not</em> covered by a single domino. Right-clicking again removes the line.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
You can also use the cursor keys to move a cursor around the grid. When the cursor is half way between two adjacent numbers, pressing the return key will place a domino covering those numbers, or pressing the space bar will lay a line between the two squares. Repeating either action removes the domino or line.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Pressing a number key will highlight all occurrences of that number. Pressing that number again will clear the highlighting. Up to two different numbers can be highlighted at any given time.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
(All the actions described in <a href="common.html#S2.1">section 2.1</a> are also available.)
|
||||||
|
</p>
|
||||||
|
<h2><a name="S17.2"></a>17.2 <a name="i2"></a>Dominosa parameters</h2>
|
||||||
|
<p>
|
||||||
|
These parameters are available from the ‘Custom...’ option on the ‘Type’ menu.
|
||||||
|
</p>
|
||||||
|
<dl><dt>
|
||||||
|
<em>Maximum number on dominoes</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Controls the size of the puzzle, by controlling the size of the set of dominoes used to make it. Dominoes with numbers going up to N will give rise to an (N+2) × (N+1) rectangle; so, in particular, the default value of 6 gives an 8×7 grid.
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<em>Ensure unique solution</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Normally, Dominosa will make sure that the puzzles it presents have only one solution. Puzzles with ambiguous sections can be more difficult and sometimes more subtle, so if you like you can turn off this feature. Also, finding <em>all</em> the possible solutions can be an additional challenge for an advanced player. Turning off this option can also speed up puzzle generation.
|
||||||
|
</dd>
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
<hr><address></address></body>
|
||||||
|
</html>
|
|
@ -26,7 +26,7 @@
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include "rbassert.h"
|
#include <assert.h>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
|
|
||||||
#include "puzzles.h"
|
#include "puzzles.h"
|
|
@ -4,7 +4,7 @@
|
||||||
* worry about avoiding closed loops.
|
* worry about avoiding closed loops.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "rbassert.h"
|
#include <assert.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
#include "puzzles.h"
|
#include "puzzles.h"
|
|
@ -47,7 +47,7 @@
|
||||||
* that using whatever they normally use to print PDFs!)
|
* that using whatever they normally use to print PDFs!)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "rbassert.h"
|
#include <assert.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
@ -61,7 +61,8 @@ extern void js_debug(const char *);
|
||||||
extern void js_error_box(const char *message);
|
extern void js_error_box(const char *message);
|
||||||
extern void js_remove_type_dropdown(void);
|
extern void js_remove_type_dropdown(void);
|
||||||
extern void js_remove_solve_button(void);
|
extern void js_remove_solve_button(void);
|
||||||
extern void js_add_preset(const char *name);
|
extern void js_add_preset(int menuid, const char *name, int value);
|
||||||
|
extern int js_add_preset_submenu(int menuid, const char *name);
|
||||||
extern int js_get_selected_preset(void);
|
extern int js_get_selected_preset(void);
|
||||||
extern void js_select_preset(int n);
|
extern void js_select_preset(int n);
|
||||||
extern void js_get_date_64(unsigned *p);
|
extern void js_get_date_64(unsigned *p);
|
||||||
|
@ -552,6 +553,21 @@ static game_params **presets;
|
||||||
static int npresets;
|
static int npresets;
|
||||||
int have_presets_dropdown;
|
int have_presets_dropdown;
|
||||||
|
|
||||||
|
void populate_js_preset_menu(int menuid, struct preset_menu *menu)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
for (i = 0; i < menu->n_entries; i++) {
|
||||||
|
struct preset_menu_entry *entry = &menu->entries[i];
|
||||||
|
if (entry->params) {
|
||||||
|
presets[entry->id] = entry->params;
|
||||||
|
js_add_preset(menuid, entry->title, entry->id);
|
||||||
|
} else {
|
||||||
|
int js_submenu = js_add_preset_submenu(menuid, entry->title);
|
||||||
|
populate_js_preset_menu(js_submenu, entry->submenu);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void select_appropriate_preset(void)
|
void select_appropriate_preset(void)
|
||||||
{
|
{
|
||||||
if (have_presets_dropdown) {
|
if (have_presets_dropdown) {
|
||||||
|
@ -696,7 +712,7 @@ void command(int n)
|
||||||
midend_redraw(me);
|
midend_redraw(me);
|
||||||
update_undo_redo();
|
update_undo_redo();
|
||||||
js_focus_canvas();
|
js_focus_canvas();
|
||||||
select_appropriate_preset(); /* sort out Custom/Customise */
|
select_appropriate_preset();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -787,23 +803,16 @@ int main(int argc, char **argv)
|
||||||
* Set up the game-type dropdown with presets and/or the Custom
|
* Set up the game-type dropdown with presets and/or the Custom
|
||||||
* option.
|
* option.
|
||||||
*/
|
*/
|
||||||
npresets = midend_num_presets(me);
|
{
|
||||||
if (npresets == 0) {
|
struct preset_menu *menu = midend_get_presets(me, &npresets);
|
||||||
/*
|
|
||||||
* This puzzle doesn't have selectable game types at all.
|
|
||||||
* Completely remove the drop-down list from the page.
|
|
||||||
*/
|
|
||||||
js_remove_type_dropdown();
|
|
||||||
have_presets_dropdown = FALSE;
|
|
||||||
} else {
|
|
||||||
presets = snewn(npresets, game_params *);
|
presets = snewn(npresets, game_params *);
|
||||||
for (i = 0; i < npresets; i++) {
|
for (i = 0; i < npresets; i++)
|
||||||
char *name;
|
presets[i] = NULL;
|
||||||
midend_fetch_preset(me, i, &name, &presets[i]);
|
|
||||||
js_add_preset(name);
|
populate_js_preset_menu(0, menu);
|
||||||
}
|
|
||||||
if (thegame.can_configure)
|
if (thegame.can_configure)
|
||||||
js_add_preset(NULL); /* the 'Custom' entry in the dropdown */
|
js_add_preset(0, "Custom", -1);
|
||||||
|
|
||||||
have_presets_dropdown = TRUE;
|
have_presets_dropdown = TRUE;
|
||||||
|
|
|
@ -45,7 +45,7 @@ mergeInto(LibraryManager.library, {
|
||||||
* provides neither presets nor configurability.
|
* provides neither presets nor configurability.
|
||||||
*/
|
*/
|
||||||
js_remove_type_dropdown: function() {
|
js_remove_type_dropdown: function() {
|
||||||
document.getElementById("gametype").style.display = "none";
|
gametypelist.style.display = "none";
|
||||||
},
|
},
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -59,43 +59,61 @@ mergeInto(LibraryManager.library, {
|
||||||
},
|
},
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* void js_add_preset(const char *name);
|
* void js_add_preset(int menuid, const char *name, int value);
|
||||||
*
|
*
|
||||||
* Add a preset to the drop-down types menu. The provided text is
|
* Add a preset to the drop-down types menu, or to a submenu of
|
||||||
* the name of the preset. (The corresponding game_params stays on
|
* it. 'menuid' specifies an index into our array of submenus
|
||||||
* the C side and never comes out this far; we just pass a numeric
|
* where the item might be placed; 'value' specifies the number
|
||||||
* index back to the C code when a selection is made.)
|
* that js_get_selected_preset() will return when this item is
|
||||||
*
|
* clicked.
|
||||||
* The special 'Custom' preset is requested by passing NULL to
|
|
||||||
* this function, rather than the string "Custom", since in that
|
|
||||||
* case we need to do something special - see below.
|
|
||||||
*/
|
*/
|
||||||
js_add_preset: function(ptr) {
|
js_add_preset: function(menuid, ptr, value) {
|
||||||
var name = (ptr == 0 ? "Customise..." : Pointer_stringify(ptr));
|
var name = Pointer_stringify(ptr);
|
||||||
var value = gametypeoptions.length;
|
var item = document.createElement("li");
|
||||||
|
item.setAttribute("data-index", value);
|
||||||
|
var tick = document.createElement("span");
|
||||||
|
tick.appendChild(document.createTextNode("\u2713"));
|
||||||
|
tick.style.color = "transparent";
|
||||||
|
tick.style.paddingRight = "0.5em";
|
||||||
|
item.appendChild(tick);
|
||||||
|
item.appendChild(document.createTextNode(name));
|
||||||
|
gametypesubmenus[menuid].appendChild(item);
|
||||||
|
gametypeitems.push(item);
|
||||||
|
|
||||||
var option = document.createElement("option");
|
item.onclick = function(event) {
|
||||||
option.value = value;
|
if (dlg_dimmer === null) {
|
||||||
option.appendChild(document.createTextNode(name));
|
gametypeselectedindex = value;
|
||||||
gametypeselector.appendChild(option);
|
command(2);
|
||||||
gametypeoptions.push(option);
|
|
||||||
|
|
||||||
if (ptr == 0) {
|
|
||||||
// The option we've just created is the one for inventing
|
|
||||||
// a new custom setup.
|
|
||||||
gametypenewcustom = option;
|
|
||||||
option.value = -1;
|
|
||||||
|
|
||||||
// Now create another element called 'Custom', which will
|
|
||||||
// be auto-selected by us to indicate the custom settings
|
|
||||||
// you've previously selected. However, we don't add it to
|
|
||||||
// the game type selector; it will only appear when the
|
|
||||||
// user actually has custom settings selected.
|
|
||||||
option = document.createElement("option");
|
|
||||||
option.value = -2;
|
|
||||||
option.appendChild(document.createTextNode("Custom"));
|
|
||||||
gametypethiscustom = option;
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
/*
|
||||||
|
* int js_add_preset_submenu(int menuid, const char *name);
|
||||||
|
*
|
||||||
|
* Add a submenu in the presets menu hierarchy. Returns its index,
|
||||||
|
* for passing as the 'menuid' argument in further calls to
|
||||||
|
* js_add_preset or this function.
|
||||||
|
*/
|
||||||
|
js_add_preset_submenu: function(menuid, ptr, value) {
|
||||||
|
var name = Pointer_stringify(ptr);
|
||||||
|
var item = document.createElement("li");
|
||||||
|
// We still create a transparent tick element, even though it
|
||||||
|
// won't ever be selected, to make submenu titles line up
|
||||||
|
// nicely with their neighbours.
|
||||||
|
var tick = document.createElement("span");
|
||||||
|
tick.appendChild(document.createTextNode("\u2713"));
|
||||||
|
tick.style.color = "transparent";
|
||||||
|
tick.style.paddingRight = "0.5em";
|
||||||
|
item.appendChild(tick);
|
||||||
|
item.appendChild(document.createTextNode(name));
|
||||||
|
var submenu = document.createElement("ul");
|
||||||
|
submenu.className = "left";
|
||||||
|
item.appendChild(submenu);
|
||||||
|
gametypesubmenus[menuid].appendChild(item);
|
||||||
|
var toret = gametypesubmenus.length;
|
||||||
|
gametypesubmenus.push(submenu);
|
||||||
|
return toret;
|
||||||
},
|
},
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -105,12 +123,7 @@ mergeInto(LibraryManager.library, {
|
||||||
* dropdown.
|
* dropdown.
|
||||||
*/
|
*/
|
||||||
js_get_selected_preset: function() {
|
js_get_selected_preset: function() {
|
||||||
for (var i in gametypeoptions) {
|
return gametypeselectedindex;
|
||||||
if (gametypeoptions[i].selected) {
|
|
||||||
return gametypeoptions[i].value;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return 0;
|
|
||||||
},
|
},
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -121,33 +134,15 @@ mergeInto(LibraryManager.library, {
|
||||||
* which turn out to exactly match a preset).
|
* which turn out to exactly match a preset).
|
||||||
*/
|
*/
|
||||||
js_select_preset: function(n) {
|
js_select_preset: function(n) {
|
||||||
if (gametypethiscustom !== null) {
|
gametypeselectedindex = n;
|
||||||
// Fiddle with the Custom/Customise options. If we're
|
for (var i in gametypeitems) {
|
||||||
// about to select the Custom option, then it should be in
|
var item = gametypeitems[i];
|
||||||
// the menu, and the other one should read "Re-customise";
|
var tick = item.firstChild;
|
||||||
// if we're about to select another one, then the static
|
if (item.getAttribute("data-index") == n) {
|
||||||
// Custom option should disappear and the other one should
|
tick.style.color = "inherit";
|
||||||
// read "Customise".
|
|
||||||
|
|
||||||
if (gametypethiscustom.parentNode == gametypeselector)
|
|
||||||
gametypeselector.removeChild(gametypethiscustom);
|
|
||||||
if (gametypenewcustom.parentNode == gametypeselector)
|
|
||||||
gametypeselector.removeChild(gametypenewcustom);
|
|
||||||
|
|
||||||
if (n < 0) {
|
|
||||||
gametypeselector.appendChild(gametypethiscustom);
|
|
||||||
gametypenewcustom.lastChild.data = "Re-customise...";
|
|
||||||
} else {
|
} else {
|
||||||
gametypenewcustom.lastChild.data = "Customise...";
|
tick.style.color = "transparent";
|
||||||
}
|
}
|
||||||
gametypeselector.appendChild(gametypenewcustom);
|
|
||||||
gametypenewcustom.selected = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (n < 0) {
|
|
||||||
gametypethiscustom.selected = true;
|
|
||||||
} else {
|
|
||||||
gametypeoptions[n].selected = true;
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -192,8 +187,8 @@ mergeInto(LibraryManager.library, {
|
||||||
* after a move.
|
* after a move.
|
||||||
*/
|
*/
|
||||||
js_enable_undo_redo: function(undo, redo) {
|
js_enable_undo_redo: function(undo, redo) {
|
||||||
undo_button.disabled = (undo == 0);
|
disable_menu_item(undo_button, (undo == 0));
|
||||||
redo_button.disabled = (redo == 0);
|
disable_menu_item(redo_button, (redo == 0));
|
||||||
},
|
},
|
||||||
|
|
||||||
/*
|
/*
|
|
@ -79,22 +79,12 @@ var dlg_return_funcs = null;
|
||||||
// pass back the final value in each dialog control.
|
// pass back the final value in each dialog control.
|
||||||
var dlg_return_sval, dlg_return_ival;
|
var dlg_return_sval, dlg_return_ival;
|
||||||
|
|
||||||
// The <select> object implementing the game-type drop-down, and a
|
// The <ul> object implementing the game-type drop-down, and a list of
|
||||||
// list of the <option> objects inside it. Used by js_add_preset(),
|
// the <li> objects inside it. Used by js_add_preset(),
|
||||||
// js_get_selected_preset() and js_select_preset().
|
// js_get_selected_preset() and js_select_preset().
|
||||||
//
|
var gametypelist = null, gametypeitems = [];
|
||||||
// gametypethiscustom is an option which indicates some custom game
|
var gametypeselectedindex = null;
|
||||||
// params you've already set up, and which will be auto-selected on
|
var gametypesubmenus = [];
|
||||||
// return from the customisation dialog; gametypenewcustom is an
|
|
||||||
// option which you select to indicate that you want to bring up the
|
|
||||||
// customisation dialog and select a new configuration. Ideally I'd do
|
|
||||||
// this with just one option serving both purposes, but instead we
|
|
||||||
// have to do this a bit oddly because browsers don't send 'onchange'
|
|
||||||
// events for a select element if you reselect the same one - so if
|
|
||||||
// you've picked a custom setup and now want to change it, you need a
|
|
||||||
// way to specify that.
|
|
||||||
var gametypeselector = null, gametypeoptions = [];
|
|
||||||
var gametypethiscustom = null, gametypehiddencustom = null;
|
|
||||||
|
|
||||||
// The two anchors used to give permalinks to the current puzzle. Used
|
// The two anchors used to give permalinks to the current puzzle. Used
|
||||||
// by js_update_permalinks().
|
// by js_update_permalinks().
|
||||||
|
@ -131,6 +121,14 @@ function relative_mouse_coords(event, element) {
|
||||||
y: event.pageY - ecoords.y};
|
y: event.pageY - ecoords.y};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Enable and disable items in the CSS menus.
|
||||||
|
function disable_menu_item(item, disabledFlag) {
|
||||||
|
if (disabledFlag)
|
||||||
|
item.className = "disabled";
|
||||||
|
else
|
||||||
|
item.className = "";
|
||||||
|
}
|
||||||
|
|
||||||
// Init function called from body.onload.
|
// Init function called from body.onload.
|
||||||
function initPuzzle() {
|
function initPuzzle() {
|
||||||
// Construct the off-screen canvas used for double buffering.
|
// Construct the off-screen canvas used for double buffering.
|
||||||
|
@ -232,11 +230,8 @@ function initPuzzle() {
|
||||||
command(9);
|
command(9);
|
||||||
};
|
};
|
||||||
|
|
||||||
gametypeselector = document.getElementById("gametype");
|
gametypelist = document.getElementById("gametype");
|
||||||
gametypeselector.onchange = function(event) {
|
gametypesubmenus.push(gametypelist);
|
||||||
if (dlg_dimmer === null)
|
|
||||||
command(2);
|
|
||||||
};
|
|
||||||
|
|
||||||
// In IE, the canvas doesn't automatically gain focus on a mouse
|
// In IE, the canvas doesn't automatically gain focus on a mouse
|
||||||
// click, so make sure it does
|
// click, so make sure it does
|
|
@ -5,7 +5,7 @@
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include "rbassert.h"
|
#include <assert.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
|
|
||||||
|
@ -1089,7 +1089,7 @@ static void game_print(drawing *dr, const game_state *state, int tilesize)
|
||||||
const struct game thegame = {
|
const struct game thegame = {
|
||||||
"Fifteen", "games.fifteen", "fifteen",
|
"Fifteen", "games.fifteen", "fifteen",
|
||||||
default_params,
|
default_params,
|
||||||
game_fetch_preset,
|
game_fetch_preset, NULL,
|
||||||
decode_params,
|
decode_params,
|
||||||
encode_params,
|
encode_params,
|
||||||
free_params,
|
free_params,
|
41
apps/plugins/puzzles/src/fifteen.html
Normal file
41
apps/plugins/puzzles/src/fifteen.html
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
|
||||||
|
"http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="content-type" content="text/html; charset=US-ASCII">
|
||||||
|
<title>Fifteen</title>
|
||||||
|
<link rel="previous" href="cube.html">
|
||||||
|
<link rel="ToC" href="index.html">
|
||||||
|
<link rel="up" href="index.html">
|
||||||
|
<link rel="index" href="docindex.html">
|
||||||
|
<link rel="next" href="sixteen.html">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<p><a href="cube.html">Previous</a> | <a href="index.html">Contents</a> | <a href="docindex.html">Index</a> | <a href="sixteen.html">Next</a></p>
|
||||||
|
<h1><a name="C5"></a>Chapter 5: <a name="i0"></a>Fifteen</h1>
|
||||||
|
<p>
|
||||||
|
The old ones are the best: this is the good old ‘<a name="i1"></a>15-puzzle’ with sliding tiles. You have a 4×4 square grid; 15 squares contain numbered tiles, and the sixteenth is empty. Your move is to choose a tile next to the empty space, and slide it into the space. The aim is to end up with the tiles in numerical order, with the space in the bottom right (so that the top row reads 1,2,3,4 and the bottom row reads 13,14,15,<em>space</em>).
|
||||||
|
</p>
|
||||||
|
<h2><a name="S5.1"></a>5.1 <a name="i2"></a>Fifteen controls</h2>
|
||||||
|
<p>
|
||||||
|
This game can be controlled with the mouse or the keyboard.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
A left-click with the mouse in the row or column containing the empty space will move as many tiles as necessary to move the space to the mouse pointer.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
The arrow keys will move a tile adjacent to the space in the direction indicated (moving the space in the <em>opposite</em> direction).
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Pressing ‘h’ will make a suggested move. Pressing ‘h’ enough times will solve the game, but it may scramble your progress while doing so.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
(All the actions described in <a href="common.html#S2.1">section 2.1</a> are also available.)
|
||||||
|
</p>
|
||||||
|
<h2><a name="S5.2"></a>5.2 <a name="i3"></a>Fifteen parameters</h2>
|
||||||
|
<p>
|
||||||
|
The only options available from the ‘Custom...’ option on the ‘Type’ menu are <em>Width</em> and <em>Height</em>, which are self-explanatory. (Once you've changed these, it's not a ‘15-puzzle’ any more, of course!)
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<hr><address></address></body>
|
||||||
|
</html>
|
|
@ -56,7 +56,7 @@
|
||||||
* + but the hints are independent, not linear, so... what?
|
* + but the hints are independent, not linear, so... what?
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "rbassert.h"
|
#include <assert.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
@ -1551,12 +1551,12 @@ static game_state *execute_move(const game_state *state, const char *move)
|
||||||
int value;
|
int value;
|
||||||
char *endptr, *delim = strchr(move, '_');
|
char *endptr, *delim = strchr(move, '_');
|
||||||
if (!delim) goto err;
|
if (!delim) goto err;
|
||||||
value = strtol(delim+1, &endptr, 10);
|
value = strtol(delim+1, &endptr, 0);
|
||||||
if (*endptr || endptr == delim+1) goto err;
|
if (*endptr || endptr == delim+1) goto err;
|
||||||
if (value < 0 || value > 9) goto err;
|
if (value < 0 || value > 9) goto err;
|
||||||
new_state = dup_game(state);
|
new_state = dup_game(state);
|
||||||
while (*move) {
|
while (*move) {
|
||||||
const int i = strtol(move, &endptr, 10);
|
const int i = strtol(move, &endptr, 0);
|
||||||
if (endptr == move) goto err;
|
if (endptr == move) goto err;
|
||||||
if (i < 0 || i >= sz) goto err;
|
if (i < 0 || i >= sz) goto err;
|
||||||
new_state->board[i] = value;
|
new_state->board[i] = value;
|
||||||
|
@ -2111,7 +2111,7 @@ static void game_print(drawing *dr, const game_state *state, int tilesize)
|
||||||
const struct game thegame = {
|
const struct game thegame = {
|
||||||
"Filling", "games.filling", "filling",
|
"Filling", "games.filling", "filling",
|
||||||
default_params,
|
default_params,
|
||||||
game_fetch_preset,
|
game_fetch_preset, NULL,
|
||||||
decode_params,
|
decode_params,
|
||||||
encode_params,
|
encode_params,
|
||||||
free_params,
|
free_params,
|
50
apps/plugins/puzzles/src/filling.html
Normal file
50
apps/plugins/puzzles/src/filling.html
Normal file
|
@ -0,0 +1,50 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
|
||||||
|
"http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="content-type" content="text/html; charset=US-ASCII">
|
||||||
|
<title>Filling</title>
|
||||||
|
<link rel="previous" href="galaxies.html">
|
||||||
|
<link rel="ToC" href="index.html">
|
||||||
|
<link rel="up" href="index.html">
|
||||||
|
<link rel="index" href="docindex.html">
|
||||||
|
<link rel="next" href="keen.html">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<p><a href="galaxies.html">Previous</a> | <a href="index.html">Contents</a> | <a href="docindex.html">Index</a> | <a href="keen.html">Next</a></p>
|
||||||
|
<h1><a name="C29"></a>Chapter 29: <a name="i0"></a>Filling</h1>
|
||||||
|
<p>
|
||||||
|
You have a grid of squares, some of which contain digits, and the rest of which are empty. Your job is to fill in digits in the empty squares, in such a way that each connected region of squares all containing the same digit has an area equal to that digit.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
(‘Connected region’, for the purposes of this game, does not count diagonally separated squares as adjacent.)
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
For example, it follows that no square can contain a zero, and that two adjacent squares can not both contain a one. No region has an area greater than 9 (because then its area would not be a single digit).
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Credit for this puzzle goes to <a name="i1"></a>Nikoli <a href="#p0">[14]</a>.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Filling was contributed to this collection by Jonas Kölker.
|
||||||
|
</p>
|
||||||
|
<p><a name="p0"></a>
|
||||||
|
[14] <a href="http://www.nikoli.co.jp/en/puzzles/fillomino.html"><code>http://www.nikoli.co.jp/en/puzzles/fillomino.html</code></a>
|
||||||
|
</p>
|
||||||
|
<h2><a name="S29.1"></a>29.1 <a name="i2"></a>Filling controls</h2>
|
||||||
|
<p>
|
||||||
|
To play Filling, simply click the mouse in any empty square and then type a digit on the keyboard to fill that square. By dragging the mouse, you can select multiple squares to fill with a single keypress. If you make a mistake, click the mouse in the incorrect square and press 0, Space, Backspace or Enter to clear it again (or use the Undo feature).
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
You can also move around the grid with the cursor keys; typing a digit will fill the square containing the cursor with that number; typing 0 will clear it. You can also select multiple squares for numbering or clearing with the return and arrow keys, before typing a digit to fill or clear the highlighted squares (as above). The space bar adds and removes single squares to and from the selection. Backspace and escape remove all squares from the selection.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
(All the actions described in <a href="common.html#S2.1">section 2.1</a> are also available.)
|
||||||
|
</p>
|
||||||
|
<h2><a name="S29.2"></a>29.2 <a name="i3"></a>Filling parameters</h2>
|
||||||
|
<p>
|
||||||
|
Filling allows you to configure the number of rows and columns of the grid, through the ‘Type’ menu.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<hr><address></address></body>
|
||||||
|
</html>
|
|
@ -6,7 +6,7 @@
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include "rbassert.h"
|
#include <assert.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
|
|
||||||
|
@ -1313,7 +1313,7 @@ static void game_print(drawing *dr, const game_state *state, int tilesize)
|
||||||
const struct game thegame = {
|
const struct game thegame = {
|
||||||
"Flip", "games.flip", "flip",
|
"Flip", "games.flip", "flip",
|
||||||
default_params,
|
default_params,
|
||||||
game_fetch_preset,
|
game_fetch_preset, NULL,
|
||||||
decode_params,
|
decode_params,
|
||||||
encode_params,
|
encode_params,
|
||||||
free_params,
|
free_params,
|
54
apps/plugins/puzzles/src/flip.html
Normal file
54
apps/plugins/puzzles/src/flip.html
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
|
||||||
|
"http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="content-type" content="text/html; charset=US-ASCII">
|
||||||
|
<title>Flip</title>
|
||||||
|
<link rel="previous" href="samegame.html">
|
||||||
|
<link rel="ToC" href="index.html">
|
||||||
|
<link rel="up" href="index.html">
|
||||||
|
<link rel="index" href="docindex.html">
|
||||||
|
<link rel="next" href="guess.html">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<p><a href="samegame.html">Previous</a> | <a href="index.html">Contents</a> | <a href="docindex.html">Index</a> | <a href="guess.html">Next</a></p>
|
||||||
|
<h1><a name="C14"></a>Chapter 14: <a name="i0"></a>Flip</h1>
|
||||||
|
<p>
|
||||||
|
You have a grid of squares, some light and some dark. Your aim is to light all the squares up at the same time. You can choose any square and flip its state from light to dark or dark to light, but when you do so, other squares around it change state as well.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Each square contains a small diagram showing which other squares change when you flip it.
|
||||||
|
</p>
|
||||||
|
<h2><a name="S14.1"></a>14.1 <a name="i1"></a>Flip controls</h2>
|
||||||
|
<p>
|
||||||
|
This game can be played with either the keyboard or the mouse.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Left-click in a square to flip it and its associated squares, or use the cursor keys to choose a square and the space bar or Enter key to flip.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
If you use the ‘Solve’ function on this game, it will mark some of the squares in red. If you click once in every square with a red mark, the game should be solved. (If you click in a square <em>without</em> a red mark, a red mark will appear in it to indicate that you will need to reverse that operation to reach the solution.)
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
(All the actions described in <a href="common.html#S2.1">section 2.1</a> are also available.)
|
||||||
|
</p>
|
||||||
|
<h2><a name="S14.2"></a>14.2 <a name="i2"></a>Flip parameters</h2>
|
||||||
|
<p>
|
||||||
|
These parameters are available from the ‘Custom...’ option on the ‘Type’ menu.
|
||||||
|
</p>
|
||||||
|
<dl><dt>
|
||||||
|
<em>Width</em>, <em>Height</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Size of grid in squares.
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<em>Shape type</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
This control determines the shape of the region which is flipped by clicking in any given square. The default setting, ‘Crosses’, causes every square to flip itself and its four immediate neighbours (or three or two if it's at an edge or corner). The other setting, ‘Random’, causes a random shape to be chosen for every square, so the game is different every time.
|
||||||
|
</dd>
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
<hr><address></address></body>
|
||||||
|
</html>
|
|
@ -29,7 +29,7 @@
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include "rbassert.h"
|
#include <assert.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
|
|
||||||
|
@ -1336,7 +1336,7 @@ static void game_print(drawing *dr, const game_state *state, int tilesize)
|
||||||
const struct game thegame = {
|
const struct game thegame = {
|
||||||
"Flood", "games.flood", "flood",
|
"Flood", "games.flood", "flood",
|
||||||
default_params,
|
default_params,
|
||||||
game_fetch_preset,
|
game_fetch_preset, NULL,
|
||||||
decode_params,
|
decode_params,
|
||||||
encode_params,
|
encode_params,
|
||||||
free_params,
|
free_params,
|
64
apps/plugins/puzzles/src/flood.html
Normal file
64
apps/plugins/puzzles/src/flood.html
Normal file
|
@ -0,0 +1,64 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
|
||||||
|
"http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="content-type" content="text/html; charset=US-ASCII">
|
||||||
|
<title>Flood</title>
|
||||||
|
<link rel="previous" href="unruly.html">
|
||||||
|
<link rel="ToC" href="index.html">
|
||||||
|
<link rel="up" href="index.html">
|
||||||
|
<link rel="index" href="docindex.html">
|
||||||
|
<link rel="next" href="tracks.html">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<p><a href="unruly.html">Previous</a> | <a href="index.html">Contents</a> | <a href="docindex.html">Index</a> | <a href="tracks.html">Next</a></p>
|
||||||
|
<h1><a name="C39"></a>Chapter 39: <a name="i0"></a>Flood</h1>
|
||||||
|
<p>
|
||||||
|
You are given a grid of squares, coloured at random in multiple colours. In each move, you can flood-fill the top left square in a colour of your choice (i.e. every square reachable from the starting square by an orthogonally connected path of squares all the same colour will be filled in the new colour). As you do this, more and more of the grid becomes connected to the starting square.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Your aim is to make the whole grid the same colour, in as few moves as possible. The game will set a limit on the number of moves, based on running its own internal solver. You win if you can make the whole grid the same colour in that many moves or fewer.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
I saw this game (with a fixed grid size, fixed number of colours, and fixed move limit) at http://floodit.appspot.com (no longer accessible).
|
||||||
|
</p>
|
||||||
|
<h2><a name="S39.1"></a>39.1 <a name="i1"></a>Flood controls</h2>
|
||||||
|
<p>
|
||||||
|
To play Flood, click the mouse in a square. The top left corner and everything connected to it will be flood-filled with the colour of the square you clicked. Clicking a square the same colour as the top left corner has no effect, and therefore does not count as a move.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
You can also use the cursor keys to move a cursor (outline black square) around the grid. Pressing the return key will fill the top left corner in the colour of the square under the cursor.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
(All the actions described in <a href="common.html#S2.1">section 2.1</a> are also available.)
|
||||||
|
</p>
|
||||||
|
<h2><a name="S39.2"></a>39.2 <a name="i2"></a>Flood parameters</h2>
|
||||||
|
<p>
|
||||||
|
These parameters are available from the ‘Custom...’ option on the ‘Type’ menu.
|
||||||
|
</p>
|
||||||
|
<dl><dt>
|
||||||
|
<em>Width</em>, <em>Height</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Size of the grid, in squares.
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<em>Colours</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Number of colours used to fill the grid. Must be at least 3 (with two colours there would only be one legal move at any stage, hence no choice to make at all), and at most 10.
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<em>Extra moves permitted</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Controls the difficulty of the puzzle, by increasing the move limit. In each new grid, Flood will run an internal solver to generate its own solution, and then the value in this field will be added to the length of Flood's solution to generate the game's move limit. So a value of 0 requires you to be just as efficient as Flood's automated solver, and a larger value makes it easier.
|
||||||
|
<p>
|
||||||
|
(Note that Flood's internal solver will not necessarily find the shortest possible solution, though I believe it's pretty close. For a real challenge, set this value to 0 and then try to solve a grid in <em>strictly fewer</em> moves than the limit you're given!)
|
||||||
|
</p>
|
||||||
|
|
||||||
|
</dd>
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
<hr><address></address></body>
|
||||||
|
</html>
|
|
@ -40,7 +40,7 @@
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include "rbassert.h"
|
#include <assert.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
|
|
||||||
|
@ -3633,7 +3633,7 @@ static void game_print(drawing *dr, const game_state *state, int sz)
|
||||||
const struct game thegame = {
|
const struct game thegame = {
|
||||||
"Galaxies", "games.galaxies", "galaxies",
|
"Galaxies", "games.galaxies", "galaxies",
|
||||||
default_params,
|
default_params,
|
||||||
game_fetch_preset,
|
game_fetch_preset, NULL,
|
||||||
decode_params,
|
decode_params,
|
||||||
encode_params,
|
encode_params,
|
||||||
free_params,
|
free_params,
|
60
apps/plugins/puzzles/src/galaxies.html
Normal file
60
apps/plugins/puzzles/src/galaxies.html
Normal file
|
@ -0,0 +1,60 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
|
||||||
|
"http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="content-type" content="text/html; charset=US-ASCII">
|
||||||
|
<title>Galaxies</title>
|
||||||
|
<link rel="previous" href="unequal.html">
|
||||||
|
<link rel="ToC" href="index.html">
|
||||||
|
<link rel="up" href="index.html">
|
||||||
|
<link rel="index" href="docindex.html">
|
||||||
|
<link rel="next" href="filling.html">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<p><a href="unequal.html">Previous</a> | <a href="index.html">Contents</a> | <a href="docindex.html">Index</a> | <a href="filling.html">Next</a></p>
|
||||||
|
<h1><a name="C28"></a>Chapter 28: <a name="i0"></a>Galaxies</h1>
|
||||||
|
<p>
|
||||||
|
You have a rectangular grid containing a number of dots. Your aim is to draw edges along the grid lines which divide the rectangle into regions in such a way that every region is 180° rotationally symmetric, and contains exactly one dot which is located at its centre of symmetry.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
This puzzle was invented by <a name="i1"></a>Nikoli <a href="#p0">[13]</a>, under the name ‘Tentai Show’; its name is commonly translated into English as ‘Spiral Galaxies’.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Galaxies was contributed to this collection by James Harvey.
|
||||||
|
</p>
|
||||||
|
<p><a name="p0"></a>
|
||||||
|
[13] <a href="http://www.nikoli.co.jp/en/puzzles/astronomical_show.html"><code>http://www.nikoli.co.jp/en/puzzles/astronomical_show.html</code></a>
|
||||||
|
</p>
|
||||||
|
<h2><a name="S28.1"></a>28.1 <a name="i2"></a>Galaxies controls</h2>
|
||||||
|
<p>
|
||||||
|
Left-click on any grid line to draw an edge if there isn't one already, or to remove one if there is. When you create a valid region (one which is closed, contains exactly one dot, is 180° symmetric about that dot, and contains no extraneous edges inside it) it will be highlighted automatically; so your aim is to have the whole grid highlighted in that way.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
During solving, you might know that a particular grid square belongs to a specific dot, but not be sure of where the edges go and which other squares are connected to the dot. In order to mark this so you don't forget, you can right-click on the dot and drag, which will create an arrow marker pointing at the dot. Drop that in a square of your choice and it will remind you which dot it's associated with. You can also right-click on existing arrows to pick them up and move them, or destroy them by dropping them off the edge of the grid. (Also, if you're not sure which dot an arrow is pointing at, you can pick it up and move it around to make it clearer. It will swivel constantly as you drag it, to stay pointed at its parent dot.)
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
You can also use the cursor keys to move around the grid squares and lines. Pressing the return key when over a grid line will draw or clear its edge, as above. Pressing the return key when over a dot will pick up an arrow, to be dropped the next time the return key is pressed; this can also be used to move existing arrows around, removing them by dropping them on a dot or another arrow.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
(All the actions described in <a href="common.html#S2.1">section 2.1</a> are also available.)
|
||||||
|
</p>
|
||||||
|
<h2><a name="S28.2"></a>28.2 <a name="i3"></a>Galaxies parameters</h2>
|
||||||
|
<p>
|
||||||
|
These parameters are available from the ‘Custom...’ option on the ‘Type’ menu.
|
||||||
|
</p>
|
||||||
|
<dl><dt>
|
||||||
|
<em>Width</em>, <em>Height</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Size of grid in squares.
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<em>Difficulty</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Controls the difficulty of the generated puzzle. More difficult puzzles require more complex deductions, and the ‘Unreasonable’ difficulty level may require backtracking.
|
||||||
|
</dd>
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
<hr><address></address></body>
|
||||||
|
</html>
|
39
apps/plugins/puzzles/src/gamedesc.txt
Normal file
39
apps/plugins/puzzles/src/gamedesc.txt
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
blackbox:blackbox.exe:Black Box:Ball-finding puzzle:Find the hidden balls in the box by bouncing laser beams off them.
|
||||||
|
bridges:bridges.exe:Bridges:Bridge-placing puzzle:Connect all the islands with a network of bridges.
|
||||||
|
cube:cube.exe:Cube:Rolling cube puzzle:Pick up all the blue squares by rolling the cube over them.
|
||||||
|
dominosa:dominosa.exe:Dominosa:Domino tiling puzzle:Tile the rectangle with a full set of dominoes.
|
||||||
|
fifteen:fifteen.exe:Fifteen:Sliding block puzzle:Slide the tiles around to arrange them into order.
|
||||||
|
filling:filling.exe:Filling:Polyomino puzzle:Mark every square with the area of its containing region.
|
||||||
|
flip:flip.exe:Flip:Tile inversion puzzle:Flip groups of squares to light them all up at once.
|
||||||
|
flood:flood.exe:Flood:Flood-filling puzzle:Turn the grid the same colour in as few flood fills as possible.
|
||||||
|
galaxies:galaxies.exe:Galaxies:Symmetric polyomino puzzle:Divide the grid into rotationally symmetric regions each centred on a dot.
|
||||||
|
guess:guess.exe:Guess:Combination-guessing puzzle:Guess the hidden combination of colours.
|
||||||
|
inertia:inertia.exe:Inertia:Gem-collecting puzzle:Collect all the gems without running into any of the mines.
|
||||||
|
keen:keen.exe:Keen:Arithmetic Latin square puzzle:Complete the latin square in accordance with the arithmetic clues.
|
||||||
|
lightup:lightup.exe:Light Up:Light-bulb placing puzzle:Place bulbs to light up all the squares.
|
||||||
|
loopy:loopy.exe:Loopy:Loop-drawing puzzle:Draw a single closed loop, given clues about number of adjacent edges.
|
||||||
|
magnets:magnets.exe:Magnets:Magnet-placing puzzle:Place magnets to satisfy the clues and avoid like poles touching.
|
||||||
|
map:map.exe:Map:Map-colouring puzzle:Colour the map so that adjacent regions are never the same colour.
|
||||||
|
mines:mines.exe:Mines:Mine-finding puzzle:Find all the mines without treading on any of them.
|
||||||
|
net:netgame.exe:Net:Network jigsaw puzzle:Rotate each tile to reassemble the network.
|
||||||
|
netslide:netslide.exe:Netslide:Toroidal sliding network puzzle:Slide a row at a time to reassemble the network.
|
||||||
|
palisade:palisade.exe:Palisade:Grid-division puzzle:Divide the grid into equal-sized areas in accordance with the clues.
|
||||||
|
pattern:pattern.exe:Pattern:Pattern puzzle:Fill in the pattern in the grid, given only the lengths of runs of black squares.
|
||||||
|
pearl:pearl.exe:Pearl:Loop-drawing puzzle:Draw a single closed loop, given clues about corner and straight squares.
|
||||||
|
pegs:pegs.exe:Pegs:Peg solitaire puzzle:Jump pegs over each other to remove all but one.
|
||||||
|
range:range.exe:Range:Visible-distance puzzle:Place black squares to limit the visible distance from each numbered cell.
|
||||||
|
rect:rect.exe:Rectangles:Rectangles puzzle:Divide the grid into rectangles with areas equal to the numbers.
|
||||||
|
samegame:samegame.exe:Same Game:Block-clearing puzzle:Clear the grid by removing touching groups of the same colour squares.
|
||||||
|
signpost:signpost.exe:Signpost:Square-connecting puzzle:Connect the squares into a path following the arrows.
|
||||||
|
singles:singles.exe:Singles:Number-removing puzzle:Black out the right set of duplicate numbers.
|
||||||
|
sixteen:sixteen.exe:Sixteen:Toroidal sliding block puzzle:Slide a row at a time to arrange the tiles into order.
|
||||||
|
slant:slant.exe:Slant:Maze-drawing puzzle:Draw a maze of slanting lines that matches the clues.
|
||||||
|
solo:solo.exe:Solo:Number placement puzzle:Fill in the grid so that each row, column and square block contains one of every digit.
|
||||||
|
tents:tents.exe:Tents:Tent-placing puzzle:Place a tent next to each tree.
|
||||||
|
towers:towers.exe:Towers:Tower-placing Latin square puzzle:Complete the latin square of towers in accordance with the clues.
|
||||||
|
tracks:tracks.exe:Tracks:Path-finding railway track puzzle:Fill in the railway track according to the clues.
|
||||||
|
twiddle:twiddle.exe:Twiddle:Rotational sliding block puzzle:Rotate the tiles around themselves to arrange them into order.
|
||||||
|
undead:undead.exe:Undead:Monster-placing puzzle:Place ghosts, vampires and zombies so that the right numbers of them can be seen in mirrors.
|
||||||
|
unequal:unequal.exe:Unequal:Latin square puzzle:Complete the latin square in accordance with the > signs.
|
||||||
|
unruly:unruly.exe:Unruly:Black and white grid puzzle:Fill in the black and white grid to avoid runs of three.
|
||||||
|
untangle:untangle.exe:Untangle:Planar graph layout puzzle:Reposition the points so that the lines do not cross.
|
|
@ -9,7 +9,7 @@
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include "rbassert.h"
|
#include <assert.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
#include <float.h>
|
#include <float.h>
|
||||||
|
@ -2571,6 +2571,175 @@ static grid *grid_new_greatdodecagonal(int width, int height, const char *desc)
|
||||||
return g;
|
return g;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void grid_size_greatgreatdodecagonal(int width, int height,
|
||||||
|
int *tilesize, int *xextent, int *yextent)
|
||||||
|
{
|
||||||
|
int a = DODEC_A;
|
||||||
|
int b = DODEC_B;
|
||||||
|
|
||||||
|
*tilesize = DODEC_TILESIZE;
|
||||||
|
*xextent = (4*a + 4*b) * (width-1) + 2*(2*a + b) + 2*a + 2*b;
|
||||||
|
*yextent = (6*a + 2*b) * (height-1) + 2*(2*a + b);
|
||||||
|
}
|
||||||
|
|
||||||
|
static grid *grid_new_greatgreatdodecagonal(int width, int height, const char *desc)
|
||||||
|
{
|
||||||
|
int x, y;
|
||||||
|
/* Vector for side of triangle - ratio is close to sqrt(3) */
|
||||||
|
int a = DODEC_A;
|
||||||
|
int b = DODEC_B;
|
||||||
|
|
||||||
|
/* Upper bounds - don't have to be exact */
|
||||||
|
int max_faces = 50 * width * height;
|
||||||
|
int max_dots = 300 * width * height;
|
||||||
|
|
||||||
|
tree234 *points;
|
||||||
|
|
||||||
|
grid *g = grid_empty();
|
||||||
|
g->tilesize = DODEC_TILESIZE;
|
||||||
|
g->faces = snewn(max_faces, grid_face);
|
||||||
|
g->dots = snewn(max_dots, grid_dot);
|
||||||
|
|
||||||
|
points = newtree234(grid_point_cmp_fn);
|
||||||
|
|
||||||
|
for (y = 0; y < height; y++) {
|
||||||
|
for (x = 0; x < width; x++) {
|
||||||
|
grid_dot *d;
|
||||||
|
/* centre of dodecagon */
|
||||||
|
int px = (4*a + 4*b) * x;
|
||||||
|
int py = (6*a + 2*b) * y;
|
||||||
|
if (y % 2)
|
||||||
|
px += 2*a + 2*b;
|
||||||
|
|
||||||
|
/* dodecagon */
|
||||||
|
grid_face_add_new(g, 12);
|
||||||
|
d = grid_get_dot(g, points, px + ( a ), py - (2*a + b)); grid_face_set_dot(g, d, 0);
|
||||||
|
d = grid_get_dot(g, points, px + ( a + b), py - ( a + b)); grid_face_set_dot(g, d, 1);
|
||||||
|
d = grid_get_dot(g, points, px + (2*a + b), py - ( a )); grid_face_set_dot(g, d, 2);
|
||||||
|
d = grid_get_dot(g, points, px + (2*a + b), py + ( a )); grid_face_set_dot(g, d, 3);
|
||||||
|
d = grid_get_dot(g, points, px + ( a + b), py + ( a + b)); grid_face_set_dot(g, d, 4);
|
||||||
|
d = grid_get_dot(g, points, px + ( a ), py + (2*a + b)); grid_face_set_dot(g, d, 5);
|
||||||
|
d = grid_get_dot(g, points, px - ( a ), py + (2*a + b)); grid_face_set_dot(g, d, 6);
|
||||||
|
d = grid_get_dot(g, points, px - ( a + b), py + ( a + b)); grid_face_set_dot(g, d, 7);
|
||||||
|
d = grid_get_dot(g, points, px - (2*a + b), py + ( a )); grid_face_set_dot(g, d, 8);
|
||||||
|
d = grid_get_dot(g, points, px - (2*a + b), py - ( a )); grid_face_set_dot(g, d, 9);
|
||||||
|
d = grid_get_dot(g, points, px - ( a + b), py - ( a + b)); grid_face_set_dot(g, d, 10);
|
||||||
|
d = grid_get_dot(g, points, px - ( a ), py - (2*a + b)); grid_face_set_dot(g, d, 11);
|
||||||
|
|
||||||
|
/* hexagon on top right of dodecagon */
|
||||||
|
if (y && (x < width - 1 || !(y % 2))) {
|
||||||
|
grid_face_add_new(g, 6);
|
||||||
|
d = grid_get_dot(g, points, px + (a + 2*b), py - (4*a + b)); grid_face_set_dot(g, d, 0);
|
||||||
|
d = grid_get_dot(g, points, px + (a + 2*b), py - (2*a + b)); grid_face_set_dot(g, d, 1);
|
||||||
|
d = grid_get_dot(g, points, px + (a + b), py - ( a + b)); grid_face_set_dot(g, d, 2);
|
||||||
|
d = grid_get_dot(g, points, px + (a ), py - (2*a + b)); grid_face_set_dot(g, d, 3);
|
||||||
|
d = grid_get_dot(g, points, px + (a ), py - (4*a + b)); grid_face_set_dot(g, d, 4);
|
||||||
|
d = grid_get_dot(g, points, px + (a + b), py - (5*a + b)); grid_face_set_dot(g, d, 5);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hexagon on right of dodecagon*/
|
||||||
|
if (x < width - 1) {
|
||||||
|
grid_face_add_new(g, 6);
|
||||||
|
d = grid_get_dot(g, points, px + (2*a + 3*b), py - a); grid_face_set_dot(g, d, 0);
|
||||||
|
d = grid_get_dot(g, points, px + (2*a + 3*b), py + a); grid_face_set_dot(g, d, 1);
|
||||||
|
d = grid_get_dot(g, points, px + (2*a + 2*b), py + 2*a); grid_face_set_dot(g, d, 2);
|
||||||
|
d = grid_get_dot(g, points, px + (2*a + b), py + a); grid_face_set_dot(g, d, 3);
|
||||||
|
d = grid_get_dot(g, points, px + (2*a + b), py - a); grid_face_set_dot(g, d, 4);
|
||||||
|
d = grid_get_dot(g, points, px + (2*a + 2*b), py - 2*a); grid_face_set_dot(g, d, 5);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hexagon on bottom right of dodecagon */
|
||||||
|
if ((y < height - 1) && (x < width - 1 || !(y % 2))) {
|
||||||
|
grid_face_add_new(g, 6);
|
||||||
|
d = grid_get_dot(g, points, px + (a + 2*b), py + (2*a + b)); grid_face_set_dot(g, d, 0);
|
||||||
|
d = grid_get_dot(g, points, px + (a + 2*b), py + (4*a + b)); grid_face_set_dot(g, d, 1);
|
||||||
|
d = grid_get_dot(g, points, px + (a + b), py + (5*a + b)); grid_face_set_dot(g, d, 2);
|
||||||
|
d = grid_get_dot(g, points, px + (a ), py + (4*a + b)); grid_face_set_dot(g, d, 3);
|
||||||
|
d = grid_get_dot(g, points, px + (a ), py + (2*a + b)); grid_face_set_dot(g, d, 4);
|
||||||
|
d = grid_get_dot(g, points, px + (a + b), py + ( a + b)); grid_face_set_dot(g, d, 5);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* square on top right of dodecagon */
|
||||||
|
if (y && (x < width - 1 )) {
|
||||||
|
grid_face_add_new(g, 4);
|
||||||
|
d = grid_get_dot(g, points, px + ( a + 2*b), py - (2*a + b)); grid_face_set_dot(g, d, 0);
|
||||||
|
d = grid_get_dot(g, points, px + (2*a + 2*b), py - (2*a )); grid_face_set_dot(g, d, 1);
|
||||||
|
d = grid_get_dot(g, points, px + (2*a + b), py - ( a )); grid_face_set_dot(g, d, 2);
|
||||||
|
d = grid_get_dot(g, points, px + ( a + b), py - ( a + b)); grid_face_set_dot(g, d, 3);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* square on bottom right of dodecagon */
|
||||||
|
if ((y < height - 1) && (x < width - 1 )) {
|
||||||
|
grid_face_add_new(g, 4);
|
||||||
|
d = grid_get_dot(g, points, px + (2*a + 2*b), py + (2*a )); grid_face_set_dot(g, d, 0);
|
||||||
|
d = grid_get_dot(g, points, px + ( a + 2*b), py + (2*a + b)); grid_face_set_dot(g, d, 1);
|
||||||
|
d = grid_get_dot(g, points, px + ( a + b), py + ( a + b)); grid_face_set_dot(g, d, 2);
|
||||||
|
d = grid_get_dot(g, points, px + (2*a + b), py + ( a )); grid_face_set_dot(g, d, 3);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* square below dodecagon */
|
||||||
|
if ((y < height - 1) && (x < width - 1 || !(y % 2)) && (x > 0 || (y % 2))) {
|
||||||
|
grid_face_add_new(g, 4);
|
||||||
|
d = grid_get_dot(g, points, px + a, py + (2*a + b)); grid_face_set_dot(g, d, 0);
|
||||||
|
d = grid_get_dot(g, points, px + a, py + (4*a + b)); grid_face_set_dot(g, d, 1);
|
||||||
|
d = grid_get_dot(g, points, px - a, py + (4*a + b)); grid_face_set_dot(g, d, 2);
|
||||||
|
d = grid_get_dot(g, points, px - a, py + (2*a + b)); grid_face_set_dot(g, d, 3);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* square on bottom left of dodecagon */
|
||||||
|
if (x && (y < height - 1)) {
|
||||||
|
grid_face_add_new(g, 4);
|
||||||
|
d = grid_get_dot(g, points, px - (2*a + b), py + ( a )); grid_face_set_dot(g, d, 0);
|
||||||
|
d = grid_get_dot(g, points, px - ( a + b), py + ( a + b)); grid_face_set_dot(g, d, 1);
|
||||||
|
d = grid_get_dot(g, points, px - ( a + 2*b), py + (2*a + b)); grid_face_set_dot(g, d, 2);
|
||||||
|
d = grid_get_dot(g, points, px - (2*a + 2*b), py + (2*a )); grid_face_set_dot(g, d, 3);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* square on top left of dodecagon */
|
||||||
|
if (x && y) {
|
||||||
|
grid_face_add_new(g, 4);
|
||||||
|
d = grid_get_dot(g, points, px - ( a + b), py - ( a + b)); grid_face_set_dot(g, d, 0);
|
||||||
|
d = grid_get_dot(g, points, px - (2*a + b), py - ( a )); grid_face_set_dot(g, d, 1);
|
||||||
|
d = grid_get_dot(g, points, px - (2*a + 2*b), py - (2*a )); grid_face_set_dot(g, d, 2);
|
||||||
|
d = grid_get_dot(g, points, px - ( a + 2*b), py - (2*a + b)); grid_face_set_dot(g, d, 3);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/* square above dodecagon */
|
||||||
|
if (y && (x < width - 1 || !(y % 2)) && (x > 0 || (y % 2))) {
|
||||||
|
grid_face_add_new(g, 4);
|
||||||
|
d = grid_get_dot(g, points, px + a, py - (4*a + b)); grid_face_set_dot(g, d, 0);
|
||||||
|
d = grid_get_dot(g, points, px + a, py - (2*a + b)); grid_face_set_dot(g, d, 1);
|
||||||
|
d = grid_get_dot(g, points, px - a, py - (2*a + b)); grid_face_set_dot(g, d, 2);
|
||||||
|
d = grid_get_dot(g, points, px - a, py - (4*a + b)); grid_face_set_dot(g, d, 3);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* upper triangle (v) */
|
||||||
|
if (y && (x < width - 1)) {
|
||||||
|
grid_face_add_new(g, 3);
|
||||||
|
d = grid_get_dot(g, points, px + (3*a + 2*b), py - (2*a + b)); grid_face_set_dot(g, d, 0);
|
||||||
|
d = grid_get_dot(g, points, px + (2*a + 2*b), py - (2*a )); grid_face_set_dot(g, d, 1);
|
||||||
|
d = grid_get_dot(g, points, px + ( a + 2*b), py - (2*a + b)); grid_face_set_dot(g, d, 2);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* lower triangle (^) */
|
||||||
|
if ((y < height - 1) && (x < width - 1)) {
|
||||||
|
grid_face_add_new(g, 3);
|
||||||
|
d = grid_get_dot(g, points, px + (3*a + 2*b), py + (2*a + b)); grid_face_set_dot(g, d, 0);
|
||||||
|
d = grid_get_dot(g, points, px + ( a + 2*b), py + (2*a + b)); grid_face_set_dot(g, d, 1);
|
||||||
|
d = grid_get_dot(g, points, px + (2*a + 2*b), py + (2*a )); grid_face_set_dot(g, d, 2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
freetree234(points);
|
||||||
|
assert(g->num_faces <= max_faces);
|
||||||
|
assert(g->num_dots <= max_dots);
|
||||||
|
|
||||||
|
grid_make_consistent(g);
|
||||||
|
return g;
|
||||||
|
}
|
||||||
|
|
||||||
typedef struct setface_ctx
|
typedef struct setface_ctx
|
||||||
{
|
{
|
||||||
int xmin, xmax, ymin, ymax;
|
int xmin, xmax, ymin, ymax;
|
|
@ -105,6 +105,7 @@ typedef struct grid {
|
||||||
A(FLORET,floret) \
|
A(FLORET,floret) \
|
||||||
A(DODECAGONAL,dodecagonal) \
|
A(DODECAGONAL,dodecagonal) \
|
||||||
A(GREATDODECAGONAL,greatdodecagonal) \
|
A(GREATDODECAGONAL,greatdodecagonal) \
|
||||||
|
A(GREATGREATDODECAGONAL,greatgreatdodecagonal) \
|
||||||
A(PENROSE_P2,penrose_p2_kite) \
|
A(PENROSE_P2,penrose_p2_kite) \
|
||||||
A(PENROSE_P3,penrose_p3_thick)
|
A(PENROSE_P3,penrose_p3_thick)
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include "rbassert.h"
|
#include <assert.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
@ -144,6 +144,9 @@ struct frontend {
|
||||||
GtkWidget *area;
|
GtkWidget *area;
|
||||||
GtkWidget *statusbar;
|
GtkWidget *statusbar;
|
||||||
GtkWidget *menubar;
|
GtkWidget *menubar;
|
||||||
|
#if GTK_CHECK_VERSION(3,20,0)
|
||||||
|
GtkCssProvider *css_provider;
|
||||||
|
#endif
|
||||||
guint statusctx;
|
guint statusctx;
|
||||||
int w, h;
|
int w, h;
|
||||||
midend *me;
|
midend *me;
|
||||||
|
@ -179,7 +182,6 @@ struct frontend {
|
||||||
char *filesel_name;
|
char *filesel_name;
|
||||||
#endif
|
#endif
|
||||||
GSList *preset_radio;
|
GSList *preset_radio;
|
||||||
int n_preset_menu_items;
|
|
||||||
int preset_threaded;
|
int preset_threaded;
|
||||||
GtkWidget *preset_custom;
|
GtkWidget *preset_custom;
|
||||||
GtkWidget *copy_menu_item;
|
GtkWidget *copy_menu_item;
|
||||||
|
@ -290,7 +292,27 @@ static void set_colour(frontend *fe, int colour)
|
||||||
|
|
||||||
static void set_window_background(frontend *fe, int colour)
|
static void set_window_background(frontend *fe, int colour)
|
||||||
{
|
{
|
||||||
#if GTK_CHECK_VERSION(3,0,0)
|
#if GTK_CHECK_VERSION(3,20,0)
|
||||||
|
char css_buf[512];
|
||||||
|
sprintf(css_buf, ".background { "
|
||||||
|
"background-color: #%02x%02x%02x; }",
|
||||||
|
(unsigned)(fe->colours[3*colour + 0] * 255),
|
||||||
|
(unsigned)(fe->colours[3*colour + 1] * 255),
|
||||||
|
(unsigned)(fe->colours[3*colour + 2] * 255));
|
||||||
|
if (!fe->css_provider)
|
||||||
|
fe->css_provider = gtk_css_provider_new();
|
||||||
|
if (!gtk_css_provider_load_from_data(
|
||||||
|
GTK_CSS_PROVIDER(fe->css_provider), css_buf, -1, NULL))
|
||||||
|
assert(0 && "Couldn't load CSS");
|
||||||
|
gtk_style_context_add_provider(
|
||||||
|
gtk_widget_get_style_context(fe->window),
|
||||||
|
GTK_STYLE_PROVIDER(fe->css_provider),
|
||||||
|
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
|
||||||
|
gtk_style_context_add_provider(
|
||||||
|
gtk_widget_get_style_context(fe->area),
|
||||||
|
GTK_STYLE_PROVIDER(fe->css_provider),
|
||||||
|
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
|
||||||
|
#elif GTK_CHECK_VERSION(3,0,0)
|
||||||
GdkRGBA rgba;
|
GdkRGBA rgba;
|
||||||
rgba.red = fe->colours[3*colour + 0];
|
rgba.red = fe->colours[3*colour + 0];
|
||||||
rgba.green = fe->colours[3*colour + 1];
|
rgba.green = fe->colours[3*colour + 1];
|
||||||
|
@ -439,10 +461,12 @@ static void clear_backing_store(frontend *fe)
|
||||||
fe->image = NULL;
|
fe->image = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void wipe_and_destroy_cairo(frontend *fe, cairo_t *cr)
|
static void wipe_and_maybe_destroy_cairo(frontend *fe, cairo_t *cr,
|
||||||
|
int destroy)
|
||||||
{
|
{
|
||||||
cairo_set_source_rgb(cr, fe->colours[0], fe->colours[1], fe->colours[2]);
|
cairo_set_source_rgb(cr, fe->colours[0], fe->colours[1], fe->colours[2]);
|
||||||
cairo_paint(cr);
|
cairo_paint(cr);
|
||||||
|
if (destroy)
|
||||||
cairo_destroy(cr);
|
cairo_destroy(cr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -455,12 +479,29 @@ static void setup_backing_store(frontend *fe)
|
||||||
fe->image = cairo_image_surface_create(CAIRO_FORMAT_RGB24,
|
fe->image = cairo_image_surface_create(CAIRO_FORMAT_RGB24,
|
||||||
fe->pw, fe->ph);
|
fe->pw, fe->ph);
|
||||||
|
|
||||||
wipe_and_destroy_cairo(fe, cairo_create(fe->image));
|
wipe_and_maybe_destroy_cairo(fe, cairo_create(fe->image), TRUE);
|
||||||
#ifndef USE_CAIRO_WITHOUT_PIXMAP
|
#ifndef USE_CAIRO_WITHOUT_PIXMAP
|
||||||
wipe_and_destroy_cairo(fe, gdk_cairo_create(fe->pixmap));
|
wipe_and_maybe_destroy_cairo(fe, gdk_cairo_create(fe->pixmap), TRUE);
|
||||||
|
#endif
|
||||||
|
#if GTK_CHECK_VERSION(3,22,0)
|
||||||
|
{
|
||||||
|
GdkWindow *gdkwin;
|
||||||
|
cairo_region_t *region;
|
||||||
|
GdkDrawingContext *drawctx;
|
||||||
|
cairo_t *cr;
|
||||||
|
|
||||||
|
gdkwin = gtk_widget_get_window(fe->area);
|
||||||
|
region = gdk_window_get_clip_region(gdkwin);
|
||||||
|
drawctx = gdk_window_begin_draw_frame(gdkwin, region);
|
||||||
|
cr = gdk_drawing_context_get_cairo_context(drawctx);
|
||||||
|
wipe_and_maybe_destroy_cairo(fe, cr, FALSE);
|
||||||
|
gdk_window_end_draw_frame(gdkwin, drawctx);
|
||||||
|
cairo_region_destroy(region);
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
wipe_and_maybe_destroy_cairo(
|
||||||
|
fe, gdk_cairo_create(gtk_widget_get_window(fe->area)), TRUE);
|
||||||
#endif
|
#endif
|
||||||
wipe_and_destroy_cairo(fe, gdk_cairo_create
|
|
||||||
(gtk_widget_get_window(fe->area)));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static int backing_store_ok(frontend *fe)
|
static int backing_store_ok(frontend *fe)
|
||||||
|
@ -1842,20 +1883,22 @@ static void changed_preset(frontend *fe)
|
||||||
TRUE);
|
TRUE);
|
||||||
} else {
|
} else {
|
||||||
GSList *gs = fe->preset_radio;
|
GSList *gs = fe->preset_radio;
|
||||||
int i = fe->n_preset_menu_items - 1 - n;
|
GSList *found = NULL;
|
||||||
if (fe->preset_custom)
|
|
||||||
gs = gs->next;
|
for (gs = fe->preset_radio; gs; gs = gs->next) {
|
||||||
while (i && gs) {
|
struct preset_menu_entry *entry =
|
||||||
i--;
|
(struct preset_menu_entry *)g_object_get_data(
|
||||||
gs = gs->next;
|
G_OBJECT(gs->data), "user-data");
|
||||||
}
|
|
||||||
if (gs) {
|
if (entry && entry->id != n)
|
||||||
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(gs->data),
|
gtk_check_menu_item_set_active(
|
||||||
TRUE);
|
GTK_CHECK_MENU_ITEM(gs->data), FALSE);
|
||||||
} else for (gs = fe->preset_radio; gs; gs = gs->next) {
|
else
|
||||||
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(gs->data),
|
found = gs;
|
||||||
FALSE);
|
|
||||||
}
|
}
|
||||||
|
if (found)
|
||||||
|
gtk_check_menu_item_set_active(
|
||||||
|
GTK_CHECK_MENU_ITEM(found->data), FALSE);
|
||||||
}
|
}
|
||||||
fe->preset_threaded = FALSE;
|
fe->preset_threaded = FALSE;
|
||||||
|
|
||||||
|
@ -1977,14 +2020,15 @@ static void resize_fe(frontend *fe)
|
||||||
static void menu_preset_event(GtkMenuItem *menuitem, gpointer data)
|
static void menu_preset_event(GtkMenuItem *menuitem, gpointer data)
|
||||||
{
|
{
|
||||||
frontend *fe = (frontend *)data;
|
frontend *fe = (frontend *)data;
|
||||||
game_params *params =
|
struct preset_menu_entry *entry =
|
||||||
(game_params *)g_object_get_data(G_OBJECT(menuitem), "user-data");
|
(struct preset_menu_entry *)g_object_get_data(
|
||||||
|
G_OBJECT(menuitem), "user-data");
|
||||||
|
|
||||||
if (fe->preset_threaded ||
|
if (fe->preset_threaded ||
|
||||||
(GTK_IS_CHECK_MENU_ITEM(menuitem) &&
|
(GTK_IS_CHECK_MENU_ITEM(menuitem) &&
|
||||||
!gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(menuitem))))
|
!gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(menuitem))))
|
||||||
return;
|
return;
|
||||||
midend_set_params(fe->me, params);
|
midend_set_params(fe->me, entry->params);
|
||||||
midend_new_game(fe->me);
|
midend_new_game(fe->me);
|
||||||
changed_preset(fe);
|
changed_preset(fe);
|
||||||
resize_fe(fe);
|
resize_fe(fe);
|
||||||
|
@ -2341,6 +2385,36 @@ static void add_menu_separator(GtkContainer *cont)
|
||||||
gtk_widget_show(menuitem);
|
gtk_widget_show(menuitem);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void populate_gtk_preset_menu(frontend *fe, struct preset_menu *menu,
|
||||||
|
GtkWidget *gtkmenu)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
|
||||||
|
for (i = 0; i < menu->n_entries; i++) {
|
||||||
|
struct preset_menu_entry *entry = &menu->entries[i];
|
||||||
|
GtkWidget *menuitem;
|
||||||
|
|
||||||
|
if (entry->params) {
|
||||||
|
menuitem = gtk_radio_menu_item_new_with_label(
|
||||||
|
fe->preset_radio, entry->title);
|
||||||
|
fe->preset_radio = gtk_radio_menu_item_get_group(
|
||||||
|
GTK_RADIO_MENU_ITEM(menuitem));
|
||||||
|
g_object_set_data(G_OBJECT(menuitem), "user-data", entry);
|
||||||
|
g_signal_connect(G_OBJECT(menuitem), "activate",
|
||||||
|
G_CALLBACK(menu_preset_event), fe);
|
||||||
|
} else {
|
||||||
|
GtkWidget *submenu;
|
||||||
|
menuitem = gtk_menu_item_new_with_label(entry->title);
|
||||||
|
submenu = gtk_menu_new();
|
||||||
|
gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), submenu);
|
||||||
|
populate_gtk_preset_menu(fe, entry->submenu, submenu);
|
||||||
|
}
|
||||||
|
|
||||||
|
gtk_container_add(GTK_CONTAINER(gtkmenu), menuitem);
|
||||||
|
gtk_widget_show(menuitem);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
enum { ARG_EITHER, ARG_SAVE, ARG_ID }; /* for argtype */
|
enum { ARG_EITHER, ARG_SAVE, ARG_ID }; /* for argtype */
|
||||||
|
|
||||||
static frontend *new_window(char *arg, int argtype, char **error)
|
static frontend *new_window(char *arg, int argtype, char **error)
|
||||||
|
@ -2353,8 +2427,12 @@ static frontend *new_window(char *arg, int argtype, char **error)
|
||||||
char errbuf[1024];
|
char errbuf[1024];
|
||||||
extern char *const *const xpm_icons[];
|
extern char *const *const xpm_icons[];
|
||||||
extern const int n_xpm_icons;
|
extern const int n_xpm_icons;
|
||||||
|
struct preset_menu *preset_menu;
|
||||||
|
|
||||||
fe = snew(frontend);
|
fe = snew(frontend);
|
||||||
|
#if GTK_CHECK_VERSION(3,20,0)
|
||||||
|
fe->css_provider = NULL;
|
||||||
|
#endif
|
||||||
|
|
||||||
fe->timer_active = FALSE;
|
fe->timer_active = FALSE;
|
||||||
fe->timer_id = -1;
|
fe->timer_id = -1;
|
||||||
|
@ -2501,11 +2579,11 @@ static frontend *new_window(char *arg, int argtype, char **error)
|
||||||
|
|
||||||
fe->preset_radio = NULL;
|
fe->preset_radio = NULL;
|
||||||
fe->preset_custom = NULL;
|
fe->preset_custom = NULL;
|
||||||
fe->n_preset_menu_items = 0;
|
|
||||||
fe->preset_threaded = FALSE;
|
fe->preset_threaded = FALSE;
|
||||||
if ((n = midend_num_presets(fe->me)) > 0 || thegame.can_configure) {
|
|
||||||
|
preset_menu = midend_get_presets(fe->me, NULL);
|
||||||
|
if (preset_menu->n_entries > 0 || thegame.can_configure) {
|
||||||
GtkWidget *submenu;
|
GtkWidget *submenu;
|
||||||
int i;
|
|
||||||
|
|
||||||
menuitem = gtk_menu_item_new_with_mnemonic("_Type");
|
menuitem = gtk_menu_item_new_with_mnemonic("_Type");
|
||||||
gtk_container_add(GTK_CONTAINER(fe->menubar), menuitem);
|
gtk_container_add(GTK_CONTAINER(fe->menubar), menuitem);
|
||||||
|
@ -2514,23 +2592,7 @@ static frontend *new_window(char *arg, int argtype, char **error)
|
||||||
submenu = gtk_menu_new();
|
submenu = gtk_menu_new();
|
||||||
gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), submenu);
|
gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), submenu);
|
||||||
|
|
||||||
for (i = 0; i < n; i++) {
|
populate_gtk_preset_menu(fe, preset_menu, submenu);
|
||||||
char *name;
|
|
||||||
game_params *params;
|
|
||||||
|
|
||||||
midend_fetch_preset(fe->me, i, &name, ¶ms);
|
|
||||||
|
|
||||||
menuitem =
|
|
||||||
gtk_radio_menu_item_new_with_label(fe->preset_radio, name);
|
|
||||||
fe->preset_radio =
|
|
||||||
gtk_radio_menu_item_get_group(GTK_RADIO_MENU_ITEM(menuitem));
|
|
||||||
fe->n_preset_menu_items++;
|
|
||||||
gtk_container_add(GTK_CONTAINER(submenu), menuitem);
|
|
||||||
g_object_set_data(G_OBJECT(menuitem), "user-data", params);
|
|
||||||
g_signal_connect(G_OBJECT(menuitem), "activate",
|
|
||||||
G_CALLBACK(menu_preset_event), fe);
|
|
||||||
gtk_widget_show(menuitem);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (thegame.can_configure) {
|
if (thegame.can_configure) {
|
||||||
menuitem = fe->preset_custom =
|
menuitem = fe->preset_custom =
|
||||||
|
@ -2781,6 +2843,22 @@ char *fgetline(FILE *fp)
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void list_presets_from_menu(struct preset_menu *menu)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
|
||||||
|
for (i = 0; i < menu->n_entries; i++) {
|
||||||
|
if (menu->entries[i].params) {
|
||||||
|
char *paramstr = thegame.encode_params(
|
||||||
|
menu->entries[i].params, TRUE);
|
||||||
|
printf("%s %s\n", paramstr, menu->entries[i].title);
|
||||||
|
sfree(paramstr);
|
||||||
|
} else {
|
||||||
|
list_presets_from_menu(menu->entries[i].submenu);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
int main(int argc, char **argv)
|
int main(int argc, char **argv)
|
||||||
{
|
{
|
||||||
char *pname = argv[0];
|
char *pname = argv[0];
|
||||||
|
@ -3184,23 +3262,12 @@ int main(int argc, char **argv)
|
||||||
* Another specialist mode which causes the puzzle to list the
|
* Another specialist mode which causes the puzzle to list the
|
||||||
* game_params strings for all its preset configurations.
|
* game_params strings for all its preset configurations.
|
||||||
*/
|
*/
|
||||||
int i, npresets;
|
|
||||||
midend *me;
|
midend *me;
|
||||||
|
struct preset_menu *menu;
|
||||||
|
|
||||||
me = midend_new(NULL, &thegame, NULL, NULL);
|
me = midend_new(NULL, &thegame, NULL, NULL);
|
||||||
npresets = midend_num_presets(me);
|
menu = midend_get_presets(me, NULL);
|
||||||
|
list_presets_from_menu(menu);
|
||||||
for (i = 0; i < npresets; i++) {
|
|
||||||
game_params *params;
|
|
||||||
char *name, *paramstr;
|
|
||||||
|
|
||||||
midend_fetch_preset(me, i, &name, ¶ms);
|
|
||||||
paramstr = thegame.encode_params(params, TRUE);
|
|
||||||
|
|
||||||
printf("%s %s\n", paramstr, name);
|
|
||||||
sfree(paramstr);
|
|
||||||
}
|
|
||||||
|
|
||||||
midend_free(me);
|
midend_free(me);
|
||||||
return 0;
|
return 0;
|
||||||
} else {
|
} else {
|
|
@ -5,7 +5,7 @@
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include "rbassert.h"
|
#include <assert.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
|
|
||||||
|
@ -1480,7 +1480,7 @@ static void game_print(drawing *dr, const game_state *state, int tilesize)
|
||||||
const struct game thegame = {
|
const struct game thegame = {
|
||||||
"Guess", "games.guess", "guess",
|
"Guess", "games.guess", "guess",
|
||||||
default_params,
|
default_params,
|
||||||
game_fetch_preset,
|
game_fetch_preset, NULL,
|
||||||
decode_params,
|
decode_params,
|
||||||
encode_params,
|
encode_params,
|
||||||
free_params,
|
free_params,
|
94
apps/plugins/puzzles/src/guess.html
Normal file
94
apps/plugins/puzzles/src/guess.html
Normal file
|
@ -0,0 +1,94 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
|
||||||
|
"http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="content-type" content="text/html; charset=US-ASCII">
|
||||||
|
<title>Guess</title>
|
||||||
|
<link rel="previous" href="flip.html">
|
||||||
|
<link rel="ToC" href="index.html">
|
||||||
|
<link rel="up" href="index.html">
|
||||||
|
<link rel="index" href="docindex.html">
|
||||||
|
<link rel="next" href="pegs.html">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<p><a href="flip.html">Previous</a> | <a href="index.html">Contents</a> | <a href="docindex.html">Index</a> | <a href="pegs.html">Next</a></p>
|
||||||
|
<h1><a name="C15"></a>Chapter 15: <a name="i0"></a>Guess</h1>
|
||||||
|
<p>
|
||||||
|
You have a set of coloured pegs, and have to reproduce a predetermined sequence of them (chosen by the computer) within a certain number of guesses.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Each guess gets marked with the number of correctly-coloured pegs in the correct places (in black), and also the number of correctly-coloured pegs in the wrong places (in white).
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
This game is also known (and marketed, by Hasbro, mainly) as a board game ‘<a name="i1"></a>Mastermind’, with 6 colours, 4 pegs per row, and 10 guesses. However, this version allows custom settings of number of colours (up to 10), number of pegs per row, and number of guesses.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Guess was contributed to this collection by James Harvey.
|
||||||
|
</p>
|
||||||
|
<h2><a name="S15.1"></a>15.1 <a name="i2"></a>Guess controls</h2>
|
||||||
|
<p>
|
||||||
|
This game can be played with either the keyboard or the mouse.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
With the mouse, drag a coloured peg from the tray on the left-hand side to its required position in the current guess; pegs may also be dragged from current and past guesses to copy them elsewhere. To remove a peg, drag it off its current position to somewhere invalid.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Right-clicking in the current guess adds a ‘hold’ marker; pegs that have hold markers will be automatically added to the next guess after marking.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Alternatively, with the keyboard, the up and down cursor keys can be used to select a peg colour, the left and right keys to select a peg position, and the space bar or Enter key to place a peg of the selected colour in the chosen position. ‘D’ or Backspace removes a peg, and Space adds a hold marker.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Pressing ‘h’ or ‘?’ will fill the current guess with a suggested guess. Using this is not recommended for 10 or more pegs as it is slow.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
When the guess is complete, the smaller feedback pegs will be highlighted; clicking on these (or moving the peg cursor to them with the arrow keys and pressing the space bar or Enter key) will mark the current guess, copy any held pegs to the next guess, and move the ‘current guess’ marker.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
If you correctly position all the pegs the solution will be displayed below; if you run out of guesses (or select ‘Solve...’) the solution will also be revealed.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
(All the actions described in <a href="common.html#S2.1">section 2.1</a> are also available.)
|
||||||
|
</p>
|
||||||
|
<h2><a name="S15.2"></a>15.2 <a name="i3"></a>Guess parameters</h2>
|
||||||
|
<p>
|
||||||
|
These parameters are available from the ‘Custom...’ option on the ‘Type’ menu. The default game matches the parameters for the board game ‘Mastermind’.
|
||||||
|
</p>
|
||||||
|
<dl><dt>
|
||||||
|
<em>Colours</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Number of colours the solution is chosen from; from 2 to 10 (more is harder).
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<em>Pegs per guess</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Number of pegs per guess (more is harder).
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<em>Guesses</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Number of guesses you have to find the solution in (fewer is harder).
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<em>Allow blanks</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Allows blank pegs to be given as part of a guess (makes it easier, because you know that those will never be counted as part of the solution). This is turned off by default.
|
||||||
|
<p>
|
||||||
|
Note that this doesn't allow blank pegs in the solution; if you really wanted that, use one extra colour.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<em>Allow duplicates</em>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Allows the solution (and the guesses) to contain colours more than once; this increases the search space (making things harder), and is turned on by default.
|
||||||
|
</dd>
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
<hr><address></address></body>
|
||||||
|
</html>
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue