From unknown Sat Sep 13 02:52:47 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#78975 <78975@debbugs.gnu.org> To: bug#78975 <78975@debbugs.gnu.org> Subject: Status: Feature request: per-library compiler Reply-To: bug#78975 <78975@debbugs.gnu.org> Date: Sat, 13 Sep 2025 09:52:47 +0000 retitle 78975 Feature request: per-library compiler reassign 78975 automake submitter 78975 William T Jones severity 78975 wishlist thanks From debbugs-submit-bounces@debbugs.gnu.org Tue Jul 08 21:53:29 2025 Received: (at submit) by debbugs.gnu.org; 9 Jul 2025 01:53:29 +0000 Received: from localhost ([127.0.0.1]:46894 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uZJzz-0000Xc-PR for submit@debbugs.gnu.org; Tue, 08 Jul 2025 21:53:29 -0400 Received: from lists.gnu.org ([2001:470:142::17]:53250) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uZJzv-0000X2-Tw for submit@debbugs.gnu.org; Tue, 08 Jul 2025 21:53:25 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uZJzq-0005Rf-HD for bug-automake@gnu.org; Tue, 08 Jul 2025 21:53:18 -0400 Received: from ndmsvasmtp102.ndc.nasa.gov ([198.117.0.162]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uZJzn-0002js-Ii for bug-automake@gnu.org; Tue, 08 Jul 2025 21:53:18 -0400 Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=146.165.241.237; helo=tabdemo-mail.larc.nasa.gov; envelope-from=w.t.jones@nasa.gov; receiver=w.t.jones@nasa.gov DKIM-Filter: OpenDKIM Filter v2.11.0 ndmsvasmtp102.ndc.nasa.gov 4A4D6400A100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nasa.gov; s=letsgomars; t=1752025992; bh=INi9vD4vAtVW7ivL5eN0/AibgApYuqUkhCAn79sZFyQ=; h=Date:To:From:Subject:From; b=jaZG2zEgUpBd5oboBI/km/u0cWCFKMNwtfa0vIhjo1GPHcxSiEwZWi4vsKPFSAKH1 +QrqtVJdQnyqGYCnZbzbyl3MgmpmtLkRwg0m1e26yDEcTSYY0Tv9OK19XvBHylCgzq r+RC1Bfys1vtuMCzB440I0NGp4cQg2ehZ18D5JtkB78ADpAQlGR/FKSUVP6eqRIJRP ELCTIUaUuBdits4nt9upJi4u0PYgyEEX52Ap7qSBVXKDMhMJiNmmTpwj+xNpDwP8AN +K2FDzOK7R2D5FceJnQPDQiEsS7Ufe661ss90XDlIk8HxCX0/KhtfimsKUC1r927Au t+wkNHPXUqDfQ== Received: from tabdemo-mail.LaRC.NASA.GOV (tabdemo-mail.larc.nasa.gov [146.165.241.237]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ndmsvasmtp102.ndc.nasa.gov (Postfix) with ESMTPS id 4A4D6400A100; Tue, 8 Jul 2025 20:53:12 -0500 (CDT) Received: from [156.68.182.234] (LALAL0721030124.ndc.nasa.gov [156.68.182.234]) by tabdemo-mail.LaRC.NASA.GOV (8.15.2/8.15.2) with ESMTPS id 5691rBlO1506359 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT); Tue, 8 Jul 2025 21:53:11 -0400 Content-Type: multipart/alternative; boundary="------------i2Wrqozpqme7xXbSBM9GyB0L" Message-ID: <4f3d8a84-1e59-4ab2-803a-f81f31653b69@nasa.gov> Date: Tue, 8 Jul 2025 21:53:11 -0400 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird To: bug-automake@gnu.org Content-Language: en-US From: William T Jones Subject: Feature request: per-library compiler Received-SPF: pass client-ip=198.117.0.162; envelope-from=w.t.jones@nasa.gov; helo=ndmsvasmtp102.ndc.nasa.gov X-Spam_score_int: -49 X-Spam_score: -5.0 X-Spam_bar: ----- X-Spam_report: (-5.0 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FROM_GOV_DKIM_AU=-0.623, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 1.9 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: I would like to request a feature for GNU Automake if it is possible. When building programs and libraries with GNU Autotools (libtool, aclocal, automake, and autoconf) it is sometimes desirable to compile the same source with a custom compiler (other than CC, CXX, etc. [...] Content analysis details: (1.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2001:470:142:0:0:0:0:17 listed in] [list.dnswl.org] -0.0 SPF_HELO_PASS SPF: HELO matches SPF record 0.9 SPF_FAIL SPF: sender does not match SPF record (fail) [SPF failed: Please see http://www.openspf.org/Why?s=mfrom; id=w.t.jones%40nasa.gov; ip=2001%3A470%3A142%3A%3A17; r=debbugs.gnu.org] 0.0 HTML_MESSAGE BODY: HTML included in message 1.0 FROM_GOV_SPOOF From Government domain but matches SPOOFED X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.9 (/) This is a multi-part message in MIME format. --------------i2Wrqozpqme7xXbSBM9GyB0L Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit I would like to request a feature for GNU Automake if it is possible. When building programs and libraries with GNU Autotools (libtool, aclocal, automake, and autoconf) it is sometimes desirable to compile the same source with a custom compiler (other than CC, CXX, etc.).  A sample use case is to compile the same source file for multiple device accelerator architectures (CUDA, HIP, CPU, etc.) into a specific program or library. In this use case, the same source modules need to be compile and linked into a device specific program or library.  Since the same source would be compiled for multiple devices, it would be advantageous to compile the source with multiple compilers within a single Makefile.am.  The desire would be to specify the compiler on a per-program (or per-library) basis in keeping with the ability to specify program and library variables (`maude_CFLAGS', `maude_LINK', etc.).  The suggestion would be to add new variables (`maude_CC', `maude_CXX', etc.) and use those in the custom object targets (`maude-%.o: %.c' where the stem is expanded) in place of $(CC), $(CXX), etc.. An example Makefile.am would contain the following: lib_LTLIBRARIES = libcpu.la libcuda.la libhip.la my_SRCS = source.c libcpu_la_SOURCES = $(my_SRCS) libcpu_la_CFLAGS = libcuda_la_SOURCES = $(my_SRCS) libcuda_la_CFLAGS = -Wc,-x,cu -Wc,-dc libcuda_la_CC = nvcc libhip_la_SOURCES = $(my_SRCS) libhip_la_CFLAGS = -Wc,-fgpu-rdc -Wc,-dc libhip_la_LDFLAGS = -Wc,-fgpu-rdc,--hip-link libhip_la_CC = hipcc And, as an example, the generated rule for compiling source.c for libcuda.la would be generated as ($CC replaced with $libcuda_la_CC): libcuda_la-source.lo: source.c         $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(libcuda_la_CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcuda_la_CFLAGS) $(CFLAGS) -MT libcuda_la-source.lo -MD -MP -MF $(DEPDIR)/libcuda_la-source.Tpo -c -o libcuda_la-source.lo `test -f 'source.c' || echo '$(srcdir)/'`source.c         $(AM_V_at)$(am__mv) $(DEPDIR)/libcuda_la-source.Tpo $(DEPDIR)/libcuda_la-source.Plo #       $(AM_V_CC)source='source.c' object='libcuda_la-source.lo' libtool=yes \ #       DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ #       $(AM_V_CC_no)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(libcuda_la_CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcuda_la_CFLAGS) $(CFLAGS) -c -o libcuda_la-source.lo `test -f 'source.c' || echo '$(srcdir)/'`source.c Is this possible and acceptable? If there is another way to accomplish this task, I am open to it. However, I have researched the topic with documentation searches and failed AI chats and have not discovered an elegant solution. Thank you for all of the great work, Bill -- --------------i2Wrqozpqme7xXbSBM9GyB0L Content-Type: multipart/related; boundary="------------6MoZzjrPWYMYzF9aTOlztBQo" --------------6MoZzjrPWYMYzF9aTOlztBQo Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 8bit

