1
0
Fork 0
mirror of https://github.com/mautrix/signal.git synced 2026-05-15 05:36:53 -04:00
mautrix-signal/Makefile

32 lines
863 B
Makefile
Raw Permalink Normal View History

.PHONY: all build_rust copy_library build_go clean
all: build_rust copy_library build_go
LIBRARY_NAME=libsignal-ffi
LIBRARY_FILENAME=libsignal_ffi.a
RUST_DIR=pkg/libsignalgo/libsignal
GO_BINARY=mautrix-signal
ifneq ($(DBG),1)
RUST_PROFILE=release
RUST_TARGET_SUBDIR=release
GO_GCFLAGS=
else
RUST_PROFILE=dev
RUST_TARGET_SUBDIR=debug
GO_GCFLAGS=all=-N -l
endif
build_rust:
cd $(RUST_DIR) && cargo build -p $(LIBRARY_NAME) --profile=$(RUST_PROFILE)
copy_library:
cp $(RUST_DIR)/target/$(RUST_TARGET_SUBDIR)/$(LIBRARY_FILENAME) .
build_go:
LIBRARY_PATH="$${LIBRARY_PATH}:." go build -gcflags "$(GO_GCFLAGS)" -ldflags "-X main.Tag=$$(git describe --exact-match --tags 2>/dev/null) -X main.Commit=$$(git rev-parse HEAD) -X 'main.BuildTime=`date '+%b %_d %Y, %H:%M:%S'`'"
clean:
rm -f ./$(LIBRARY_FILENAME)
cd $(RUST_DIR) && cargo clean
rm -f $(GO_BINARY)