core/eiwd/eiwd-hell.patch
$ cat eiwd-hell.patch
--- a/Makefile.am
+++ b/Makefile.am
@@ -238,7 +238,7 @@ src_iwd_SOURCES = src/main.c linux/nl80211.h src/iwd.h \
 					src/storage.h src/storage.c \
 					src/network.h src/network.c \
 					src/wsc.h src/wsc.c \
-					src/backtrace.h src/backtrace.c \
+					src/backtrace.h \
 					src/knownnetworks.h \
 					src/knownnetworks.c \
 					src/rfkill.h src/rfkill.c \
@@ -737,23 +737,25 @@
 BUILT_SOURCES = $(ell_built_sources) src/builtin.h
 
 ell/shared: Makefile
-	$(AM_V_at)$(MKDIR_P) ell
+	$(AM_V_at)test -d ell || test -L ell || $(MKDIR_P) ell
 	$(AM_V_GEN)for f in $(ell_shared) ; do \
+		base=$${f#ell/} ; \
 		if [ ! -f $$f ] ; then \
-			$(LN_S) -f $(abs_srcdir)/../ell/$$f ; \
+			ln -sf ../ell/ell/$$base $$f ; \
 		fi \
 	done > $@
 
 ell/internal: Makefile
-	$(AM_V_at)$(MKDIR_P) ell
+	$(AM_V_at)test -d ell || test -L ell || $(MKDIR_P) ell
 	$(AM_V_GEN)for f in $(ell_headers) $(ell_sources) ; do \
+		base=$${f#ell/} ; \
 		if [ ! -f $$f ] ; then \
-			$(LN_S) -f $(abs_srcdir)/../ell/$$f ; \
+			ln -sf ../ell/ell/$$base $$f ; \
 		fi \
 	done > $@
 
 ell/ell.h: Makefile
-	$(AM_V_at)$(MKDIR_P) ell
+	$(AM_V_at)test -d ell || test -L ell || $(MKDIR_P) ell
 	$(AM_V_at)echo -n > $@
 	$(AM_V_GEN)for f in $(ell_headers) ; do \
 		echo "#include <$$f>" >> $@ ; \