-install: elftype
- install -D zpm $(DESTDIR)/bin/zpm
- install -D zpm-note $(DESTDIR)/bin/zpm-note
- install -D zpm-bug $(DESTDIR)/bin/zpm-bug
- install -D zpm-sequence $(DESTDIR)/bin/zpm-sequence
- install -d -m2770 -o root -g adm $(DESTDIR)/var/lib/admin
- install -d -m2770 -o root -g adm $(DESTDIR)/var/lib/admin/notes
- install -d -m2770 -o root -g adm $(DESTDIR)/var/lib/admin/notes/open
- install -d -m2770 -o root -g adm $(DESTDIR)/var/lib/admin/notes/ack
- install -D elftype $(DESTDIR)/usr/sbin/elftype
- install -D soname $(DESTDIR)/usr/sbin/soname
- #SPOOL=$(DESTDIR)/var/lib/admin/notes ./zpm-sequence -c notes
+zpm-soname: elf/soname.c
+ $(CC) -Ielf $(CFLAGS) -o $@ $+
+
+zpm-soneed: elf/needed.c
+ $(CC) -Ielf $(CFLAGS) -o $@ $+
+
+zpm-addfile: zpm-addfile.o libzpm.a libelf.a
+ $(CC) -Ielf $(CFLAGS) $(LDFLAGS) -o $@ $< -lzpm -lelf
+
+zpm-hash: zpm-hash.o libzpm.a
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $< -lzpm -lelf
+
+zpm-init: zpm-init.o libzpm.a
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $< -lzpm -lelf
+
+zpm-extract: zpm-extract.o libzpm.a
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $< -lzpm -lelf
+
+zpm-runscript: zpm-runscript.o libzpm.a
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $< -lzpm -lelf
+
+zpm-foreach-path.o: CFLAGS+=-Wno-unused-parameter
+
+zpm-foreach-path: zpm-foreach-path.o libzpm.a sqlite/sqlite3.h
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $< -lzpm -lelf
+
+zpm-findpkg: zpm-findpkg.o libzpm.a
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $< -lzpm -lelf
+
+zpm-syncfs: zpm-syncfs.o libzpm.a libelf.a
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $< -lzpm -lelf -lm
+
+zpm-parse: zpm-parse.o lib/parse.o
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $+
+
+zpm-quote: zpm-quote.o
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $<
+
+newdb.c: db.sql
+ echo "char createdb[] = {" > $@
+ xxd -i < $< >> $@
+ echo ", 0};" >> $@
+
+sqlite/sqlite3.o: sqlite/sqlite3.c sqlite/config.h
+ $(CC) -Wall -std=c99 -Ilib -D_HAVE_SQLITE_CONFIG_H=1 -c -o $@ $<
+
+sqlite/shell.o: sqlite/shell.c sqlite/config.h
+ $(CC) -Wall -std=c99 -Ilib \
+ -DSQLITE_OMIT_LOAD_EXTENSION=1 \
+ -D_POSIX_C_SOURCE=200112L -c -o $@ $<
+
+lib/zpm.o: newdb.c
+
+zpm-vercmp: zpm-vercmp.o lib/vercmp.o
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $+
+
+zpm-shell: sqlite/sqlite3.o sqlite/shell.o
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $+
+
+
+libelf.a: elf/libelf.o
+ ar rcuv $@ $?
+
+install: $(COMPILED)
+ test -d $(DESTDIR)/bin || install -d $(DESTDIR)/bin
+ install -D $(PROGRAMS) $(DESTDIR)/bin
+
+scan-prep: clean sqlite/sqlite3.o sqlite/shell.o lib/liblzma.a
+ @echo scan-build -v -o report make -j10
+
+clean:
+ rm -f *.o sqlite/*.o lib/*.o $(LZMAOBJ) liblzma.a \
+ libelf.a libzpm.a zpm-addfile soname \
+ *.xz \
+ local.db t/ctap/prove.o $(ZPKGBIN)