summaryrefslogtreecommitdiffstats
path: root/ffi/examples
diff options
context:
space:
mode:
authorJustus Winter <justus@sequoia-pgp.org>2019-01-29 17:39:58 +0100
committerJustus Winter <justus@sequoia-pgp.org>2019-01-29 17:41:17 +0100
commitc251842e350f5b130f689910461ab85fbe556e7b (patch)
treebfc9eb5db9c9d686ba53052ca2b932ea54ceaf05 /ffi/examples
parentfc514ce424f71f0146f70727a548ec8009a06f1b (diff)
openpgp-ffi: Build examples below CARGO_TARGET_DIR.
- Addresses #172.
Diffstat (limited to 'ffi/examples')
-rw-r--r--ffi/examples/.gitignore2
-rw-r--r--ffi/examples/Makefile12
2 files changed, 11 insertions, 3 deletions
diff --git a/ffi/examples/.gitignore b/ffi/examples/.gitignore
deleted file mode 100644
index e72a3164..00000000
--- a/ffi/examples/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-configure
-keyserver
diff --git a/ffi/examples/Makefile b/ffi/examples/Makefile
index a8d2baa1..bce777b2 100644
--- a/ffi/examples/Makefile
+++ b/ffi/examples/Makefile
@@ -5,13 +5,23 @@ CARGO_TARGET_DIR ?= $(shell pwd)/../../target
# We currently only support absolute paths.
CARGO_TARGET_DIR := $(abspath $(CARGO_TARGET_DIR))
-TARGETS = keyserver configure
+# We are producing binaries here.
+EXAMPLE_TARGET_DIR ?= $(CARGO_TARGET_DIR)/debug/c-examples/ffi
+
+EXAMPLES = keyserver configure
CFLAGS = -I../include -I../../openpgp-ffi/include -O0 -g -Wall -Werror
LDFLAGS = -L$(CARGO_TARGET_DIR)/debug -lsequoia_ffi
+# Prefix our target directory.
+TARGETS := $(foreach example,$(EXAMPLES),$(EXAMPLE_TARGET_DIR)/$(example))
+
all: $(TARGETS)
clean:
rm -f $(TARGETS)
$(TARGETS): ../include/sequoia.h
+
+$(EXAMPLE_TARGET_DIR)/%: %.c
+ mkdir -p $(EXAMPLE_TARGET_DIR)
+ $(CC) $(CFLAGS) $(LDFLAGS) -o "$@" "$<"