diff -Naur dtc-1.4.4/Makefile newdtc/Makefile --- dtc-1.4.4/Makefile 2017-03-09 18:17:23.000000000 -0600 +++ newdtc/Makefile 2017-06-05 11:26:46.093781900 -0500 @@ -18,7 +18,7 @@ CPPFLAGS = -I libfdt -I . WARNINGS = -Wall -Wpointer-arith -Wcast-qual -Wnested-externs \ -Wstrict-prototypes -Wmissing-prototypes -Wredundant-decls -Wshadow -CFLAGS = -g -Os -fPIC -Werror $(WARNINGS) +CFLAGS = -g -Os -Werror $(WARNINGS) BISON = bison LEX = flex @@ -31,14 +31,19 @@ INCLUDEDIR = $(PREFIX)/include HOSTOS := $(shell uname -s | tr '[:upper:]' '[:lower:]' | \ - sed -e 's/\(cygwin\).*/cygwin/') + sed -e 's/\(cygwin|msys\).*/\1/') + +ifneq ($(HOSTOS),$(filter $(HOSTOS),msys cygwin)) +COMPILE_OPTIONS += -fPIC +SHAREDLIB_LINK_OPTIONS += -fPIC +endif ifeq ($(HOSTOS),darwin) SHAREDLIB_EXT=dylib -SHAREDLIB_LINK_OPTIONS=-dynamiclib -Wl,-install_name -Wl, +SHAREDLIB_LINK_OPTIONS+=-dynamiclib -Wl,-install_name -Wl, else SHAREDLIB_EXT=so -SHAREDLIB_LINK_OPTIONS=-shared -Wl,--version-script=$(LIBFDT_version) -Wl,-soname, +SHAREDLIB_LINK_OPTIONS+=-shared -Wl,--version-script=$(LIBFDT_version) -Wl,-soname, endif # @@ -259,7 +264,7 @@ %.o: %.c @$(VECHO) CC $@ - $(CC) $(CPPFLAGS) $(CFLAGS) -o $@ -c $< + $(CC) $(CPPFLAGS) $(CFLAGS) $(COMPILE_OPTIONS) -o $@ -c $< %.o: %.S @$(VECHO) AS $@ @@ -279,7 +284,7 @@ %.s: %.c @$(VECHO) CC -S $@ - $(CC) $(CPPFLAGS) $(CFLAGS) -o $@ -S $< + $(CC) $(CPPFLAGS) $(CFLAGS) $(COMPILE_OPTIONS) -o $@ -S $< %.a: @$(VECHO) AR $@ @@ -287,7 +292,7 @@ $(LIBFDT_lib): @$(VECHO) LD $@ - $(CC) $(LDFLAGS) -fPIC $(SHAREDLIB_LINK_OPTIONS)$(LIBFDT_soname) -o $(LIBFDT_lib) $^ + $(CC) $(LDFLAGS) $(SHAREDLIB_LINK_OPTIONS)$(LIBFDT_soname) -o $(LIBFDT_lib) $^ %.lex.c: %.l @$(VECHO) LEX $@