On 12/03/17 20:16, William L. Thomson Jr. wrote:
In a case of regular
linux build of FB that sources from extern are not used. One can
build with builtin libtom* but this is not recommended way to go.
A lot of how Firebird on Gentoo has always been against the recommended
way. Gentoo has its own ways and one is no bundled dependencies.
Package things on their own, vs having things build from within and use
that, etc.
I guess its less if it builds it internally than a pre-shipped bundled
binary. Still some what the same. Its not super likely in this case,
but one reason is like security issues. That way a system installed
version gets updates. Where as one in a application may not.
Yes, security issues is one of good reasons to prefer use of system
installed libraries. BTW, that's true for all other types of possible
bugs in a libraries - system version is updated w/o any efforts from
firebird team.
'Official' binaries of FB3 need libtomcrypt to be installed using OS
tools.
Sorry I am confused are you saying the official FB binaries do not use
internally built libtomcrypt but a system installed?
Yes. libtomcrypt is not included in them. To include them in the build
one should use --with-builtin-tommath. It's not used for our distributed
binaries. Only "--prefix=/opt/firebird --enable-binreloc" are used.
This switch was added on request of users who preferred to build own
binaries and avoid requiring addiional packages install.
Though worse case I can do what is required to use external stuff. Its
been that way for some time. Modifying makefiles to use external icu,
Since FB3 there is no ICU in extern except windows binaries. I.e. you
may be sure that on posix system wide ICU is used.
and other stuff in extern within reason.
Qucik review:
1. btyacc - already discussed, unlike libraries fixing something in
upstream (could it exist...) would not help firebird users in existing
installations cause it works only during build process. I.e. serious bug
in it will require rebuild of firebird (that happened at least once).
2. cloop - in all aspects like btyacc but was developed specially to
support firebird (i.e. upstream is definitely alive), certainly can be
used in other projects too but no such samples yet.
3. editline - this library was included due to licensing issues, we
can't distribute binaries with GPL readline, easily avoided using
--with-system-editline switch.
4. icu zlib - purely windows stuff.
5. libtommath/crypt - already discussed in details.
6. SfIO - needed to build on very old solaris (10 or 9 - do not
remember, one that does not support >255 FILEs in stdio), looks like
candidat for cleanup.
7. decNumber - should be added to project and compiled as part of it
according to developers recomendation, sooner of all due to a lot of
functions that are macros actually. May be that's reason that there is
no such package in gentoo?
So you see - the only 2 remaining candidats to be taken out of extern
are btyacc and cloop, but this will not give any real use cause they are
running only at build time. Just 2 more unused after firebird built
installed packages.
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
Firebird-Devel mailing list, web interface at
https://lists.sourceforge.net/lists/listinfo/firebird-devel