Browse Source

fl_wrapper: Introduced `make test` and `make gdb` running fl_wrapper_test.c directly or inside gdb

user/amery/test/random-cleanup
Alejandro Mery 15 years ago
committed by Alejandro Mery
parent
commit
6ee76a1fae
2 changed files with 33 additions and 16 deletions
  1. +20
    -3
      src/tools-source/fl_wrapper/Makefile
  2. +13
    -13
      src/tools-source/fl_wrapper/fl_wrapper_test.sh

+ 20
- 3
src/tools-source/fl_wrapper/Makefile

@ -13,10 +13,15 @@
# --- SDE-COPYRIGHT-NOTE-END ---
CC=gcc
CFLAGS=-Wall -Wextra -O2 -ldl -shared -fPIC
CFLAGS=-Wall -Wextra
LIB_LDFLAGS=-ldl -shared -fPIC
BIN_LDFLAGS=
ifeq ($(DEBUG),yes)
CFLAGS += -DDEBUG=1
CFLAGS += -g -O0
else
CFLAGS += -O2
endif
ifneq ($(BASE),)
CFLAGS += '-DFLWRAPPER_BASEDIR="$(BASE)"'
@ -25,20 +30,32 @@ ifneq ($(LIBC),)
CFLAGS += '-DFLWRAPPER_LIBC="$(LIBC)"'
endif
FLTEST=fltest
LIB=fl_wrapper.so
GENERATED=fl_wrapper_generated.c
HEADER=fl_wrapper.h
SRCS=fl_wrapper.c fl_wrapper_execl.c $(GENERATED)
.PHONY: clean
.PHONY: clean test gdb
$(LIB): $(SRCS) $(HEADER)
$(CC) $(CFLAGS) -o "$@.tmp" $<
$(CC) $(CFLAGS) $(LIB_LDFLAGS) -o "$@.tmp" $<
mv "$@.tmp" "$@"
$(FLTEST): fl_wrapper_test.c
$(CC) $(CFLAGS) $(BIN_LDFLAGS) -o $@ $<
test: $(LIB) $(FLTEST)
sh ./fl_wrapper_test.sh
gdb: $(LIB) $(FLTEST)
sh ./fl_wrapper_test.sh gdb
clean:
@rm -vf $(LIB) *.o *.tmp $(GENERATED) $(HEADER)
@rm -vf fltest* rlog.txt wlog.txt
$(GENERATED): $(GENERATED).sh $(wildcard tpl_*.c)
$(HEADER): $(HEADER).sh $(GENERATED).sh

+ 13
- 13
src/tools-source/fl_wrapper/fl_wrapper_test.sh

@ -3,9 +3,7 @@
# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
#
# Filename: src/tools-source/fl_wrapper_test.sh
# Copyright (C) 2006 The OpenSDE Project
# Copyright (C) 2004 - 2006 The T2 SDE Project
# Copyright (C) 1998 - 2003 Clifford Wolf
# Copyright (C) 2010 The OpenSDE Project
#
# More information can be found in the files COPYING and README.
#
@ -15,19 +13,21 @@
# GNU General Public License can be found in the file COPYING.
# --- SDE-COPYRIGHT-NOTE-END ---
for x in exec{l,v}{,p,e} ; do
touch fltest_$x ; done
bash src/tools-source/fl_wrapper.c.sh > fl_wrapper.c
gcc -O2 -shared -fPIC -Wall -ldl fl_wrapper.c -o fl_wrapper.so
echo -n > rlog.txt
echo -n > wlog.txt
if [ "$1" = "gdb" ]; then
shift
cat > fltest.gdb <<-EOT
set env LD_PRELOAD ./fl_wrapper.so
set env FLWRAPPER_RLOG rlog.txt
set env FLWRAPPER_WLOG wlog.txt
EOT
exec gdb -x fltest.gdb ./fltest
fi
export FLWRAPPER_RLOG=rlog.txt
export FLWRAPPER_WLOG=wlog.txt
gcc src/tools-source/fl_wrapper_test.c -o fltest_bin
LD_PRELOAD=./fl_wrapper.so ./fltest_bin
#rm fltest_* fl_wrapper.so
LD_PRELOAD=./fl_wrapper.so ./fltest

Loading…
Cancel
Save