I would like to request a feature for GNU Automake if it is possible.

When building programs and libraries with GNU Autotools (libtool, aclocal, automake, and autoconf) it is sometimes desirable to compile the same source with a custom compiler (other than CC, CXX, etc.).  A sample use case is to compile the same source file for multiple device accelerator architectures (CUDA, HIP, CPU, etc.) into a specific program or library.

In this use case, the same source modules need to be compile and linked into a device specific program or library.  Since the same source would be compiled for multiple devices, it would be advantageous to compile the source with multiple compilers within a single Makefile.am.  The desire would be to specify the compiler on a per-program (or per-library) basis in keeping with the ability to specify program and library variables (`maude_CFLAGS', `maude_LINK', etc.).  The suggestion would be to add new variables (`maude_CC', `maude_CXX', etc.) and use those in the custom object targets (`maude-%.o: %.c' where the stem is expanded) in place of $(CC), $(CXX), etc..

An example Makefile.am would contain the following:

lib_LTLIBRARIES = libcpu.la libcuda.la libhip.la

my_SRCS = source.c


libcpu_la_SOURCES = $(my_SRCS)
libcpu_la_CFLAGS =

libcuda_la_SOURCES = $(my_SRCS)
libcuda_la_CFLAGS = -Wc,-x,cu -Wc,-dc
libcuda_la_CC = nvcc

libhip_la_SOURCES = $(my_SRCS)
libhip_la_CFLAGS = -Wc,-fgpu-rdc -Wc,-dc
libhip_la_LDFLAGS = -Wc,-fgpu-rdc,--hip-link

libhip_la_CC = hipcc

And, as an example, the generated rule for compiling source.c for libcuda.la would be generated as ($CC replaced with $libcuda_la_CC):

libcuda_la-source.lo: source.c
        $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(libcuda_la_CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcuda_la_CFLAGS) $(CFLAGS) -MT libcuda_la-source.lo -MD -MP -MF $(DEPDIR)/libcuda_la-source.Tpo -c -o libcuda_la-source.lo `test -f 'source.c' || echo '$(srcdir)/'`source.c
        $(AM_V_at)$(am__mv) $(DEPDIR)/libcuda_la-source.Tpo $(DEPDIR)/libcuda_la-source.Plo
#       $(AM_V_CC)source='source.c' object='libcuda_la-source.lo' libtool=yes \
#       DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
#       $(AM_V_CC_no)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(libcuda_la_CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libcuda_la_CFLAGS) $(CFLAGS) -c -o libcuda_la-source.lo `test -f 'source.c' || echo '$(srcdir)/'`source.c

Is this possible and acceptable?

If there is another way to accomplish this task, I am open to it.  However, I have researched the topic with documentation searches and failed AI chats and have not discovered an elegant solution.

Thank you for all of the great work,


Bill

--
--------------6MoZzjrPWYMYzF9aTOlztBQo Content-Type: image/png; name="signature.png" Content-Disposition: inline; filename="signature.png" Content-Id: Content-Transfer-Encoding: base64 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 hv+u739GMKHqAP4Z/wVlJAfVicev6AAAAJZlWElmTU0AKgAAAAgABQESAAMAAAABAAEAAAEa AAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAABAAAAWgAAAAAAAADc AAAAAQAAANwAAAABAAOShgAHAAAAEgAAAISgAgAEAAAAAQAAAXugAwAEAAAAAQAAALAAAAAA QVNDSUkAAABTY3JlZW5zaG909YKwTAAAAAlwSFlzAAAh1QAAIdUBBJy0nQAAAtdpVFh0WE1M OmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8i IHg6eG1wdGs9IlhNUCBDb3JlIDYuMC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRw Oi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpE ZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6ZXhpZj0iaHR0cDov L25zLmFkb2JlLmNvbS9leGlmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOnRpZmY9Imh0dHA6 Ly9ucy5hZG9iZS5jb20vdGlmZi8xLjAvIj4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5z aW9uPjU2OTwvZXhpZjpQaXhlbFhEaW1lbnNpb24+CiAgICAgICAgIDxleGlmOlVzZXJDb21t ZW50PlNjcmVlbnNob3Q8L2V4aWY6VXNlckNvbW1lbnQ+CiAgICAgICAgIDxleGlmOlBpeGVs WURpbWVuc2lvbj4yNjQ8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgogICAgICAgICA8dGlmZjpS ZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8dGlmZjpZ UmVzb2x1dGlvbj4yMjA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNv bHV0aW9uPjIyMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6T3JpZW50YXRp b24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwv 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 f/Xfjq+U0dr3YX5qUjTjh1Jddn5X7Xd/x8AZINPPso1H3hs+SUNuGWMbkaZpm96N9ZdbtlKD vHRNtb1kR3wxQ/22s+l0y8zA0RfOKDPd+TY6/q4eSrUPMmwgYlMCXB/f8dAoDR21JAwetju5 Di+bp53Lpql3xTi1zJ2t9M8+V/qvjlT9G19U1hadlVfQQQ32G6Ql33xv+vHtNeHtjzX0N+9r WL8d9XKRqQe2ztFfG89Q78cvVcsjjtL8U97Xjo3a6r7vZ+mcaz9XifnnSTHxFKMFww27btnu KBppG6mcbOo+mciQNrOwOh9qFCjovl9z7vmTAYR7NYVo2uRz8lBmND5ajscD2Ihh4FxZJPYN qf2+lxHNSxycONo1vjC7JkDvbeNIPdHraFxN8dTPL5o2es25t9/LiNbjaUMBK/nn6Tyvl+VZ vB6P9/R+v7pjtF1eLvlWJ2915dXluE0W7HmneaDFS0s1ZbKZzjcxS1hDdcM+5bZN0wvvTtcZ J2yrrgU/bY/Ws3trvfLuDI03cH/13fm68BTbsWenznrs2S914+Vf6cWh7XThae11140/qrOp U/7j9Zk679TttIN5u4yGuXOLNP5fL+rcvoXaomic2qRONO2ZJUrktdDyTz9X1u//qLZnnabM ZmYqVWo+dyZMUnmrtmrZo1soZujIxbqcISWrgbYrmq2rZr2hXsOfUvYtd6jFKSeqQ/Mm6mMp F27ZWs++MkFvf71ITc1qd5nNNKzLGNCGAWusbZaypMj86zfMsY8RekRbufmfJ3/QyddQoLq4 migTTbs659FyPD3iA1Q1+UWD3ycueu5pXP/cAcvj1/RYXdnVxVFudfHJcX7tR29P8rXHr85x ZXlXdq+6sqPpo+fVpY3jVk6BTZhlrORgipaWaMIkM9tunibUKdlusF2DNI01lwnjxs8JvcNK ttx+zRvX028v3l7zPjfNgim2Bd6oaSoyVwhvD59s6ZbbAt8kDerf2c7L1RhR4/clKi6qXPkn fwXTCAsHbd9UT+c+pQOXv6wt0iebTD9Xy3I6qWTsTNU7+Uy1v/DsAPTFiwr17Fm36eLud5kq 5it6a/hEjf52hnHi2VZKua62Bdu/pD2uNp+/qNePuVtNLzhX2Qb01MM0vmF+pk4+vKu1Y3mY sQS23nJiI5BfP0U/mAO2BbY4XRkq6bHiotYdADn6nBxqio+mc4Dk6OfR+5x7OdRRU5rkPGtz 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 P7DKNOBgM+/jxGY8X7Lh++atuZDY5KlF2/Pv8rb+ehmb9nTRNtskawM2qyDUCy+X7Hf3lC3f rShLOqt97hWk0hZ0GzQ4qwNQleY+pXJPPV2yLQZm7fv75UO+Z2eULK8ZwV/fKdm8T81GHJC3 fhtV5L4ouZMmV2TuPzxvvST3w4/K4rcp2sIvE9tvWN623aYymvzuDigNMjbqxG52190Fe+2N xLYblLEBm2d1Ctjsvye12GGHNNrT00vaG2/aQ6/DYJ9X6ttow6wVNQuYMrXFnnuubJtvnrHh wxps/d4Zm/Oh6vuvoi1anBht2Oablfpe/UvJJk4qag9/RvE523ILOIIqAwa9Bayfe7FoT04r 2167Z5VPhGrKs87aGZv5vOKnlqxPn4wdcnCD9v4n9vKrZdvn73OaHVX6+PyLZfvu3jnrphlK DPWrgVYboH4VEHu+ejRwwH7Noj5IxFdTtoO/32yvvQ5DpNl+x4szp9hqDqspYlQWiLVa/yls +kxunFPPLJho7u2xiS12ylkF22H7rE3/c8nGXNpsJYn4wwNF22XHJlvUJMB/t2yjL2oO7pUn pxXtZ/9aEHd81l54sWTXXl9QnsTGjFW6yg1S/OBBzbLkS7ZYZQHVfziq0f7wYEEgW7afntFo Dz1SsrkfJrbXHjl7Y3alvXfc1WI7q75mUd6/9WbZLvp5hQ7ijgkF+/V1LbaPAPb1WWW78aZm a1LSBRc3i+/e7Jtbidv+W0329jtlm/VmSXU3hTb072c26pRmnSKuzBx8VjNFg+NRxxasbx+z CXeqj3s2W7Pa/8z0oh0xsqDTwVmdDi7bBRc12QLNOv7t/IJO81ZmRo89XrSHH2kJQE9fY6hf DUTLvn5/+5p7XutuHHcf9NkgY6MvzNlsWdy4QATlNkegP3vDkp18QMY227Ri4bLz5ds75G3o XkUNCLLWe3KS1QJAslVxp0HZYBXfc2/RbvmPbrbTjjn7zpC8/fC4xfbOuyWdXDW75dYGGymg niur/bSfNOma2B0TinbSSTkbtk+DDdw8Z8cd3yQ6ZMBbRGVDzPbcIy/gzQXre97HUDSYrSur +Z77Szb63MbQjmw+Y8OGNtgzzxatr9YMCLT3jjsb7OgjG22fIWU75Yxm+/iTxHbdNSfKh5zW FrI2S2D/zLMlY7CaMTPRbMNCm9+eTXomDC4znu9uW2+ZtTc0YHw8v2ifLyiLEbNVJ1LXjeNb 7ObrGm3v7+Rt+NDEPpq7GG+N/ea3RRt/faPtu3feDvye3E1HLtYp48SOOzon3p+S6JRz9vjE kv30XzQViKHuNRDBvu7/C6yYAgDbNCXBipWqbFfEn7zbrll78qlSWHi978EGEY6V5T4pid0y F9wSwW2hfFizBbl6sLAJzqZAemNjEmYH6wjU+/WrLJL21GLplltkbd7HohPWTGGjDStAjLul n+5Z2GW2MHlq2aY91WS9NICMODhnG/fP2thfdrMrr2q2K64pyY2TsTNP72YMTAvmm30hd8gO chs99pjelLVJyW6+s6zF4RabOq1kZ5zWGNpW0C6dPn0qk2Pue8rFRF8LavvoCwtytWSsQX9h eruibdQ3Y7f9trtdd32zjRlXtAP3z9lZP2nUbp+M/f6uQpg1DNoma+tpVuMTGmTp/SeW13Wz TSv10PeN1fcFX5gWjhNRPXhu05u8tJCsfg8bmpPMom23fUkDh2YSW1cGjtDo+FW3Gqj8D6rb 7seOr6gG4KFpj6VyeeXduh88OGc//3VJbJOJDZErBAv0hB8VbccdKkCkFz8Fdwj5ce/glyaw M4cBgPgmgejasrjxj38ky524j7QegKtlgECvrHIAPoE0Bgz82swOjjo8b1dd1t1OF1BvJTfK Ysmd/XbJxl3ewx5/pIc1iXDyzt8XBNgZ22P3jE3Q/UknNlq/jbO2tcDy7Znd7QO5cQ4/vMH6 96v82QDkyCYwX8H9tEhEnriPTvtx3i79ZXdx1ecD4H/8Sdk+eK9kV43rYRNV36d6xh2Fq6iH /P6/uamHjTq5MQwM3bppIJM8fPvcf6rB56/vSQkK78g988pria0t0AfwPX4xbp0Z4uVRf7fa Mmfvf5BoICvYccfkQp9ch0FI/KpLDUTLvi5/9to7zYs2nMp3ZU5/DpD75MBdtMi5qcn3jM86 qzczleVqqADn+Ftbwl72fz6p0TbQYuMVVxfsxmtlCV/bbDvLLbLzzvkA8htoUXfkMXk794IW +6eTE/vjH4t26CE566+FWIBfr7ANgRnBewK8Ht3lBz+pwX51acEWaoB5fFLJ+m6gxVSB8Jix BXvxpbL6lQ3ul2OOrvw5/PCYbvafNzbbdTcU7GDlYwuo3nAo55PAVWC7286tA5R89ZkMsKwZ iBI/nCdrW/UN2TNrk6dokXheYo/KjfL8SxChle3ue4r2l9fLhgU/XwPWDtvntIYBB36LPfCg tnlqYXXqRNN2z1Loy6+uLNhtN4uR85yG0NZZKjvzhbIWYXFtZezHoxrsZ2cXbP6pZv/zTMmO HJG17bbNhdnQ0H1y9qN/bLHzz1WDFBj8YqhvDUQitPr+/VdL77HUsVLfeLMU9qgPGCCf/Zyy faoF22+xI0VA9OZbyiTcHKQdMbO12PjccyUb9t28LNSyraedLL3Wztqp8sFfclFj2KUz7U9F m64828mPP2TPhrArhkXf3utmbFNZ4/MXJnoJSllWbjbMBmbMLNmTfyrpOWND99FLwWUBvz8n sYe1OwZ/+r7avbLLt3OaVSQCy4qL6M8zqaNsX8jq7y83zE4aFLYdlAsHrcDO12dV6tuY+iTj TdVHOi6gBx5q0c4h+fnVB3YCDdROHvrBWYEvBNZeH+6mJ6YUtVBblt89Z4v1/Kn8/sh5TzOB 7Qbng7WPBf/5Z2Vbp3fWrpbFPvp86UF6ZD2AXUlbfSMjn77OALBbSY1joJk7t2zbaFBlYGBX EwNSDPWrgQj29fvb19zzNDHYihQOfngBz4IFiT2oHSE9BTgsauKH7iZfOztTFsmdQsB9Akgt ElB2V1p3gdZCATYHmHDH3HRr0SY+nIgDPy8a4Ep+tlniusHqZkAB0HCrsE8e2cjBPURcr17y n8tCx3//pdwfhRbJVp2AIzOVop7D/nm1xduNy4gZAs8E6gDIGZSI8gXkJtWHS4f6GNSou6fW BvhHX/XuE9VXWY9YS23HzG5RfV+of8hfS23jWhDQE/DVMwg0qBxtnzK5pC2Wid5bmwmLvMxM Dj2UgUn9Up+X9EttK6oe9MhshHqpA1fQ97Q9lbzet1BR/KorDUSwr6uf+/+4syCkgMhDG+Ah jUA6YKoPh5UIeqOh3XVfwbYYoF0u8vcTAgC3ylviomh9Dhla83ja0vKHeAqoXs+bLu/3fm2T Z2n1KT7IRaYKhmzccF9xvbepb0kbKlnCN/XgZwf4mTU8pMHyg/fL1leLzgcd1GgbytVFaLdf IaWS1qa9rfHxUp8aiGBfn7/7au91e4C2oo2oBqyOyFrROv8/5avuP20LJ4BraGR7MmooHrOu ARqIYL8G/Ij10AUH+HoELe97+neuRz2k+x/va9dABPvadRZLRA1EDUQNdDkNxPX5LveTxQZH DUQNRA3UroEI9rXrLJaIGogaiBrochqIYN/lfrLY4KiBqIGogdo1EMG+dp3FElEDUQNRA11O AxHsu9xPFhscNRA1EDVQuwYi2Neus1giaiBqIGqgy2kggn2X+8lig6MGogaiBmrXQAT72nUW S0QNRA1EDXQ5DUSw73I/WWxw1EDUQNRA7Rr4X3O3N4Kt8nFaAAAAAElFTkSuQmCC --------------6MoZzjrPWYMYzF9aTOlztBQo-- --------------i2Wrqozpqme7xXbSBM9GyB0L-- From debbugs-submit-bounces@debbugs.gnu.org Fri Jul 11 12:30:35 2025 Received: (at 78975) by debbugs.gnu.org; 11 Jul 2025 16:30:35 +0000 Received: from localhost ([127.0.0.1]:38968 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uaGdv-0000q9-8b for submit@debbugs.gnu.org; Fri, 11 Jul 2025 12:30:35 -0400 Received: from frenzy.freefriends.org ([198.99.81.75]:38162 helo=freefriends.org) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uaGdr-0000pu-2V for 78975@debbugs.gnu.org; Fri, 11 Jul 2025 12:30:33 -0400 X-Envelope-From: karl@freefriends.org Received: from freefriends.org (localhost [127.0.0.1]) by freefriends.org (8.16.1/8.16.1) with ESMTPS id 56BGUTT3039985 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Fri, 11 Jul 2025 10:30:29 -0600 Received: (from apache@localhost) by freefriends.org (8.16.1/8.14.7/Submit) id 56BGUSZU039984; Fri, 11 Jul 2025 10:30:28 -0600 Date: Fri, 11 Jul 2025 10:30:28 -0600 Message-Id: <202507111630.56BGUSZU039984@freefriends.org> From: Karl Berry To: w.t.jones@nasa.gov Subject: Re: bug#78975: Feature request: per-library compiler In-Reply-To: <4f3d8a84-1e59-4ab2-803a-f81f31653b69@nasa.gov> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 78975 Cc: 78975@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Hi Bill - thanks much for the detailed and thought-out message. Since the same source would be compiled for multiple devices, it would be advantageous to compile the source with multiple compilers within a single Makefile.am. ... add new variables (`maude_CC', `maude_CXX', etc.) and use It looks reasonable to me. I don't recall this coming up before. I don't think you missed anything in your searching, but if anyone else here has an idea for how to accomplish this, I'm sure they'll chime in. How easy or hard this will be to implement, I just have no idea. I will look as soon as I have a chance, but I can't give an ETA. Bogdan (or anyone else), maybe you'd be able to look at it? Thanks again, Karl