delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2023/01/28/02:24:04

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]" <djgpp AT delorie DOT com>
To: djgpp AT delorie DOT com
In-Reply-To:
<CAA2C=vAuq+O2gRRM--E0YAPy6D1pLgcP2r0-4+sCLis=kwGYzA AT mail DOT gmail DOT com>
(djgpp AT delorie DOT com)
Subject: Re: DXE3 with std::vector
References: <edefcfee-d1ce-415a-8d1d-525a660fb0d5n AT googlegroups DOT com>
<CAA2C=vCduRPA7Ky-kDqs=QtO-qi=DQczM6FMHhB+=Ltof54P=Q AT mail DOT gmail DOT com>
<c934abb6-c11e-0087-cd32-365d25d3f154 AT gmail DOT com> <CAA2C=vCHMXDD8iewRStieHyTcgjGF3=d29LmMT53vrzGYe+zMQ AT mail DOT gmail DOT com>
<CACuL_+CZm++qhEr7PedDmQaTxjZu9d-rVSw1bgPeist7XZ+dpQ AT mail DOT gmail DOT com>
<CAA2C=vDPwv5G9DeFKyKFqt39cDDmO4LmDtbtMyoMdRR2xeEkow AT mail DOT gmail DOT com>
<3b8f674c-bca3-c679-952e-f8ba5af196e7 AT gmail DOT com> <CAA2C=vBptnTAy2TA-pj5JCbAUJMiXkAAoP_xYFZZJ99iB7v9mQ AT mail DOT gmail DOT com>
<500850be-fd64-3f82-a1e1-929903084e9b AT gmail DOT com> <CAA2C=vA0zXX3Sb49WBzU5g1-8dmO5G5wrb3uT+tLRq2LB0wu5Q AT mail DOT gmail DOT com>
<3d9271ae-266d-ee7b-853b-984857ced1c8 AT gmail DOT com> <CAA2C=vD6sZpTicPh0xuJ16r76qBZ5BZro6x=9+=Z+P-0f_eRSA AT mail DOT gmail DOT com>
<f04cd9db-fe76-219c-bacb-47711df559e2 AT gmail DOT com> <CAA2C=vCv_bpM+iinTcreMJD_gv34Rna3jLspiLFfESFuNxOtoA AT mail DOT gmail DOT com>
<af7fa08a-b074-0a4c-5e2f-99299940e3cc AT gmail DOT com> <CAA2C=vB22rof4HPV_dVPy4tVmsmeDMy4G4r2Vx-_YLwOW6C9ug AT mail DOT gmail DOT com>
<bbdf1853-5454-93b2-fcf9-2306c6949c86 AT gmail DOT com> <CAA2C=vBDi8gwhVVacnhnP+eufCkMNK4DancpOjnD7ScOWCEF6g AT mail DOT gmail DOT com>
<83sffvbux1 DOT fsf AT gnu DOT org> <CAA2C=vAuq+O2gRRM--E0YAPy6D1pLgcP2r0-4+sCLis=kwGYzA AT mail DOT gmail DOT com>
Reply-To: djgpp AT delorie DOT com

> From: "Ozkan Sezer (sezeroz AT gmail DOT com) [via djgpp AT delorie DOT com]" <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 */

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019