]> bicyclesonthemoon.info Git - ott/enhance/blobdiff - makefile
debug build target; updated config tool; install script
[ott/enhance] / makefile
index 8f38326f4fd499f75e83001708cf19becf3bd8af..93446e1f2f3fc64ff9d21250990ec881578abbbb 100644 (file)
--- a/makefile
+++ b/makefile
@@ -1,7 +1,6 @@
 # "makefile" is automatically generated from "makefile.1.mak"
-# 01.12.2022
 # 
-# Copyright (C) 2022  Balthasar Szczepański
+# Copyright (C) 2022, 2024  Balthasar Szczepański
 # 
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU Affero General Public License as
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 
+
+DEFAULT_TARGET = debug
 ifndef TARGET
-TARGET    = release
+TARGET    = debug
 # when want to change target run this first:
 # make -B TARGET=target_name makefile
 endif
+PERL = perl
 
-CONFIGFILE = settings-$(TARGET).txt settings.txt
-
-# The configuration tool
-# http://bicyclesonthemoon.info/git/botm-config 
-CONFIGURE = /botm/bin/config/configure.pl
-CONFIGURE_CMD = $(PERL) $(CONFIGURE) $(CONFIGFILE)
 
 CC   =gcc
 CF   =-g -Wall
 L_IL =-lIL
 L_CGI=-lcgi
 
+CAT  =/usr/bin/cat
+CHMOD=/usr/bin/chmod
+CP   =/usr/bin/cp
+MKDIR=/usr/bin/mkdir
+PERL =/usr/bin/perl
 RM   =/usr/bin/rm
 
+BIN_PATH = /botm/bin/test-enhance
+TMP_PATH = /botm/tmp/test-enhance
+WWW_PATH = /botm/www/1190/enhancetest
+
+CONF = /botm/etc/www/conf/1190/test-enhance.conf
+
+
+CONFIGFILE = settings-$(TARGET).txt settings.txt
+DEFAULT_CONFIGFILE = settings-$(DEFAULT_TARGET).txt settings.txt
+
+# The configuration tool
+# http://bicyclesonthemoon.info/git/botm-config 
+CONFIGURE = $(PERL) ./configure.pl --do
+CONFIGURE_CMD = $(CONFIGURE) $(CONFIGFILE)
+
+
 STANDALONE=\
 nofading\
 info\
@@ -44,7 +61,10 @@ bluenh\
 reveal\
 diff\
 npb\
-pal_mix
+pal_mix\
+pal_unmix\
+pal_mixdiff\
+remap_t_1
 
 C_STANDALONE=\
 standalone-nofading.c\
@@ -53,7 +73,10 @@ standalone-bluenh.c\
 standalone-reveal.c\
 standalone-diff.c\
 standalone-npb.c\
-standalone-pal_mix.c
+standalone-pal_mix.c\
+standalone-pal_unmix.c\
+standalone-pal_mixdiff.c\
+standalone-remap_t_1.c
 
 C_SUBTOOL=\
 nofading.c\
@@ -62,7 +85,10 @@ bluenh.c\
 reveal.c\
 diff.c\
 npb.c\
-pal_mix.c
+pal_mix.c\
+pal_unmix.c\
+pal_mixdiff.c\
+remap_t_1.c
 
 H_SUBTOOL=\
 nofading.h\
@@ -71,28 +97,88 @@ bluenh.h\
 reveal.h\
 diff.h\
 npb.h\
-pal_mix.h
+pal_mix.h\
+pal_unmix.h\
+pal_mixdiff.h\
+remap_t_1.h
 
 H_PNG=\
 npb0.h\
 npb1.h\
 npb2.h\
 npb_ong1.h\
