Summary:
Instead of each test case knowing its depth relative to the test root,
we can just have dotest add the folder containing Makefile.rules to the
include path.
This was motivated by r370616, though I have been wanting to do this
ever since we moved to building tests out-of-tree.
The only manually modified files in this patch are lldbinline.py and
plugins/builder_base.py. The rest of the patch has been produced by this
shell command:
find . \( -name Makefile -o -name '*.mk' \) -exec sed --in-place -e '/LEVEL *:\?=/d' -e '1,2{/^$/d}' -e 's,\$(LEVEL)/,,' {} +
Reviewers: teemperor, aprantl, espindola, jfb
Subscribers: emaste, javed.absar, arichardson, christof, arphaman, lldb-commits
Differential Revision: https://reviews.llvm.org/D67083
llvm-svn: 370845
30 lines
1.2 KiB
Makefile
30 lines
1.2 KiB
Makefile
SRCDIR := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))/
|
|
CC ?= clang
|
|
|
|
ifeq "$(ARCH)" ""
|
|
ARCH = x86_64
|
|
endif
|
|
|
|
CFLAGS ?= -g -O0 -arch $(ARCH)
|
|
|
|
all: clean
|
|
$(CC) $(CFLAGS) -install_name $(shell pwd)/MyFramework.framework/Versions/A/MyFramework -dynamiclib -o MyFramework $(SRCDIR)/myframework.c
|
|
mkdir -p MyFramework.framework/Versions/A/Headers
|
|
mkdir -p MyFramework.framework/Versions/A/Resources
|
|
cp MyFramework MyFramework.framework/Versions/A
|
|
cp $(SRCDIR)/MyFramework.h MyFramework.framework/Versions/A/Headers
|
|
cp $(SRCDIR)/Info.plist MyFramework.framework/Versions/A/Resources
|
|
( cd MyFramework.framework/Versions ; ln -s A Current )
|
|
( cd MyFramework.framework/ ; ln -s Versions/Current/Headers . )
|
|
( cd MyFramework.framework/ ; ln -s Versions/Current/MyFramework . )
|
|
( cd MyFramework.framework/ ; ln -s Versions/Current/Resources . )
|
|
mv MyFramework.dSYM MyFramework.framework.dSYM
|
|
mkdir hide.app
|
|
rm -f MyFramework
|
|
tar cf - MyFramework.framework MyFramework.framework.dSYM | ( cd hide.app;tar xBpf -)
|
|
$(CC) $(CFLAGS) -o deep-bundle $(SRCDIR)/main.c -F. -framework MyFramework
|
|
|
|
|
|
clean:
|
|
rm -rf a.out a.out.dSYM deep-bundle deep-bundle.dSYM MyFramework.framework MyFramework.framework.dSYM MyFramework MyFramework.dSYM hide.app
|