Read about our upcoming Code of Conduct on this issue

Commit b9bec9de authored by alex@thinkpad's avatar alex@thinkpad
Browse files

backtrace: moved sources to src/ to avoid symlinking (cross-platform issues)

and let the install script figure it out

--HG--
branch : qemu
parent 2968edbcd4f1
......@@ -50,7 +50,8 @@ chmod +x tests/*.sh
# apply our patch
cd ${QEMU_NAME}
mkdir -p hw/eos
cp -vr ../../$ML/contrib/qemu/eos/* hw/eos
cp -vr ../../$ML/contrib/qemu/eos/* hw/eos/
cp -vr ../../$ML/src/backtrace.[ch] hw/eos/dbi/
patch -N -p1 < ../../$ML/contrib/qemu/$QEMU_NAME.patch
cd ..
......
......@@ -248,28 +248,24 @@ clean::
$(TOP_DIR)/tcc/libtccx.o: FORCE
+$(MAKE) -C $(TOP_DIR)/tcc
QEMU_DBI_DIR=$(TOP_DIR)/contrib/qemu/eos/dbi
QEMU_INSTALLED_DBI_DIR=$(TOP_DIR)/../qemu/qemu-2.5.0/hw/eos/dbi
# backtrace.[ch] are shared with QEMU - make symlinks
# will this work on Windows?
$(SRC_DIR)/backtrace.c:: $(SRC_DIR)/backtrace.h
# backtrace.[ch] are shared with QEMU
# the install script will copy them from src/
# but I'd still like to edit them from one place and have the changes both in QEMU and ML
# symlinks caused issues on Windows and apparently also on Mac (?!) so let's avoid them for now
$(SRC_DIR)/backtrace.c $(SRC_DIR)/backtrace.h:: $(SRC_DIR)/backtrace.%: $(QEMU_DBI_DIR)/backtrace.%
$(call build,LN,ln -sfr $^ $@)
# where QEMU is installed (for emulating ML)
QEMU_INSTALLED_DBI_DIR=$(TOP_DIR)/../qemu/qemu-2.5.0/hw/eos/dbi
# copy from QEMU (outside ML dir) if they were edited there
# optional dependency, only if QEMU is installed "near" ML dir (the install script does that)
# https://stackoverflow.com/questions/8175653/marking-a-makefile-dependency-as-optional-or-otherwise-unimportant
# https://stackoverflow.com/questions/34105205/how-can-i-make-a-pattern-rule-dependency-optional-in-a-makefile
.SECONDEXPANSION:
$(QEMU_DBI_DIR)/backtrace.c $(QEMU_DBI_DIR)/backtrace.h: $(QEMU_DBI_DIR)/backtrace.%: $$(wildcard $(QEMU_INSTALLED_DBI_DIR)/backtrace.%)
$(SRC_DIR)/backtrace.c $(SRC_DIR)/backtrace.h:: $(SRC_DIR)/backtrace.%: $$(wildcard $(QEMU_INSTALLED_DBI_DIR)/backtrace.%)
$(call build,CP,$(CP) $^ $@)
# remove the symlinks on make clean
clean::
$(call rm_files, $(SRC_DIR)/backtrace.c $(SRC_DIR)/backtrace.h)
# make sure we have the header when building backtrace.c for the first time
$(SRC_DIR)/backtrace.c:: $(SRC_DIR)/backtrace.h
# Extract the stdio files that we need
DIET_OBJ = \
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment