Skip to content

Commit 58465b7

Browse files
wcawijngaardsk0ekk0ek
authored andcommitted
Fix dependencies in Makefile.in
1 parent a7fbd5a commit 58465b7

File tree

2 files changed

+27
-26
lines changed

2 files changed

+27
-26
lines changed

CHANGELOG.md

+4
Original file line numberDiff line numberDiff line change
@@ -10,3 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1010
### Added
1111

1212
- Initial release.
13+
14+
### Fixed
15+
16+
- Fix makefile dependencies.

Makefile.in

+23-26
Original file line numberDiff line numberDiff line change
@@ -15,16 +15,17 @@ DEPFLAGS = -MT $@ -MMD -MP -MF $(@:.o=.d)
1515
srcdir = @srcdir@
1616
VPATH = @srcdir@
1717

18-
SOURCES = src/zone.c src/fallback/parser.c
19-
20-
OBJECTS = $(SOURCES:.c=.o)
21-
NO_OBJECTS =
22-
2318
WESTMERE_SOURCES = src/westmere/parser.c
24-
WESTMERE_OBJECTS = $(WESTMERE_SOURCES:.c=.o)
19+
WESTMERE_OBJECTS = $($(WESTMERE)_SOURCES:.c=.o)
2520

2621
HASWELL_SOURCES = src/haswell/parser.c
27-
HASWELL_OBJECTS = $(HASWELL_SOURCES:.c=.o)
22+
HASWELL_OBJECTS = $($(HASWELL)_SOURCES:.c=.o)
23+
24+
SOURCES = src/zone.c src/fallback/parser.c
25+
OBJECTS = $(SOURCES:.c=.o) \
26+
$($(WESTMERE)_SOURCES:.c=.o) \
27+
$($(HASWELL)_SOURCES:.c=.o)
28+
DEPENDS = $(OBJECTS:.o=.d)
2829

2930
EXPORT_HEADER = include/zone/export.h
3031

@@ -33,39 +34,35 @@ EXPORT_HEADER = include/zone/export.h
3334
all: libzone.a
3435

3536
clean:
37+
@rm -f .depend
3638
@rm -f libzone.a
37-
@rm -f $(OBJECTS) $(OBJECTS:.o=.d)
38-
@rm -f $(WESTMERE_OBJECTS) $(WESTMERE_OBJECTS:.o=.d)
39-
@rm -f $(HASWELL_OBJECTS) $(HASWELL_OBJECTS:.o=.d)
39+
@rm -f $(OBJECTS) $(WESTMERE_OBJECTS) $(HASWELL_OBJECTS)
4040

4141
distclean: clean
4242
@rm -f Makefile config.h config.log config.status
4343

4444
realclean: distclean
4545
@rm -rf autom4te*
4646

47-
libzone.a: $(EXPORT_HEADER) $(OBJECTS) $($(WESTMERE)_OBJECTS) $($(HASWELL)_OBJECTS)
48-
$(AR) rcs libzone.a $(OBJECTS) $($(WESTMERE)_OBJECTS) $($(HASWELL)_OBJECTS)
49-
47+
libzone.a: $(OBJECTS)
48+
$(AR) rcs libzone.a $(OBJECTS)
5049

5150
$(EXPORT_HEADER):
5251
@mkdir -p include/zone
5352
@echo "#define ZONE_EXPORT" > include/zone/export.h
5453

55-
$(OBJECTS): $(SOURCES) $(SOURCES:.c=.d)
56-
@mkdir -p src/fallback
57-
$(CC) $(DEPFLAGS) $(CPPFLAGS) $(CFLAGS) -o $@ -c $(srcdir)/$(@:.o=.c)
54+
$(WESTMERE_OBJECTS): CFLAGS += -march=westmere
55+
$(HASWELL_OBJECTS): CFLAGS += -march=haswell
5856

59-
$(WESTMERE_OBJECTS): $(WESTMERE_SOURCES) $(WESTMERE_SOURCES:.c=.d)
60-
@mkdir -p src/westmere
61-
$(CC) $(DEPFLAGS) $(CPPFLAGS) $(CFLAGS) -march=westmere -o $@ -c $(srcdir)/$(@:.o=.c)
57+
$(OBJECTS): .depend
58+
@mkdir -p src/fallback src/westmere src/haswell
59+
$(CC) $(DEPFLAGS) $(CPPFLAGS) $(CFLAGS) -o $@ -c $(srcdir)/$(@:.o=.c)
60+
@touch $@
6261

63-
$(HASWELL_OBJECTS): $(HASWELL_SOURCES) $(HASWELL_SOURCES:.c=.d)
64-
@mkdir -p src/haswell
65-
$(CC) $(DEPFLAGS) $(CPPFLAGS) $(CFLAGS) -march=haswell -o $@ -c $(srcdir)/$(@:.o=.c)
62+
.depend:
63+
@echo -n > $@
64+
@for x in $(OBJECTS:.o=); do echo $${x}.o: ${srcdir}/$${x}.c $${x}.d >> $@; done
6665

67-
DEPENDS := $(SOURCES:.c=.d) \
68-
$($(WESTMERE)_SOURCES:.c=.d) \
69-
$($(HASWELL)_SOURCES:.c=.d)
66+
-include .depend
7067
$(DEPENDS):
71-
-include $(wildcard $(DEPENDS))
68+
-include $(DEPENDS)

0 commit comments

Comments
 (0)