X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f X-Recipient: djgpp AT delorie DOT com X-Original-DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=aZCWkyrmv7A6Jd59GZuBlwf6hTxuIRmI+OAZ6ljwzLo=; b=L7qgvBKNqY1w MAvpXQsMA1saUr+Hup8vMMKkDoeJaIAxM5o/MNFULEi3UPYttPLrZLMTe43o4ywaZJHDpoHrgQpoh /9c/D01mlWLIc9mm+eQAl1KKiuW7uev2x0mxx1XbiGpzchxpwZvyLFfgt6BkTz2TTnfnJcsTJpH3N Tp5kbHDE+js3wUoBW89zcRXFJzdWb7OeTp7aQPIdK8IViso4LhP4ez+rRUqPLgqj1pfn4dcUth6uD qpiLvJdKhRf4JXr6K9IJVzIVJggQNvbq0R7VDQI8hjCbp5IjvCuNnxJQVrP9B//8OBPVIM4oyt6Cu Ej91KfscKGlLeMS82A7dZw==; Date: Sat, 28 Jan 2023 09:20:29 +0200 Message-Id: <83mt63azwi.fsf@gnu.org> From: "Eli Zaretskii (eliz AT gnu DOT org) [via djgpp AT delorie DOT com]" To: djgpp AT delorie DOT com In-Reply-To: (djgpp AT delorie DOT com) Subject: Re: DXE3 with std::vector References: <3b8f674c-bca3-c679-952e-f8ba5af196e7 AT gmail DOT com> <500850be-fd64-3f82-a1e1-929903084e9b AT gmail DOT com> <3d9271ae-266d-ee7b-853b-984857ced1c8 AT gmail DOT com> <83sffvbux1 DOT fsf AT gnu DOT org> Reply-To: djgpp AT delorie DOT com > From: "Ozkan Sezer (sezeroz AT gmail DOT com) [via djgpp AT delorie DOT com]" > Date: Fri, 27 Jan 2023 23:46:10 +0300 > > >> DJ, Eli: I'd like to apply this patch. Any objections? > > > > I won't fight its inclusion, but I wonder whether all of the aspects > > of this patch have been considered. I'm worried by the changes in > > behavior this patch brings. At least the following stand out: > > > > the code will no longer heed DXE_LD_LIBRARY_PATH and DJDIR > > I documented that in the applied patch: > > https://www.delorie.com/bin/cvsweb.cgi/djgpp/src/docs/kb/wc206.txi > https://www.delorie.com/bin/cvsweb.cgi/djgpp/src/docs/kb/wc206.txi.diff?r1=1.15&r2=1.16 Instead of documenting, could we keep the previous behavior? > > makefile.dxe uses "?=", which AFAICT we never used in the DJGPP > > build tree > > I can revert that part: Tell me? If it is not necessary, I think reverting it would be best. "?=" was introduced in GNU Make 3.77, but someone might be using an older version. If the functionality of "?=" is really needed here, we could instead use its equivalent ifeq ($(origin FOO), undefined) FOO = bar endif > > What if someone wants to use those > > environment variables to tweak the build of a DXE? > > One can simply use -L/some/path -lfoo (verified that it works) OK, but can we actually still honor those variables in the new code, so that if someone does use them, they could still use their scripts and build procedures? > > Also, this comment no longer describes what the code does, after the > > change: > > > >> /* Allright, now run the assembler on the resulting file */ > >> - sprintf(cmdbuf, "%s -o %s %s", dxe_as, TEMP_O_FILE, TEMP_S_FILE); > >> + sprintf(cmdbuf, "%s -c -o %s %s", dxe_cc, TEMP_O_FILE, TEMP_S_FILE); > > > > Change to something like this?? > /* Allright, now build resulting file */ Something like this. If it's important to state which programs are run, I would say /* Allright, now run the compiler to produce object and assembly files */