-npb_403.h
+npb_403.h\
+nh.h\
+nf.h\
+rvl.h\
+df.h\
+mpb.h\
+mpb_503.h\
+nclr.h\
+t1.h
+
+CGI=\
+bluenh-cgi\
+nofading-cgi\
+reveal-cgi\
+diff-cgi\
+npb-cgi\
+pal-cgi\
+t-1-cgi
+
+HTM_CGI=\
+bluenh.htm\
+nofading.htm\
+reveal.htm\
+diff.htm\
+npb.htm\
+pal.htm\
+t-1.htm
+
+HTM_CGI_1=\
+bluenh.1.htm\
+nofading.1.htm\
+reveal.1.htm\
+diff.1.htm\
+npb.1.htm\
+pal.1.htm\
+t-1.1.htm
 
 # keep these 2 lists in the same order!:
-GENERATE_FROM=
+GENERATE_FROM=\
+online-core.1.h\
+enhance.1.conf
+
+TO_GENERATE=\
+online-core.h\
+enhance.conf
 
-TO_GENERATE=
+DIR=\
+$(BIN_PATH)\
+$(TMP_PATH)\
+$(WWW_PATH)
 
+SETUID=\
+$(CGI)
 
+BIN=\
+enhance\
+$(STANDALONE)\
+$(CGI)
 
-#all: 403 npb npbd npb-ong1 npbd-ong1 bluenh bluenhd insert extract seediff insertframe mremapt-1 compare nofading nofadingd
-all: enhance $(STANDALONE)
+WWW=\
+index.htm\
+$(HTM_CGI)\
+param.png
 
+all: $(BIN) $(WWW) enhance.conf
+       
 
-makefile: makefile.1.mak $(CONFIGFILE)
-       $(CONFIGURE_CMD) < makefile.1.mak > makefile 
+makefile: makefile.1.mak $(CONFIGFILE) configure.pl
+       $(CONFIGURE_CMD) --in makefile.1.mak --out makefile 
+
+configure.pl: $(CONFIGFILE) config/configure.1.pl
+       $(PERL) config/configure.1.pl --do target=direct settings-$(TARGET).txt config/settings.txt --in config/configure.1.pl --out configure.pl
 
 
 enhance: enhance.c core.h core.c $(H_SUBTOOL) $(C_SUBTOOL) $(H_PNG)
@@ -101,14 +187,17 @@ enhance: enhance.c core.h core.c $(H_SUBTOOL) $(C_SUBTOOL) $(H_PNG)
 $(STANDALONE): %: standalone-%.c %.c %.h core.c core.h $(H_PNG)
        $(CC) $(CF) -o $@ standalone-$*.c $*.c core.c $(L_IL)
 
-$(C_STANDALONE): standalone-%.c: settings-subtool.txt standalone.c
+$(C_STANDALONE): standalone-%.c: settings-subtool.txt standalone.c configure.pl
        $(CONFIGURE) subtool=$* settings-subtool.txt --in standalone.c --out $@
 
-$(H_SUBTOOL): %.h: settings-subtool.txt subtool.h
+$(H_SUBTOOL): %.h: settings-subtool.txt subtool.h configure.pl
        $(CONFIGURE) subtool=$* settings-subtool.txt --in subtool.h --out $@
 
-$(TO_GENERATE): $(GENERATE_FROM) $(CONFIGFILE)
-       $(CONFIGURE_CMD) --in $(GENERATE_FROM) --out $(TO_GENERATE)
+$(TO_GENERATE): $(GENERATE_FROM) $(CONFIGFILE)  configure.pl
+       $(CONFIGURE_CMD) --v --in $(GENERATE_FROM) --out $(TO_GENERATE)
+       
+$(CGI): %: %.c online-core.c online-core.h $(H_PNG)
+       $(CC) $(CF) -o $@ $*.c online-core.c $(L_CGI)
 
 $(H_PNG): %.h: %.png f2h
        ./f2h $* $*.png $@
@@ -116,57 +205,40 @@ $(H_PNG): %.h: %.png f2h
 f2h: f2h.c
        $(CC) $(CF) -o f2h f2h.c
 
