Skip to content

Commit f49971e

Browse files
authored
Using DuckDB extensions.
Using DuckDB extensions.
2 parents a4b48d4 + 1513b07 commit f49971e

1 file changed

Lines changed: 20 additions & 12 deletions

File tree

tools/make_aggregation.py

Lines changed: 20 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -37,20 +37,28 @@ def GetDuckdbHeaders():
3737
path = os.environ.get("DUCKDB_HEADERS")
3838
if path:
3939
return path
40-
print("Error: DUCKDB_HEADERS environment variable is not set.")
41-
print()
42-
print("To install DuckDB C headers, run:")
43-
print()
44-
print(" mkdir -p ~/.logica/duckdb_headers && cd ~/.logica/duckdb_headers \\")
45-
print(" && curl -LO https://github.com/duckdb/duckdb/releases/download/"
46-
"v1.3.1/libduckdb-osx-universal.zip \\")
47-
print(" && unzip -o libduckdb-osx-universal.zip && rm -f libduckdb-osx-universal.zip \\")
48-
print(" && curl -LO https://raw.githubusercontent.com/duckdb/duckdb/"
49-
"v1.3.1/src/include/duckdb_extension.h")
40+
default_path = os.path.expanduser("~/.logica/duckdb_headers")
41+
if os.path.exists(os.path.join(default_path, "duckdb_extension.h")):
42+
return default_path
43+
import duckdb
44+
ver = duckdb.__version__
45+
plat = _detect_platform()
46+
if "osx" in plat:
47+
lib_zip = f"libduckdb-osx-universal.zip"
48+
elif "linux" in plat and "aarch64" in plat:
49+
lib_zip = f"libduckdb-linux-aarch64.zip"
50+
else:
51+
lib_zip = f"libduckdb-linux-amd64.zip"
52+
print("Error: DuckDB C headers not found.")
5053
print()
51-
print("Then add to your shell profile:")
54+
print("To install, run:")
5255
print()
53-
print(" export DUCKDB_HEADERS=~/.logica/duckdb_headers")
56+
print(f" mkdir -p ~/.logica/duckdb_headers && cd ~/.logica/duckdb_headers \\")
57+
print(f" && curl -LO https://github.com/duckdb/duckdb/releases/download/"
58+
f"v{ver}/{lib_zip} \\")
59+
print(f" && unzip -o {lib_zip} && rm -f {lib_zip} \\")
60+
print(f" && curl -LO https://raw.githubusercontent.com/duckdb/duckdb/"
61+
f"v{ver}/src/include/duckdb_extension.h")
5462
sys.exit(1)
5563

5664

0 commit comments

Comments
 (0)