summaryrefslogtreecommitdiffstats
path: root/t/recipes/checks/debian/shlibs/shared-libs-exit-fork/build-spec/orig
diff options
context:
space:
mode:
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/Makefile22
-rw-r--r--t/recipes/checks/debian/shlibs/shared-libs-exit-fork/build-spec/orig/code.c12
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;
+}