+$(HTM_CGI): %.htm: enhance-top.htm enhance-bottom.htm %.1.htm $(CONFIGFILE) configure.pl
+       $(CAT) enhance-top.htm $*.1.htm enhance-bottom.htm | $(CONFIGURE) _HTML_TITLE=\$$title_$* $(CONFIGFILE) --out $*.htm
+
+index.htm: enhance-top.htm enhance-bottom.htm $(HTM_CGI_1) $(CONFIGFILE) configure.pl
+       $(CAT) enhance-top.htm $(HTM_CGI_1) enhance-bottom.htm | $(CONFIGURE) _HTML_TITLE=\$$title_enhance $(CONFIGFILE) --out index.htm
 
-#test: test.c core.h core.c
-#      $(CC) $(CF) -o test test.c core.c $(LF)
+
+setuid: $(SETUID)
+       $(CHMOD) u+s,g+s $(SETUID)
+
+mktree:
+       $(MKDIR) -p $(DIR)
+#      $(CHMOD) g-r,g-w,g-x,o-r,o-w,o-x $(HIDDEN_DIR)
+
+ifdef BIN_PATH
+cp_bin: $(BIN) setuid | mktree
+       $(RM) -f $(BIN_PATH)/*
+       $(CP) -p $(BIN) $(BIN_PATH)
+endif
+
+cp_conf: enhance.conf
+       $(CP) enhance.conf $(CONF)
+
+cp_www: $(WWW) | mktree
+       $(CP) -r $(WWW) $(WWW_PATH)
+
+install: all cp_bin cp_www cp_conf
+       
 
 clean:
-       $(RM) -f enhance $(C_STANDALONE) $(STANDALONE) $(TO_GENERATE) f2h $(H_PNG) $(H_SUBTOOL)
-
-PHONY: all clean
-
-#npb-ong1: npb-ong1.cpp makefile
-#      $(CC) $(CF) $(LF) -o npb-ong1 npb-ong1.cpp
-#
-#npb: npb.cpp makefile
-#      $(CC) $(CF) $(LF) -o npb npb.cpp
-#
-#403: 403.cpp makefile
-#      $(CC) $(CF) $(LF) -o 403 403.cpp
-#
-#npbd-ong1: npb npbd-ong1.cpp makefile
-#      $(CC) $(CF) -o npbd-ong1 npbd-ong1.cpp $(LF2)
-#
-#npbd: npb npbd.cpp makefile
-#      $(CC) $(CF) -o npbd npbd.cpp $(LF2)
-#
-#bluenh: bluenh.cpp makefile
-#      $(CC) $(CF) $(LF) -o bluenh bluenh.cpp
-#
-#bluenhd: bluenhd.cpp makefile
-#      $(CC) $(CF) -o bluenhd bluenhd.cpp $(LF2)
-#
-#insert: insert.c makefile
-#      $(CC) $(CF) $(LF) -o insert insert.c
-#
-#extract: extract.c makefile
-#      $(CC) $(CF) $(LF) -o extract extract.c
-#
-#seediff: seediff.c makefile
-#      $(CC) $(CF) $(LF) -o seediff seediff.c
-#
-#insertframe: insertframe.c makefile
-#      $(CC) $(CF) -o insertframe insertframe.c $(LF2)
-#
-#remapt-1: remapt-1.c makefile
-#      $(CC) $(CF) $(LF) -o remapt-1 remapt-1.c
-#
+       $(RM) -f enhance configure.pl $(C_STANDALONE) $(STANDALONE) $(TO_GENERATE) f2h $(H_PNG) $(H_SUBTOOL) $(CGI) index.htm $(HTM_CGI)
+       $(PERL) config/configure.1.pl --do $(DEFAULT_CONFIGFILE) --in makefile.1.mak --out makefile
+
+PHONY: all clean install setuid mktree cp_bin cp_www
+
 #compare: compare.c makefile
 #      $(CC) $(CF) $(LF) -o compare compare.c
-#
-#nofading: nofading.c makefile
-#      $(CC) $(CF) $(LF) -o nofading nofading.c
-#
-#nofadingd: nofadingd.c makefile
-#      $(CC) $(CF) $(LF) -o nofadingd nofadingd.c
-#