Skip to content

Commit d1c843b

Browse files
committed
Add explicit FFI library build target for PIE
- Add valkey-glide/ffi/target/release/libglide_ffi.a as explicit dependency - Create dedicated build rule for FFI library - Ensure PIE builds the required Rust FFI library before linking - Fix 'no such file or directory: libglide_ffi.a' error Signed-off-by: James Duong <[email protected]>
1 parent dfc7233 commit d1c843b

File tree

1 file changed

+11
-2
lines changed

1 file changed

+11
-2
lines changed

Makefile.frag

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,10 @@ GEN_INCLUDE_DIR = include/glide
2020
GEN_SRC_DIR = src
2121

2222
# Force header generation before any compilation
23-
$(shared_objects_valkey_glide): include/glide_bindings.h cluster_scan_cursor_arginfo.h valkey_glide_arginfo.h valkey_glide_cluster_arginfo.h logger_arginfo.h src/client_constructor_mock_arginfo.h
23+
$(shared_objects_valkey_glide): include/glide_bindings.h cluster_scan_cursor_arginfo.h valkey_glide_arginfo.h valkey_glide_cluster_arginfo.h logger_arginfo.h src/client_constructor_mock_arginfo.h valkey-glide/ffi/target/release/libglide_ffi.a
2424

2525
# Backward compatibility alias
26-
build-modules-pre: include/glide_bindings.h cluster_scan_cursor_arginfo.h valkey_glide_arginfo.h valkey_glide_cluster_arginfo.h logger_arginfo.h src/client_constructor_mock_arginfo.h
26+
build-modules-pre: include/glide_bindings.h cluster_scan_cursor_arginfo.h valkey_glide_arginfo.h valkey_glide_cluster_arginfo.h logger_arginfo.h src/client_constructor_mock_arginfo.h valkey-glide/ffi/target/release/libglide_ffi.a
2727

2828
# Arginfo header dependencies
2929
cluster_scan_cursor_arginfo.h: cluster_scan_cursor.stub.php
@@ -41,6 +41,15 @@ logger_arginfo.h: logger.stub.php
4141
src/client_constructor_mock_arginfo.h: src/client_constructor_mock.stub.php
4242
@php -f $(top_srcdir)/build/gen_stub.php src/client_constructor_mock.stub.php || echo "client_constructor_mock arginfo generation failed"
4343

44+
valkey-glide/ffi/target/release/libglide_ffi.a:
45+
@echo "=== BUILDING FFI LIBRARY ==="
46+
@if [ -f .gitmodules ] && [ -d .git ]; then \
47+
git submodule update --init --recursive; \
48+
fi
49+
@if [ -d valkey-glide/ffi ]; then \
50+
cd valkey-glide/ffi && cargo build --release && cd ../..; \
51+
fi
52+
4453
include/glide_bindings.h:
4554
@echo "=== GENERATING HEADER FILE ==="
4655
@if [ -f .gitmodules ] && [ -d .git ]; then \

0 commit comments

Comments
 (0)