The autogenerated Makefile.deps does not work for the oslfsck
exectutable because we compile the object files for oslfsck without
-fPIC to generate more performant code, and name them e.g. util.fsck.o
instead of util.o.
Geting rid of this optimization not only fixes the dependencies but
also simplifies the Makefile and speeds up the build.
mandir := $(PREFIX)/man/man1
objects := osl.o util.o rbtree.o sha1.o
mandir := $(PREFIX)/man/man1
objects := osl.o util.o rbtree.o sha1.o
-fsck_objects := fsck.fsck.o osl.fsck.o util.fsck.o rbtree.fsck.o sha1.fsck.o fsck.cmdline.o
+fsck_objects := fsck.o osl.o util.o rbtree.o sha1.o fsck.cmdline.o
headers := osl.h
executables := oslfsck
man_pages := oslfsck.1
headers := osl.h
executables := oslfsck
man_pages := oslfsck.1
VERSION := $(x).$(y).$(z)
# common flags
VERSION := $(x).$(y).$(z)
# common flags
+CPPFLAGS += -DVERSION='"$(VERSION)"'
+
CFLAGS += -Wno-sign-compare -g -Wunused -Wundef -W
CFLAGS += -Wredundant-decls
CFLAGS += -Os
CFLAGS += -Wno-sign-compare -g -Wunused -Wundef -W
CFLAGS += -Wredundant-decls
CFLAGS += -Os
-include Makefile.deps
fsck.cmdline.o: fsck.cmdline.c fsck.cmdline.h
-include Makefile.deps
fsck.cmdline.o: fsck.cmdline.c fsck.cmdline.h
- $(CC) -c -DVERSION='"$(VERSION)"' $<
-
-%.fsck.o: %.c Makefile fsck.cmdline.c fsck.cmdline.h osl.h errtab.h
- $(CC) -c -DVERSION='"$(VERSION)"' $(CPPFLAGS) $(CFLAGS) $< -o $@
+ $(CC) $(CPPFLAGS) -c $<
%.o: %.c Makefile errtab.h
$(CC) -c $(CPPFLAGS) $(CFLAGS) $(LIBCFLAGS) $<
%.o: %.c Makefile errtab.h
$(CC) -c $(CPPFLAGS) $(CFLAGS) $(LIBCFLAGS) $<