Index: databases/postgresql13-server/Makefile =================================================================== --- databases/postgresql13-server/Makefile (révision 561489) +++ databases/postgresql13-server/Makefile (copie de travail) @@ -234,39 +234,44 @@ # For testing files in FILESDIR .include -.if ${PORT_OPTIONS:MLLVM} -CONFIGURE_ARGS+= --with-llvm -BUILD_DEPENDS+= llvm${PG_LLVM_VERSION}>0:devel/llvm${PG_LLVM_VERSION} -BUILD_DEPENDS+= llvm-config${PG_LLVM_VERSION}:devel/llvm${PG_LLVM_VERSION} -RUN_DEPENDS+= llvm-config${PG_LLVM_VERSION}:devel/llvm${PG_LLVM_VERSION} -CONFIGURE_ENV+= LLVM_CONFIG=${LOCALBASE}/bin/llvm-config${PG_LLVM_VERSION} +.if ${PORT_OPTIONS:MLLVM} && defined(SERVER_ONLY) && ${DISTVERSION:C/([0-9]*).*/\1/} >= 11 + +# - Use default LLVM. +# - Use a version lower or equal to MAX_ALLOWED_MAJOR (compatibility). +MAX_ALLOWED_MAJOR:=11 # LLVM versions < 10 not supported in this var + +.if ${LLVM_DEFAULT} < 60 +LLVM_DEFAULT_MAJOR:=${LLVM_DEFAULT} +.else +LLVM_DEFAULT_MAJOR:=${LLVM_DEFAULT:C/^([0-9]).*/\1/} .endif -# sync LLVM to the preferred compiler if possible -# or else use a lower version compiler that is compatible -.if ${COMPILER_VERSION} > ${LLVM_DEFAULT} -# Highest LLVM version in ports: -. if ${COMPILER_VERSION} <= 11 -PG_LLVM_VERSION=${COMPILER_VERSION} -PG_COMPILER_VERSION=${COMPILER_VERSION} -. else -PG_LLVM_VERSION=11 -PG_COMPILER_VERSION=11 -. endif +.if ${LLVM_DEFAULT_MAJOR} > ${MAX_ALLOWED_MAJOR} +CHOSEN_MAJOR:=${MAX_ALLOWED_MAJOR} .else -PG_COMPILER_VERSION=${COMPILER_VERSION} -PG_LLVM_VERSION=${LLVM_DEFAULT} +CHOSEN_MAJOR:=${LLVM_DEFAULT_MAJOR} .endif -.if ${DISTVERSION:C/([0-9]*).*/\1/} >= 11 -. if defined(SERVER_ONLY) && ${PORT_OPTIONS:MLLVM} -INSTALL_DIRS+= src/backend/jit/llvm -. if ${COMPILER_VERSION} != ${PG_COMPILER_VERSION} -LLVM_CONFIGURE_ARGS?= CC=${LOCALBASE}/bin/clang${PG_COMPILER_VERSION} -. endif -. endif +.if ${CHOSEN_MAJOR} == ${LLVM_DEFAULT_MAJOR} +PG_LLVM_VERSION?=${LLVM_DEFAULT} +.else +# Forcing from max allowed version +PG_LLVM_VERSION?==${MAX_ALLOWED_MAJOR} .endif +CONFIGURE_ARGS+= --with-llvm + +BUILD_DEPENDS+= llvm${PG_LLVM_VERSION}>0:devel/llvm${PG_LLVM_VERSION} +BUILD_DEPENDS+= llvm-config${PG_LLVM_VERSION}:devel/llvm${PG_LLVM_VERSION} +RUN_DEPENDS+= llvm-config${PG_LLVM_VERSION}:devel/llvm${PG_LLVM_VERSION} +CONFIGURE_ENV+= LLVM_CONFIG=${LOCALBASE}/bin/llvm-config${PG_LLVM_VERSION} \ + CC=${LOCALBASE}/bin/clang${PG_LLVM_VERSION} \ + CXX=${LOCALBASE}/bin/clang++${PG_LLVM_VERSION} \ + CLANG=${LOCALBASE}/bin/clang${PG_LLVM_VERSION} +INSTALL_DIRS+= src/backend/jit/llvm + +.endif # LLVM && SERVER_ONLY + .if defined(SERVER_ONLY) pre-build: @${SH} ${PKGINSTALL} ${PORTNAME} PRE-INSTALL