Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1t1jwt-0007wt-Hc for pgsql-hackers@arkaria.postgresql.org; Fri, 18 Oct 2024 10:11:11 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1t1jwq-001wLg-OS for pgsql-hackers@arkaria.postgresql.org; Fri, 18 Oct 2024 10:11:09 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1t1jwq-001wLX-EX for pgsql-hackers@lists.postgresql.org; Fri, 18 Oct 2024 10:11:08 +0000 Received: from fout-a5-smtp.messagingengine.com ([103.168.172.148]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1t1jwl-001h0h-H2 for pgsql-hackers@postgresql.org; Fri, 18 Oct 2024 10:11:08 +0000 Received: from phl-compute-01.internal (phl-compute-01.phl.internal [10.202.2.41]) by mailfout.phl.internal (Postfix) with ESMTP id 412AA13803A2 for ; Fri, 18 Oct 2024 06:11:02 -0400 (EDT) Received: from phl-mailfrontend-02 ([10.202.2.163]) by phl-compute-01.internal (MEProxy); Fri, 18 Oct 2024 06:11:02 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=eisentraut.org; h=cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:message-id:mime-version:reply-to :subject:subject:to:to; s=fm1; t=1729246262; x=1729332662; bh=G/ 9/8B+94ElvmqYk0rBC0nDYBNFIFlMNNi0/zuc4718=; b=Ls+lylqpx5Mi3cMehB ixcNNnVLCNwl26SjTKsyL023+rEySPcIRkXUlMYt2kR480Y4sdpvlTsphBK33fQx /KX2ajwgZ/ux0GMj6iS+Osp7vLyVgakzGokGrYkf2wUCQkdmDatkoR5gKgwPwwUv FxjP31qbt1MGs97Itk67LG9vAyGQMOSlJ1H8/9aPTfRg0Ps6pWeOGS1YaMdH45u0 sN/tG8OwU+YQ9+pwQzlLPdsexObzmpna/wi24umOdN1t3XBW/86BnHJ8XqPJsm96 +oVMrqCXsUVJeOfT+UCT6fKBI5m7PZ+XRSMv6bvzKAVXX6WKx9KmWqDeo/yNdzPZ 9e5Q== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:message-id:mime-version:reply-to:subject:subject:to :to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s= fm2; t=1729246262; x=1729332662; bh=G/9/8B+94ElvmqYk0rBC0nDYBNFI FlMNNi0/zuc4718=; b=RHZbDghEDG1dSVH/FwV7CDEuFffLH8BDMz6uhIDk6sZA cQZRlWeHpOhZTFqvtWCzmqPRMH2v6uTmOLK7XUNu7J4QzZPMu7T2r9FBPDSL/Aop M/DKlyIq4DwViLip2EqVpRR1R/9TeLhmsjyD+djIxYLLhEqkddEftzo9IKsqV+WT GSyRvCnIgxUj9YhP4xX5dC/G+OxSyhSiylIml9kUiuYDPN7mCaZd2TVp35Jl2l1O xAZB/IEFUo8M7bVWV55VrPDRygcqMEZNXPz5gFVqBiOCW1e8dsvlc0HYlcrx4tno 7ohOmxBESnhtv8Ho5aAfOs91QII7HKHzxYFcpurwNg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeeftddrvdehfedgvdefucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgfnhhsuhgsshgtrhhisggvpdfu rfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttdenucenucfjughrpefkffggfg fhuffvtgfgsehtjeertddtvdejnecuhfhrohhmpefrvghtvghrucfgihhsvghnthhrrghu thcuoehpvghtvghrsegvihhsvghnthhrrghuthdrohhrgheqnecuggftrfgrthhtvghrnh epffetvedutdefleejveekgeefteffueeugefgfeegkedvudelveelheduffdvveehnecu vehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepphgvthgvrh esvghishgvnhhtrhgruhhtrdhorhhgpdhnsggprhgtphhtthhopedupdhmohguvgepshhm thhpohhuthdprhgtphhtthhopehpghhsqhhlqdhhrggtkhgvrhhssehpohhsthhgrhgvsh hqlhdrohhrgh X-ME-Proxy: Feedback-ID: ie0a040ee:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA for ; Fri, 18 Oct 2024 06:11:01 -0400 (EDT) Message-ID: <52db1d2b-4b96-473e-b323-a4b16a950fba@eisentraut.org> Date: Fri, 18 Oct 2024 12:11:00 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Content-Language: en-US From: Peter Eisentraut Subject: unicode test programs don't build with meson To: pgsql-hackers Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk The test programs in src/common/unicode/ (case_test, category_test, norm_test), don't build with meson if the nls option is enabled, because a libintl dependency is missing. (pg_strerror_r() in src/port/strerror.c makes a gettext call, so in that sense libpgport has a dependency on libintl.) The makefiles are ok, because they just link all programs against all libraries that configure finds, more or less, but meson needs explicit dependencies declared. I can see a few ways to fix that, so I'm looking for feedback on which way is best. 1) Add libintl directly to the affected programs, like case_test = executable('case_test', ['case_test.c'], - dependencies: [frontend_port_code, icu], + dependencies: [frontend_port_code, icu, libintl], include_directories: inc, link_with: [common_static, pgport_static], build_by_default: false, etc. 2) Add libintl as a dependency of frontend_port_code: --- a/meson.build +++ b/meson.build @@ -2986,7 +2986,7 @@ subdir('config') frontend_port_code = declare_dependency( compile_args: ['-DFRONTEND'], include_directories: [postgres_inc], - dependencies: os_deps, + dependencies: [os_deps, libintl], ) 3) Add libintl to os_deps directly? 4) Change the dependencies of the test programs to something like --- a/src/common/unicode/meson.build +++ b/src/common/unicode/meson.build @@ -75,7 +75,7 @@ inc = include_directories('.') norm_test = executable('norm_test', ['norm_test.c', norm_test_table], - dependencies: [frontend_port_code], + dependencies: [frontend_code], include_directories: inc, link_with: [common_static, pgport_static], build_by_default: false, Or something else, or some combination?