]> mj.ucw.cz Git - eval.git/blobdiff - submit/Makefile
Merge branch 'container'
[eval.git] / submit / Makefile
index 5e48d95b34d9820db53a16583e0e8c3bb438e35f..8c0e53c3f1854835766dd9fea7658ae960111eb5 100644 (file)
@@ -1,36 +1,47 @@
-TLSCF:=$(shell libgnutls-config --cflags)
-TLSLF:=$(shell libgnutls-config --libs)
-GCRCF:=$(shell libgcrypt-config --cflags)
-
-CFLAGS=-O2 -Iinclude -g -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -Wundef -Wredundant-decls -std=gnu99 $(TLSCF) $(GCRCF)
-LDFLAGS=$(TLSLF)
-
-CC=gcc-4.1.1
-CFLAGS+=-Wno-pointer-sign -Wdisabled-optimization -Wno-missing-field-initializers
-LDFLAGS+=-lpthread     # FIXME: Use libucw without threads
-
-all: submitd privkey
-
-submitd: submitd.o commands.o tasks.o lib/libsh.a lib/libucw.a
-submitd.o: submitd.c submitd.h
-commands.o: commands.c submitd.h
-tasks.o: tasks.c submitd.h
-connect: connect.o lib/libucw.a
-connect.o: connect.c
-privkey: privkey.o lib/libucw.a
-privkey.o: privkey.c
-
-certs:
-       certtool --generate-privkey --outfile ca-key.pem
-       certtool --generate-privkey --outfile ca-key.pem --template ca-cert.tpl
-       certtool --generate-privkey --outfile server-key.pem
-       certtool --generate-request --load-privkey server-key.pem --outfile server-req.pem --template server-cert.tpl
-       certtool --generate-certificate --load-request server-req.pem --outfile server-cert.pem --load-ca-certificate ca-cert.pem --load-ca-privkey ca-key.pem --template server-cert.tpl
-       certtool --generate-privkey --outfile client-key.pem
-       certtool --generate-request --load-privkey client-key.pem --outfile client-req.pem --template client-cert.tpl
-       certtool --generate-certificate --load-request client-req.pem --outfile client-cert.pem --load-ca-certificate ca-cert.pem --load-ca-privkey ca-key.pem --template client-cert.tpl
-       # Beware of serial numbers
-
-clean:
-       rm -f `find . -name "*~" -or -name "*.[oa]" -or -name "\#*\#" -or -name TAGS -or -name core -or -name .depend -or -name .#*`
-       rm -f submitd connect privkey
+# Makefile for Moe submitter
+# (c) 2008 Martin Mares <mj@ucw.cz>
+
+SUBCF=$(LIBGCRYPT_CFLAGS) $(LIBGNUTLS_CFLAGS) $(GNUTLS_CFLAGS)
+SUBLF=$(LIBGCRYPT_LIBS) $(LIBGNUTLS_LIBS) $(GNUTLS_LIBS)
+
+DIRS+=submit
+SDIR=$(o)/submit
+
+### The submit server ###
+
+PROGS+=$(addprefix $(SDIR)/,submitd privkey connect)
+
+$(SDIR)/submitd: $(addprefix $(SDIR)/,submitd.o commands.o tasks.o) $(LIBUCW) $(LIBSH)
+$(SDIR)/submitd: CFLAGS+=$(SUBCF)
+$(SDIR)/submitd: LIBS+=$(SUBLF)
+
+$(SDIR)/connect: $(SDIR)/connect.o $(LIBUCW)
+$(SDIR)/connect: CFLAGS+=$(SUBCF)
+$(SDIR)/connect: LIBS+=$(SUBLF)
+
+$(SDIR)/privkey: $(SDIR)/privkey.o $(LIBUCW)
+$(SDIR)/privkey: CFLAGS+=$(SUBCF)
+$(SDIR)/privkey: LIBS+=$(SUBLF)
+
+CONFIGS+=submitd
+run/cf/submitd: $(SDIR)/submitd.cf
+
+### Submitter perl module ###
+
+EXTRA_RUNDIRS+=lib/perl5/MO
+SUBMIT_PERL_MODS=$(o)/submit/Submit.pm
+PROGS+=$(SUBMIT_PERL_MODS)
+
+$(SUBMIT_PERL_MODS): PERL_MODULE_DIR=MO
+
+### The submit client and utilities ###
+
+PROGS+=$(addprefix $(SDIR)/,contest create-certs remote-status remote-submit show-submits)
+
+$(SDIR)/contest: $(s)/submit/contest.pl
+$(SDIR)/create-certs: $(s)/submit/create-certs.sh
+$(SDIR)/remote-status: $(s)/submit/remote-status.pl
+$(SDIR)/remote-submit: $(s)/submit/remote-submit.pl
+$(SDIR)/show-submits: $(s)/submit/show-submits.pl
+
+DATAFILES+=$(addprefix $(SDIR)/,ca-cert.tpl client-cert.tpl server-cert.tpl)