[Libreoffice] unnecessary build actions?
Caolán McNamara
caolanm at redhat.com
Tue Sep 13 04:20:11 PDT 2011
On Thu, 2011-09-01 at 12:12 -0400, Kevin Hunter wrote:
> Hullo LibO Devs,
>
> In a search of my build.log for libuno_sal, the first reference I see
> points me to lines that look line this (newlines added for email clarity):
>
> -----
> rm -f ../unxlngx6/lib/check_libuno_sal.so.3
>
> mv ../unxlngx6/lib/libuno_sal.so.3 ../unxlngx6/lib/check_libuno_sal.so.3
>
> [...]/solenv/bin/checkdll.sh [...] ../unxlngx6/lib/check_libuno_sal.so.3
>
> rm -f ../unxlngx6/lib/libuno_sal.so
>
> cd ../unxlngx6/lib && ln -s libuno_sal.so.3 libuno_sal.so
>
> Making: libuno_sal.so.3
>
> ccache g++ [...] -o ../unxlngx6/lib/libuno_sal.so.3 [...]
> -----
>
> Question: if we're making libuno_sal.so.3 afresh, what's the rational to
> bother performing various checks on it prior to making it?
Odd, if I touch rtl/source/locale.c and do "build" I get...
gcc .. -o ../../unxlngx6/obj/locale.o locale.c
g++ ... -o ../unxlngx6/lib/libuno_sal.so.3 ...
rm -f ../unxlngx6/lib/check_libuno_sal.so.3
mv ../unxlngx6/lib/libuno_sal.so.3 ../unxlngx6/lib/check_libuno_sal.so.3
Checking DLL ../unxlngx6/lib/check_libuno_sal.so.3 ...
rm -f ../unxlngx6/lib/libuno_sal.so
cd ../unxlngx6/lib && ln -s libuno_sal.so.3 libuno_sal.so
i.e. build, then check, not what you seem to have, i.e. check then build
> Further, I don't see where the first line's reference to
> check_libuno_sal.so.3 comes from. i.e. When did it get built prior?
> Similar question goes for line 2 above (mv ...).
The order they are supposed to happen (any maybe actually are happening,
just out-of-order build log due to parallel building or different
stdout/stderr streams) is as above, where the checking dll stuff is done
by checkdll in soltools/checkdll. i.e. compile to shared lib, rename it,
test it for sanity and rename it back if its ok, otherwise leave it
renamed as broken and abort.
> ...
> rm -f path/to/file
> gcc -o path/to/file [...]
> ...
>
> That gcc command will just overwrite the file if it's there, no?
> Therefore, why execute rm?
Don't see this either, perhaps I'm missing the obvious how-to-reproduce
this. Either way though, it looks like output from the "old-style"
build+dmake build system, rather that the "new-style" gmake build system
which stuff is migrating over to.
C.
More information about the LibreOffice
mailing list