chiark / gitweb /
Midnight has some Lime dye; Cobalt has some Navy dye
[ypp-sc-tools.db-live.git] / yarrg / Makefile
index baf8760..44441bc 100644 (file)
@@ -1,4 +1,3 @@
-
 # This is part of ypp-sc-tools, a set of third-party tools for assisting
 # players of Yohoho Puzzle Pirates.
 #
@@ -9,6 +8,12 @@
 # the Free Software Foundation, either version 3 of the License, or
 # (at your option) any later version.
 #
+# The parts of the code used for the website (including the web/
+# directory and the rs*.[ch] which make up the routesearch program)
+# are released instead under the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, 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
@@ -31,25 +36,47 @@ DEBUG=-g
 
 CFLAGS += $(WARNINGS) $(WERROR) $(OPTIMISE) $(DEBUG)
 
-TARGETS= ypp-commodities
+TARGETS_CLIENT= yarrg
+TARGETS_SERVER= routesearch
+TARGETS= $(TARGETS_CLIENT) $(TARGETS_SERVER)
+
+default: clean-other-directory client
+client: $(TARGETS_CLIENT)
+server: $(TARGETS_SERVER)
+all: client server
 
-all: $(TARGETS)
+CONVERT_OBJS= convert.o ocr.o pages.o structure.o rgbimage.o resolve.o
+COMMON_OBJS= common.o
+ROUTESEARCH_OBJS= rsvalue.o rsmain.o rssql.o rssearch.o
 
-CONVERT_OBJS= convert.o ocr.o pages.o structure.o common.o rgbimage.o resolve.o
+yarrg: $(CONVERT_OBJS) $(COMMON_OBJS) -lnetpbm -lXtst -lX11 -lpcre -lm
+       $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LDLIBS)
+
+$(CONVERT_OBJS): common.h ocr.h convert.h structure.h
 
-ypp-commodities: $(CONVERT_OBJS) -lnetpbm -lXtst -lX11 -lpcre -lm
+routesearch:   $(ROUTESEARCH_OBJS) $(COMMON_OBJS) -lsqlite3 -lglpk -lm
        $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LDLIBS)
 
-$(CONVERT_OBJS): ocr.h convert.h structure.h common.h
+$(ROUTESEARCH_OBJS): common.h rscommon.h
+$(COMMON_OBJS): common.h
 
 clean:
        rm -f *.o core core.* *~ vgcore.*
        rm -f t t.* u u.* v v.* *.tmp *.orig *.rej
+       rm -f ypp-commodities
 
 realclean: clean
        rm -f $(TARGETS)
-       rm -f raw.tsv
        rm -f _pages.ppm _pages.ppm.gz _upload-*.html _commodmap.tsv
        rm -f _master-*.txt _master-*.txt.gz _local-*.txt
        rm -f ./#pages#.ppm ./#upload-*#.html ./#commodmap#.tsv
        rm -f ./#master-*#.txt ./#local-*#.txt raw.tsv
+
+clean-other-directory:
+       @set -e; if test -d ../pctb && ! test -L ../pctb; then \
+               echo '*** tidying up ../pctb; moving local data here ***'; \
+               set -x; \
+               find ../pctb -path '../pctb/_local-*.txt' -exec mv '{}' . \;; \
+               $(MAKE) -C ../pctb -f ../yarrg/Makefile realclean; \
+               rmdir ../pctb; \
+       fi