From af0f2970a4092ef273da8845a10c35a5a627a3f0 Mon Sep 17 00:00:00 2001 From: "Michael J. Sullivan" Date: Wed, 9 Oct 2024 21:14:10 -0700 Subject: [PATCH] Switch back to using edgedb's exts.mk --- Makefile | 7 ++--- exts.mk | 86 -------------------------------------------------------- 2 files changed, 3 insertions(+), 90 deletions(-) delete mode 100644 exts.mk diff --git a/Makefile b/Makefile index 46fa9a2..1ae9317 100644 --- a/Makefile +++ b/Makefile @@ -5,10 +5,9 @@ EXTRA_FILES := LICENSE LICENSE-postgis.txt NOTICE CUSTOM_SQL_BUILD := 1 ### Boilerplate -# PYTHON := python3 -# EDB := $(PYTHON) -m edb.tools $(EDBFLAGS) -# MKS := $(shell $(EDB) config --make-include) -MKS := exts.mk +PYTHON := python3 +EDB := $(PYTHON) -m edb.tools $(EDBFLAGS) +MKS := $(shell $(EDB) config --make-include) include $(MKS) ### End Boilerplate diff --git a/exts.mk b/exts.mk deleted file mode 100644 index dc0a066..0000000 --- a/exts.mk +++ /dev/null @@ -1,86 +0,0 @@ -PYTHON ?= python3 -EXT_NAME := $(shell $(PYTHON) -c 'import tomllib; f = tomllib.load(open("MANIFEST.toml", "rb")); print(f["name"])') -EXT_VERSION := $(shell $(PYTHON) -c 'import tomllib; f = tomllib.load(open("MANIFEST.toml", "rb")); print(f["version"])') -EDGEQL_SRCS := $(shell $(PYTHON) -c 'import tomllib; f = tomllib.load(open("MANIFEST.toml", "rb")); print(" ".join(f["files"]))') -EXT_FNAME := $(EXT_NAME)--$(EXT_VERSION) - -.DEFAULT_GOAL := build -.PHONY: build clean install zip - -# - -WITH_SQL ?= yes -WITH_EDGEQL ?= yes - -rwildcard=$(foreach d,$(wildcard $(1:=/*)),$(call rwildcard,$d,$2) $(filter $(subst *,%,$2),$d)) -SQL_DEPS := $(call rwildcard,$(SQL_MODULE),*.c *.h *.sql *.control Makefile) - -SQL_BUILD_STAMP := build/.sql_build_stamp -SQL_INSTALL_STAMP := build/.sql_install_stamp -EDGEQL_INSTALL_STAMP := build/.edgeql_install_stamp -INSTALLABLES := MANIFEST.toml - -ifeq ($(strip $(WITH_SQL)),yes) - -INSTALLABLES += lib/ share/ - -ifeq ($(origin PG_CONFIG), undefined) -EDB := $(PYTHON) -m edb.tools $(EDBFLAGS) -PG_CONFIG := $(shell $(EDB) config --pg-config) - -ifeq ($(PG_CONFIG),) -$(error cannot find pg_config, please set PG_CONFIG explicitly) -endif -endif - -ifneq ($(strip $(CUSTOM_SQL_BUILD)),1) - -$(SQL_BUILD_STAMP): MANIFEST.toml $(SQL_DEPS) $(EXTRA_DEPS) Makefile - env PG_CONFIG=$(PG_CONFIG) $(MAKE) -C $(SQL_MODULE) DESTDIR=$(PWD)/build/out install - touch $(SQL_BUILD_STAMP) -endif - -$(SQL_INSTALL_STAMP): $(SQL_BUILD_STAMP) - rm -rf build/$(EXT_FNAME)/lib - mkdir -p build/$(EXT_FNAME)/lib - rm -rf build/$(EXT_FNAME)/share/postgresql - mkdir -p build/$(EXT_FNAME)/share/postgresql - cp -r $(PWD)/build/out/$(shell $(PG_CONFIG) --pkglibdir) build/$(EXT_FNAME)/lib/postgresql - cp -r $(PWD)/build/out/$(shell $(PG_CONFIG) --sharedir)/contrib build/$(EXT_FNAME)/share/postgresql/contrib - cp -r $(PWD)/build/out/$(shell $(PG_CONFIG) --sharedir)/extension build/$(EXT_FNAME)/share/postgresql/extension - touch $(SQL_INSTALL_STAMP) -else -$(SQL_INSTALL_STAMP): - mkdir -p build - touch $(SQL_INSTALL_STAMP) -endif -ifeq ($(strip $(WITH_EDGEQL)),yes) -INSTALLABLES += $(EDGEQL_SRCS) $(EXTRA_FILES) - -$(EDGEQL_INSTALL_STAMP): MANIFEST.toml $(EDGEQL_SRCS) $(EXTRA_FILES) Makefile - mkdir -p build/$(EXT_FNAME) - cp $(EDGEQL_SRCS) build/$(EXT_FNAME) - if [ -n "$(EXTRA_FILES)" ]; then cp $(EXTRA_FILES) build/$(EXT_FNAME); fi - cp MANIFEST.toml build/$(EXT_FNAME) - touch $(EDGEQL_INSTALL_STAMP) -else -EDGEQL: - mkdir -p build - touch $(EDGEQL_INSTALL_STAMP) -endif - -build: $(EDGEQL_INSTALL_STAMP) $(SQL_INSTALL_STAMP) - -install: build - if [ -z "$(DESTDIR)" ]; then echo "DESTDIR must be set" >&2; exit 1; fi - mkdir -p "$(DESTDIR)" - cd "build/$(EXT_FNAME)" && cp -r $(INSTALLABLES) "${DESTDIR}/" - -$(EXT_FNAME).zip: build - rm -f $(EXT_FNAME).zip - cd build/$(EXT_FNAME)/ && zip -r ../../$(EXT_FNAME).zip * - -zip: $(EXT_FNAME).zip - -clean: - rm -rf build $(EXT_FNAME).zip