Bug#1013426: Cannot be built twice

2022-08-28 Thread Marko Lindqvist
On Sun, 28 Aug 2022 at 19:27, Tobias Frost  wrote:
> So, even with the switch, the build system needs it at least at
> configure time, which is the reason why it failed at the second time.
> (make distclean was the command that failed; as the removal of lua
> was only directly before the build, it worked the first time.)

 Yes, autotools assume it to be part of the complete SOURCE tree, and
requiring some actions (any 'dist...' -target) as such.


 - ML



Bug#1013426: Cannot be built twice

2022-08-28 Thread Tobias Frost
Control: tags -1 pending patch

Hi Marko,

On Thu, 23 Jun 2022 15:14:24 +0300 Marko Lindqvist  wrote:
> Package: freeciv
> Version: 2.6.6-1
> 
> As debian/rules deletes dependencies/lua-5.3 directory when building
> the package, later attempts to do another build from the same tree
> fails.
> You should not delete the directory. According to the comment, the
> purpose is to make sure those sources are never used, as a fallback if
> lua is not found from the system. That's better achieved by adding the
> configure option --enable-sys-lua=yes (to override freeciv-2.6 default
> of --enable-sys-lua=test). It will also give more sensible errors than
> the missing directory, if those errors ever occur.
> 
> (This was causing me trouble when I started looking at the debian
> freeciv build failure at x32 - I should have something for that soon)
> 
> 
>  - ML
> 

thanks for your report!

Yes, reoving 3rd party stuff is the usual made to have a stron proof that 
the build system is indeed using the system packages.

And thanks for the hint with --enable-sys-lua=system.

However, my expectation was that with that switch the build system will
not even take a look at dependencies/lua-5.3, which was unfortunatly not
true:
- configure.ac lists it unconditionally in CONFIG_FILES
- dependencies/Makefile.am has some logic to detect the sys_lua flag,
  but this seems broken: On my local machine, it set 
LUASUBDIR = lua-5.3 and therefore including it into the build…

So, even with the switch, the build system needs it at least at
configure time, which is the reason why it failed at the second time.
(make distclean was the command that failed; as the removal of lua
was only directly before the build, it worked the first time.)

I've patched those files and now I can built twice :)

(tagging patch: The changes required are commited to the salsa repo)

-- 
Cheers,
tobi




Bug#1013426: Cannot be built twice

2022-06-23 Thread Marko Lindqvist
Package: freeciv
Version: 2.6.6-1

As debian/rules deletes dependencies/lua-5.3 directory when building
the package, later attempts to do another build from the same tree
fails.
You should not delete the directory. According to the comment, the
purpose is to make sure those sources are never used, as a fallback if
lua is not found from the system. That's better achieved by adding the
configure option --enable-sys-lua=yes (to override freeciv-2.6 default
of --enable-sys-lua=test). It will also give more sensible errors than
the missing directory, if those errors ever occur.

(This was causing me trouble when I started looking at the debian
freeciv build failure at x32 - I should have something for that soon)


 - ML