31 lines
857 B
Makefile
31 lines
857 B
Makefile
|
|
all: libshared_object.so executable.exe
|
|
|
|
clean:
|
|
rm *.o *.so *.exe
|
|
|
|
libshared_object.so : shared_object.o
|
|
g++ -fPIC --shared -O2 $< -o $@
|
|
strip $@
|
|
|
|
shared_object.o : shared_object.cpp interface.h
|
|
g++ -fPIC -O2 $< -c -o $@
|
|
objcopy --redefine-sym _ZN17MyVerySecretClass14secret_method1Ev=m1 \
|
|
--redefine-sym _ZN17MyVerySecretClass14secret_method2Ev=m2 \
|
|
--redefine-sym _ZN17MyVerySecretClass14secret_method3Ev=m3 $@
|
|
|
|
|
|
executable.exe : executable.o libshared_object.so
|
|
g++ -O2 -lshared_object -L. $< -o $@
|
|
strip $@
|
|
|
|
executable.o : executable.cpp interface.h
|
|
g++ -O2 -lshared_object -L. $< -c -o $@
|
|
objcopy --redefine-sym _ZN17MyVerySecretClass14secret_method1Ev=m1 \
|
|
--redefine-sym _ZN17MyVerySecretClass14secret_method2Ev=m2 \
|
|
--redefine-sym _ZN17MyVerySecretClass14secret_method3Ev=m3 $@
|
|
|
|
run: all
|
|
LD_LIBRARY_PATH=. ./executable.exe
|
|
|