Current section
Files
Jump to
Current section
Files
Makefile
BUILD_ROOT=_build/tdlib
BUILD_DIRECTORY=$(BUILD_ROOT)/rel
BUILD_ARTIFACT=$(BUILD_DIRECTORY)/bin/tdlib_json_cli
PRIV_DIR=priv
BIN_TARGET=$(PRIV_DIR)/tdlib-json-cli
JOBS=2
VERBOSE=0
TDLIB_SRC=priv/tdlib_v1.1.1.tar.gz
TDLIBJSONCLI_SRC=priv/tdlib-json-cli_v1.1.1+1.tar.gz
all:
if [ ! -f $(BIN_TARGET) ]; then \
make extract build import; \
fi
clean:
rm -f $(BIN_TARGET)
rm -r $(BUILD_ROOT)
extract:
mkdir -p $(BUILD_ROOT); \
tar xvf $(TDLIBJSONCLI_SRC) --directory $(BUILD_ROOT) --strip-components 1; \
tar xvf $(TDLIB_SRC) --directory $(BUILD_ROOT)/td --strip-components 1; \
patch $(BUILD_ROOT)/td/CMakeLists.txt $(PRIV_DIR)/disable-lto.patch
build:
mkdir $(BUILD_DIRECTORY); \
cd $(BUILD_DIRECTORY); \
cmake -DCMAKE_BUILD_TYPE=Release ..; \
make -j$(JOBS) VERBOSE=$(VERBOSE)
import:
cp $(BUILD_ARTIFACT) $(BIN_TARGET)
cp $(BUILD_ROOT)/types.json $(PRIV_DIR)/types.json