From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from smtp1.osuosl.org (smtp1.osuosl.org [140.211.166.138]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id EF95AC88E56 for ; Sun, 13 Sep 2026 09:05:03 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id A277680D60; Sun, 13 Sep 2026 09:05:03 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id pyJu1cs5G7cY; Sun, 13 Sep 2026 09:05:02 +0000 (UTC) ARC-Filter: OpenARC Filter v1.3.0 smtp1.osuosl.org 2A43A80D96 Authentication-Results: smtp1.osuosl.org; arc=fail smtp.remote-ip=140.211.166.142 ARC-Seal: i=2; d=osuosl.org; s=arc; a=rsa-sha256; cv=fail; t=1789290302; b=i8fZw/V7YwIivB70VZjd5XsrZbV5mNl5uvbESCui6/UIwYdzwXYC+Hjj9TgnMNtnZMEx 0r09Y8khUlzyM1wXXWRLxAhyxgkQXISKkW7SpFSBs5yuyiAtmGc9jQxy/VtfTbsAM11hZ J2CYFH5aTSQi8f9k6isqYaYi9F9YDKeBprM64DC2NG5xRQlbNSqVBgMZo7ZeOjLeitYuI SURdyuleq98ki+r6vuhawXel+03C8zgYXpDVCovgwfkqM+0jdnsc6SLiRcFHKx5sSAe+f 6k0HU9ZaONTf8P5EUoOOtdteSvf6NWGDjPWWwyJ6f1RczkMmP7j7DI22uJjS6C0zL4w== ARC-Message-Signature: i=2; d=osuosl.org; s=arc; a=rsa-sha256; c=relaxed/relaxed; t=1789290302; h=X-Comment:DKIM-Signature:X-Original-To:Delivered-To:Received: Received:X-Virus-Scanned:X-Spam-Flag:X-Spam-Score:X-Spam-Level: X-Spam-Status:Received:ARC-Filter:Received-SPF:Received: DKIM-Signature:Received:Received:From:To:Date:Message-ID:X-Mailer: MIME-Version:X-Spamd-Bar:Subject:X-BeenThere:X-Mailman-Version: Precedence:List-Id:List-Unsubscribe:List-Archive:List-Post:List-Help: List-Subscribe:Content-Type:Content-Transfer-Encoding:Errors-To: Sender; bh=G/XNs91aYml5vcp7L6fs/KcbJbAAvfQEnJCFeLryTjo=; b=c7SQZ4TSAZVZ3sVbRxcpXYsqqzd0xEqIT5RPjzpBY7GjN0PV6KclR0pKEwofj+/9REV/ vObbDjcgeDPy6jIGhK7zsf34XiOayCRTNRVzsTgQtSTS/8mM406BPXpKZ/vesmuzVB6pL G+Ps4Y02pRIrY4N6HpxRPMGf/wQ4EL48iOoqGBLqZPUbtBFYsu/XghNzePeQFAKmVZL+3 9uVCezQmJZSX1NXJgooQZTbnVV9LsswzFIkyH5chgB4LOWvG+8kU9cx8/OjaUuHZ5JUHR OYES5tE9h43W1FvjZLeIvaFsgcmuef3yGHh9RkwMrYS36lrXNBprsZlxa6s9sbmpRNg== ARC-Authentication-Results: i=2; smtp1.osuosl.org; dmarc=pass header.from=kuhls.net; dkim=pass header.d=kuhls.net header.i=@kuhls.net header.a=rsa-sha256 header.s=kas202605290044 header.b=UjVHY6YR; arc=fail smtp.remote-ip=140.211.166.142 X-Comment: SPF check N/A for local connections - client-ip=140.211.166.142; helo=lists1.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=buildroot.org; s=default; t=1789290302; bh=G/XNs91aYml5vcp7L6fs/KcbJbAAvfQEnJCFeLryTjo=; h=From:To:Date:Subject:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:List-Subscribe:From; b=kuFYkuV5YARgP/L9iqd4K856uIIPUcoIang0IlBhvtaU5Np4kNsNhHh9ZbcJE3ZK3 Rwv6CuRy3YHTkf8lf4yNDEY5I6XBpNXOpo5dGFctso5L6OLEhTo+ZlMoM82ii+AdkE KfrbcWRzip0zGePaeOr7ZU38jNNNcZ1z+iPGbeIjxiOYmo+8vRF5m79MPSHN3kBvcD 0J801m38XM0M74ubdGBYnBYYJFManOaoRsNKUyaWycvfA1GA9UApjJNHLJft5URg4h ZB9veZ6JtL7b6CY1JPAH6/9WIpKt8fM9+ombb0HlE9R7Tl1+Wk3i/drNrrm3HRjNOs RhboDUzYBK+XA== Received: from lists1.osuosl.org (lists1.osuosl.org [140.211.166.142]) by smtp1.osuosl.org (Postfix) with ESMTP id 2A43A80D96; Sun, 13 Sep 2026 09:05:02 +0000 (UTC) Received: from smtp1.osuosl.org (smtp1.osuosl.org [IPv6:2605:bc80:3010::138]) by lists1.osuosl.org (Postfix) with ESMTP id C2BDD23F for ; Sun, 13 Sep 2026 09:05:00 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id A7ED180D60 for ; Sun, 13 Sep 2026 09:05:00 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id xrsOq3CLVR2q for ; Sun, 13 Sep 2026 09:04:59 +0000 (UTC) ARC-Filter: OpenARC Filter v1.3.0 smtp1.osuosl.org BA17A80D0B Authentication-Results: smtp1.osuosl.org; arc=none smtp.remote-ip=85.13.140.57 ARC-Seal: i=1; d=osuosl.org; s=arc; a=rsa-sha256; cv=none; t=1789290299; b=QpNITpPLcrFxd2BCJsIlhkoG2FYnHFsR8fDNJ3vNFuWXVTb5Ne1n3Nk/RaK/zfeBLeDX Or1ZiWsKVJtRk6y8+9OAOXZta8Jn7eEwG2/uHHpcdEgqNfC3g1xUcQU6v3A4t5Wr0I3TZ S8ofDBbGwDZAWhzBpY818r5NgqPOT0ur0siPu8FMKBnSpDjrvlyMXlws4gPc8hr0XeA/T iR2AnOHtHmLqiSEq3mshpfvtz/c90h3sw09u1w7AxcDtpnrajhQGdfbfbcl5IJcMUMsyo SA52GPIRSfUKVSOSS08QZbGSSqIIpEPuF4ogUxXXxYkUamZeBSBRPmR/gLhHtqG8YsA== ARC-Message-Signature: i=1; d=osuosl.org; s=arc; a=rsa-sha256; c=relaxed/relaxed; t=1789290299; h=Received-SPF:DKIM-Signature:Received:Received:From:To:Cc:Subject: Date:Message-ID:X-Mailer:MIME-Version:Content-Transfer-Encoding: X-Spam-Score:X-Spamd-Bar; bh=uJwn2Z2ayBv0fXR7i8wXm1WpAycb6LSdBgeirs4tKhc=; b=I2+GtEq+OFI5yKg06gyE/uRN8w0hkOdk0JF4z35XM4l9CQGCoqxmQVImbAG4XT27xRw4 VddxJgoSrdqZ8ORb004MEmIyvnOcRm/IAQHAZp2Vlv7KYBDjKZh5Ow+fnSItcqpHJYlbX Y7DVMGzFUebi0bLPf0KbSSFbTL0kHYZuLv+5Rndati9Oq6yhCzvB8Tw0ITXQZbqd717U0 6XmDWqRCCHOpcZdooa0YF3930BsaSK2Xlrg8mMAQvnJ2QMxf7ca2QoZ7S+yrwIGDjrBv9 fEIR6ZNn4kbnVF3Wdx29BIReLtab4d4efzJUx0hXCfP15vQ5BROWDp6k0o6ilBUPrWQ== ARC-Authentication-Results: i=1; smtp1.osuosl.org; dmarc=pass header.from=kuhls.net; dkim=pass header.d=kuhls.net header.i=@kuhls.net header.a=rsa-sha256 header.s=kas202605290044 header.b=UjVHY6YR; arc=none smtp.remote-ip=85.13.140.57 Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=85.13.140.57; helo=dd20012.kasserver.com; envelope-from=bernd@kuhls.net; receiver= Authentication-Results: smtp1.osuosl.org; dmarc=pass (p=none dis=none) header.from=kuhls.net Authentication-Results: smtp1.osuosl.org; dkim=pass (2048-bit key, unprotected) header.d=kuhls.net header.i=@kuhls.net header.a=rsa-sha256 header.s=kas202605290044 header.b=UjVHY6YR Received: from dd20012.kasserver.com (dd20012.kasserver.com [85.13.140.57]) by smtp1.osuosl.org (Postfix) with ESMTPS id BA17A80D0B for ; Sun, 13 Sep 2026 09:04:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kuhls.net; s=kas202605290044; t=1789290293; bh=uJwn2Z2ayBv0fXR7i8wXm1WpAycb6LSdBgeirs4tKhc=; h=From:To:Cc:Subject:Date:From; b=UjVHY6YRtMPuzu6xkPNmymyYDm+X7iTZzTg69PxoG8/KwNz11q3kxqZ+AmH5cCwxB AAMCjcfxzLAIDHxz+Rf5VBFXTFtpzGhiw6XbLY6nNScZ4QvC26yDq9vzW+Gy2G9Dz0 sse0/hSV+4CkUhkHwYSXOitjrratNRRtIrmYHh1wM+42/aNkEoUrG9sB/QVdP7x2di MzMRUNZenjZf6Dspf8v5fdEwE2JSUkb3mP3w5tNVDy/meO31cJk2B+8VWxRSn9GgG2 jUGkmZcGDVlZAYsfz+QONNnQzJ5x5qdauNgKoc0Oc19Q9YYj20R6d9A0TgQs0bi+Mn 7n5M5HKIm6HDA== Received: from fli4l.lan.fli4l (p5b3a0da7.dip0.t-ipconnect.de [91.58.13.167]) by dd20012.kasserver.com (Postfix) with ESMTPSA id 643C7A4C3C7C; Sun, 13 Sep 2026 11:04:53 +0200 (CEST) Received: from bruckner.lan.fli4l ([192.168.1.1]:51702) by fli4l.lan.fli4l with esmtp (Exim 4.100) (envelope-from ) id 1x5g8l-000000001FQ-3UFP; Sun, 13 Sep 2026 09:04:48 +0000 From: Bernd Kuhls To: buildroot@buildroot.org Date: Sun, 13 Sep 2026 11:04:43 +0200 Message-ID: <20260913090444.5862-1-bernd@kuhls.net> X-Mailer: git-send-email 2.47.3 MIME-Version: 1.0 X-Spamd-Bar: -- Subject: [Buildroot] [PATCH 1/2] package/poco: convert to CMake package X-BeenThere: buildroot@buildroot.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: buildroot-bounces@buildroot.org Sender: "buildroot" From: Yegor Yefremov Currently when building with make, the cmake config files are not generated. This leads to problems when integrating the package in an application built with cmake. The CMake build system links the PDF component against the system libpng when POCO_UNBUNDLED is enabled, while the legacy make build system always used the bundled copy, so select libpng for the PDF component. POCO_NO_FPENVIRONMENT and POCO_NO_WSTRING are plain preprocessor defines rather than CMake options, so pass them through CMAKE_CXX_FLAGS. Poco is built as a set of shared libraries, so -latomic has to be passed via CMAKE_SHARED_LINKER_FLAGS as well. Disable File2Page along with PageCompiler, and tie the ActiveRecord compiler to the ActiveRecord component, to match what the legacy make build system omitted. This patch is based on this one: https://lists.buildroot.org/pipermail/buildroot/2026-April/801019.html Signed-off-by: Yegor Yefremov Assisted-by: Claude:claude-opus-5 Signed-off-by: Bernd Kuhls --- This patch was added unchanged from https://patchwork.buildroot.org/project/buildroot/patch/20260911103653.431685-1-yegorslists@gmail.com/ package/poco/Config.in | 1 + package/poco/poco.mk | 98 +++++++++++++++++------------------------- 2 files changed, 40 insertions(+), 59 deletions(-) diff --git a/package/poco/Config.in b/package/poco/Config.in index 4801b36a24..b0eeaa1dd8 100644 --- a/package/poco/Config.in +++ b/package/poco/Config.in @@ -94,6 +94,7 @@ config BR2_PACKAGE_POCO_NETSSL_OPENSSL config BR2_PACKAGE_POCO_PDF bool "PDF" + select BR2_PACKAGE_LIBPNG select BR2_PACKAGE_POCO_JSON select BR2_PACKAGE_POCO_UTIL select BR2_PACKAGE_POCO_XML diff --git a/package/poco/poco.mk b/package/poco/poco.mk index 40dcc1c502..63279d530e 100644 --- a/package/poco/poco.mk +++ b/package/poco/poco.mk @@ -22,80 +22,60 @@ POCO_DEPENDENCIES = \ $(if $(BR2_PACKAGE_POCO_DATA_SQLITE),sqlite) \ $(if $(BR2_PACKAGE_POCO_DATA_PGSQL),postgresql) \ $(if $(BR2_PACKAGE_POCO_NETSSL_OPENSSL),openssl) \ + $(if $(BR2_PACKAGE_POCO_PDF),libpng) \ $(if $(BR2_PACKAGE_POCO_XML),expat) -POCO_OMIT = \ - Data/ODBC \ - PageCompiler \ - $(if $(BR2_PACKAGE_POCO_ACTIVERECORD),,ActiveRecord) \ - $(if $(BR2_PACKAGE_POCO_CPP_PARSER),,CppParser) \ - $(if $(BR2_PACKAGE_POCO_CRYPTO),,Crypto) \ - $(if $(BR2_PACKAGE_POCO_DATA),,Data) \ - $(if $(BR2_PACKAGE_POCO_DATA_MYSQL),,Data/MySQL) \ - $(if $(BR2_PACKAGE_POCO_DATA_SQLITE),,Data/SQLite) \ - $(if $(BR2_PACKAGE_POCO_DATA_PGSQL),,Data/PostgreSQL) \ - $(if $(BR2_PACKAGE_POCO_JSON),,JSON) \ - $(if $(BR2_PACKAGE_POCO_JWT),,JWT) \ - $(if $(BR2_PACKAGE_POCO_MONGODB),,MongoDB) \ - $(if $(BR2_PACKAGE_POCO_NET),,Net) \ - $(if $(BR2_PACKAGE_POCO_NETSSL_OPENSSL),,NetSSL_OpenSSL) \ - $(if $(BR2_PACKAGE_POCO_PDF),,PDF) \ - $(if $(BR2_PACKAGE_POCO_PROMETHEUS),,Prometheus) \ - $(if $(BR2_PACKAGE_POCO_REDIS),,Redis) \ - $(if $(BR2_PACKAGE_POCO_UTIL),,Util) \ - $(if $(BR2_PACKAGE_POCO_XML),,XML) \ - $(if $(BR2_PACKAGE_POCO_ZIP),,Zip) +# PageCompiler and File2Page are code generators that are of no use on +# the target, and ODBC support is not wired up in Buildroot. +POCO_CONF_OPTS = \ + -DENABLE_DATA_ODBC=OFF \ + -DENABLE_PAGECOMPILER=OFF \ + -DENABLE_PAGECOMPILER_FILE2PAGE=OFF \ + -DENABLE_ACTIVERECORD=$(if $(BR2_PACKAGE_POCO_ACTIVERECORD),ON,OFF) \ + -DENABLE_ACTIVERECORD_COMPILER=$(if $(BR2_PACKAGE_POCO_ACTIVERECORD),ON,OFF) \ + -DENABLE_CPPPARSER=$(if $(BR2_PACKAGE_POCO_CPP_PARSER),ON,OFF) \ + -DENABLE_CRYPTO=$(if $(BR2_PACKAGE_POCO_CRYPTO),ON,OFF) \ + -DENABLE_DATA=$(if $(BR2_PACKAGE_POCO_DATA),ON,OFF) \ + -DENABLE_DATA_MYSQL=$(if $(BR2_PACKAGE_POCO_DATA_MYSQL),ON,OFF) \ + -DENABLE_DATA_SQLITE=$(if $(BR2_PACKAGE_POCO_DATA_SQLITE),ON,OFF) \ + -DENABLE_DATA_POSTGRESQL=$(if $(BR2_PACKAGE_POCO_DATA_PGSQL),ON,OFF) \ + -DENABLE_JSON=$(if $(BR2_PACKAGE_POCO_JSON),ON,OFF) \ + -DENABLE_JWT=$(if $(BR2_PACKAGE_POCO_JWT),ON,OFF) \ + -DENABLE_MONGODB=$(if $(BR2_PACKAGE_POCO_MONGODB),ON,OFF) \ + -DENABLE_NET=$(if $(BR2_PACKAGE_POCO_NET),ON,OFF) \ + -DENABLE_NETSSL=$(if $(BR2_PACKAGE_POCO_NETSSL_OPENSSL),ON,OFF) \ + -DENABLE_PDF=$(if $(BR2_PACKAGE_POCO_PDF),ON,OFF) \ + -DENABLE_PROMETHEUS=$(if $(BR2_PACKAGE_POCO_PROMETHEUS),ON,OFF) \ + -DENABLE_REDIS=$(if $(BR2_PACKAGE_POCO_REDIS),ON,OFF) \ + -DENABLE_UTIL=$(if $(BR2_PACKAGE_POCO_UTIL),ON,OFF) \ + -DENABLE_XML=$(if $(BR2_PACKAGE_POCO_XML),ON,OFF) \ + -DENABLE_ZIP=$(if $(BR2_PACKAGE_POCO_ZIP),ON,OFF) \ + -DPOCO_UNBUNDLED=ON + +# POCO_NO_FPENVIRONMENT and POCO_NO_WSTRING are plain preprocessor +# defines, not CMake options, so they have to be passed as compiler flags. +POCO_CXXFLAGS = $(TARGET_CXXFLAGS) ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y) -POCO_CONF_OPTS += --no-fpenvironment --no-wstring +POCO_CXXFLAGS += -DPOCO_NO_FPENVIRONMENT -DPOCO_NO_WSTRING endif # architectures missing some FE_* in their fenv.h ifeq ($(BR2_sh4a),y) -POCO_CONF_OPTS += --no-fpenvironment +POCO_CXXFLAGS += -DPOCO_NO_FPENVIRONMENT endif # disable fpenvironment for soft floating point configuration ifeq ($(BR2_SOFT_FLOAT),y) -POCO_CONF_OPTS += --no-fpenvironment +POCO_CXXFLAGS += -DPOCO_NO_FPENVIRONMENT endif -POCO_MAKE_TARGET = shared_release +POCO_CONF_OPTS += -DCMAKE_CXX_FLAGS="$(POCO_CXXFLAGS)" -POCO_LDFLAGS=$(TARGET_LDFLAGS) ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) -POCO_LDFLAGS += -latomic +POCO_CONF_OPTS += \ + -DCMAKE_EXE_LINKER_FLAGS=-latomic \ + -DCMAKE_SHARED_LINKER_FLAGS=-latomic endif -define POCO_CONFIGURE_CMDS - (cd $(@D); $(TARGET_MAKE_ENV) ./configure \ - --config=Linux \ - --prefix=/usr \ - --ldflags="$(POCO_LDFLAGS)" \ - --omit="$(POCO_OMIT)" \ - $(POCO_CONF_OPTS) \ - --unbundled \ - --no-tests \ - --no-samples) -endef - -define POCO_BUILD_CMDS - $(TARGET_MAKE_ENV) $(MAKE) POCO_TARGET_OSARCH=$(ARCH) CROSS_COMPILE=$(TARGET_CROSS) \ - POCO_MYSQL_INCLUDE=$(STAGING_DIR)/usr/include/mysql \ - POCO_MYSQL_LIB=$(STAGING_DIR)/usr/lib/mysql \ - POCO_PGSQL_INCLUDE=$(STAGING_DIR)/usr/include/postgresql \ - POCO_PGSQL_LIB=$(STAGING_DIR)/usr/lib/postgresql \ - DEFAULT_TARGET=$(POCO_MAKE_TARGET) -C $(@D) -endef - -define POCO_INSTALL_STAGING_CMDS - $(TARGET_MAKE_ENV) $(MAKE) DESTDIR=$(STAGING_DIR) POCO_TARGET_OSARCH=$(ARCH) \ - DEFAULT_TARGET=$(POCO_MAKE_TARGET) install -C $(@D) -endef - -define POCO_INSTALL_TARGET_CMDS - $(TARGET_MAKE_ENV) $(MAKE) DESTDIR=$(TARGET_DIR) POCO_TARGET_OSARCH=$(ARCH) \ - DEFAULT_TARGET=$(POCO_MAKE_TARGET) install -C $(@D) -endef - -$(eval $(generic-package)) +$(eval $(cmake-package)) -- 2.47.3 _______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot