# Where to put executables
INSTALLDIR 	= /usr/local/bin

# Where to put cgi scripts
CGI-BIN 	= /usr/local/httpd/server_root/cgi-bin/samba

# Where to put share file
SHARESDIR	= /usr/local/samba/lib

# List of share types
SHARESFILE 	= "$(SHARESDIR)/shares.txt"

# List of forms
FORMSFILE	= "$(SHARESDIR)/forms.txt"

# Owner of cgi scripts
CGIUSER		= gbook
CGIGROUP	= cgibin

CCFLAGS 	= -Wall -g


# --- end of user defines

all:		smbread

smbread:	list.o Parse.o smbread.o Form.o smb2html.o rwconf.o options.o utils.o

install:	all
		install --group=$(CGIGROUP) --owner=$(CGIUSER) --mode=0700 --strip smbread $(INSTALLDIR)
		install --group=$(CGIGROUP) --owner=$(CGIUSER) --mode=0700 scripts/init.sh $(CGI-BIN)
		install --group=$(CGIGROUP) --owner=$(CGIUSER) --mode=0700 scripts/conf.sh $(CGI-BIN)
		install --group=$(CGIGROUP) --owner=$(CGIUSER) --mode=0700 scripts/options.sh $(CGI-BIN)
		install --group=$(CGIGROUP) --owner=$(CGIUSER) --mode=0700 scripts/menu.sh $(CGI-BIN)
		install --group=$(CGIGROUP) --owner=$(CGIUSER) --mode=0700 scripts/postform.sh $(CGI-BIN)
		install --group=$(CGIGROUP) --owner=$(CGIUSER) --mode=0640 scripts/form1 $(CGI-BIN)
		install --group=$(CGIGROUP) --owner=$(CGIUSER) --mode=0640 scripts/form2 $(CGI-BIN)
		install --group=$(CGIGROUP) --owner=$(CGIUSER) --mode=0640 scripts/form3 $(CGI-BIN)
		install --group=$(CGIGROUP) --owner=$(CGIUSER) --mode=0640 config/shares.txt $(SHARESDIR)
		install --group=$(CGIGROUP) --owner=$(CGIUSER) --mode=0640 config/forms.txt $(SHARESDIR)

clean:
		rm *.o *~ slask config/*~ scripts/*~ smbread

list.o:		list.C list.h
		g++ $(CCFLAGS) -c list.C -o list.o

Parse.o:	Parse.C Parse.h
		g++ $(CCFLAGS) -c Parse.C -o Parse.o

smbread.o:	smbread.C smbread.h
		g++ $(CCFLAGS) -c smbread.C -o smbread.o

Form.o:		Form.C Form.h
		g++ $(CCFLAGS) -c Form.C -o Form.o

smb2html.o:	smb2html.C smb2html.h
		g++ $(CCFLAGS) -c smb2html.C -o smb2html.o

rwconf.o:	rwconf.C rwconf.h
		g++ $(CCFLAGS) -DSHARESFILE='$(SHARESFILE)' \
			-DFORMSFILE='$(FORMSFILE)' \
			-c rwconf.C -o rwconf.o

options.o:	options.C options.h
		g++ $(CCFLAGS) -c options.C -o options.o

utils.o:	utils.C utils.h
		g++ $(CCFLAGS) -c utils.C -o utils.o
