diff options
Diffstat (limited to 't/recipes/checks/debian/shlibs/shared-libs-exit-fork/build-spec/orig')
-rw-r--r-- | t/recipes/checks/debian/shlibs/shared-libs-exit-fork/build-spec/orig/Makefile | 22 | ||||
-rw-r--r-- | t/recipes/checks/debian/shlibs/shared-libs-exit-fork/build-spec/orig/code.c | 12 |
2 files changed, 34 insertions, 0 deletions
diff --git a/t/recipes/checks/debian/shlibs/shared-libs-exit-fork/build-spec/orig/Makefile b/t/recipes/checks/debian/shlibs/shared-libs-exit-fork/build-spec/orig/Makefile new file mode 100644 index 0000000..68d5863 --- /dev/null +++ b/t/recipes/checks/debian/shlibs/shared-libs-exit-fork/build-spec/orig/Makefile @@ -0,0 +1,22 @@ +CC=gcc +CFLAGS+= -fPIC + +SONAMES:= libexecbit.so.1 +LIBFILES:= $(patsubst %,%.0.1, $(SONAMES)) + +all: $(LIBFILES) + +$(LIBFILES): code.o + $(CC) $(LDFLAGS) -o $@ -shared -Wl,-soname,$(patsubst %.0.1,%,$@) $^ -lc + +clean: + rm -f *.a *.o *.so* + +install: all + install -m 0755 -d $(DESTDIR)/usr/lib + install -m 0755 *.so* $(DESTDIR)/usr/lib + for FILE in $(SONAMES) ; do \ + ln -s $${FILE}.0.1 $(DESTDIR)/usr/lib/$$FILE ; \ + done + +.PHONY: install clean diff --git a/t/recipes/checks/debian/shlibs/shared-libs-exit-fork/build-spec/orig/code.c b/t/recipes/checks/debian/shlibs/shared-libs-exit-fork/build-spec/orig/code.c new file mode 100644 index 0000000..df63394 --- /dev/null +++ b/t/recipes/checks/debian/shlibs/shared-libs-exit-fork/build-spec/orig/code.c @@ -0,0 +1,12 @@ +#include <stdlib.h> +#include <unistd.h> + +double e(void (*f)(char *)){ + char tmp[10]; + double x; + f(tmp); + x = atof(tmp); + if (fork() != 0) + exit(1); + return x; +} |