Re: Wget bootstrapping problem

2020-05-07 Thread Bruno Haible
Darshit Shah wrote:
> What Bruno suggests is that Wget sets SKIP_PO=1 in the bootstrap script 
> and then updates the translations during build time.

Yes, that is my second suggestion.

> This is a bad idea. ...
> Not to mention, network access during the build process is often frowned 
> upon.

Indeed, it's best to have all git checkouts and all network accesses done,
before the build starts. I withdraw the second suggestion.

> For the same release, we would end up with users that have different 
> translations depending on when they compiled Wget.

That would be only for people who build from git, not from a tarball
(if it's implemented that way).

I agree that building from a tarball should produce reproducible results.

Bruno




Re: Wget bootstrapping problem

2020-05-07 Thread Darshit Shah
The problem happens when you try to run ./bootstrap on a fresh git 
checkout. The bootstrap script tries to sync the updated translations 
before running configure.


What Bruno suggests is that Wget sets SKIP_PO=1 in the bootstrap script 
and then updates the translations during build time. This is a bad idea. 
For the same release, we would end up with users that have different 
translations depending on when they compiled Wget.
Not to mention, network access during the build process is often frowned 
upon.


One way is to build a non-localized Wget and then build a localized Wget 
using that. The other option I see is that bootstrap provides a 
`--force-rsync` option. Disabled by default. But it can be used 
explicitly in order to use rsync for downloading the PO files.




On 5/7/20 9:56 AM, Tim Rühsen wrote:

On 06.05.20 18:37, Bruno Haible wrote:

We could also check for an existing wget in bootstrap.conf and set
SKIP_PO=1 if not found. While it 'just works' it also disguises the real
problem and the user might get something unexpected
(non-internationalized wget).


Alternatively, you could change the build system so that
   - 'make' recurses into the 'po/' directory only after 'src/',
   - Fetching the PO files is done through po/Makefile, not bootstrap,
   - po/Makefile uses src/wget, if not cross-compiling, instead of wget from
 $PATH.


I possibly don't understand - 'po' already appears after 'src' in
SUBDIRS. Since 'po/Makefile' is auto-generated, everything should work
out (if I understood you correctly). So why has Darshit a problem at all ?

Regards, Tim





Re: Wget bootstrapping problem

2020-05-07 Thread Tim Rühsen
On 06.05.20 18:37, Bruno Haible wrote:
>> We could also check for an existing wget in bootstrap.conf and set
>> SKIP_PO=1 if not found. While it 'just works' it also disguises the real
>> problem and the user might get something unexpected
>> (non-internationalized wget).
> 
> Alternatively, you could change the build system so that
>   - 'make' recurses into the 'po/' directory only after 'src/',
>   - Fetching the PO files is done through po/Makefile, not bootstrap,
>   - po/Makefile uses src/wget, if not cross-compiling, instead of wget from
> $PATH.

I possibly don't understand - 'po' already appears after 'src' in
SUBDIRS. Since 'po/Makefile' is auto-generated, everything should work
out (if I understood you correctly). So why has Darshit a problem at all ?

Regards, Tim



signature.asc
Description: OpenPGP digital signature