commit:     cbddf475ce279474be6138873223f0e751af6183
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Dec  3 07:16:31 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Dec  3 07:47:51 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cbddf475

dev-db/firebird: incorporate suggestions to 3.0.10

Includes Thomas J. Moore's suggestions & patches.

Bug: https://bugs.gentoo.org/757282
Closes: https://bugs.gentoo.org/648956
Closes: https://bugs.gentoo.org/726856
Thanks-to: Thomas J. Moore <darktjm <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-db/firebird/Manifest                           | 15 ++++++
 .../files/firebird-3.0.10.33601.0-flags.patch      | 25 +++++++++
 ....0.ebuild => firebird-3.0.10.33601.0-r1.ebuild} | 63 ++++++++++++----------
 3 files changed, 76 insertions(+), 27 deletions(-)

diff --git a/dev-db/firebird/Manifest b/dev-db/firebird/Manifest
index f1ba268e1bd6..db16ce7c41f4 100644
--- a/dev-db/firebird/Manifest
+++ b/dev-db/firebird/Manifest
@@ -1,3 +1,18 @@
 DIST Firebird-3.0.10.33601-0.tar.bz2 13270269 BLAKE2B 
1c30b002525287b239a6e24e59f146fdb61e1a9880cf66f2c59605b9f2a28c42603e21b2c5275e03a319af24c18f8fa5a7fa73f34c9a0d6c19e36e69864ad122
 SHA512 
0297a191ea1d0eda9557519d8ce6b7686cc3698a98b9c6c00547c2d36bf098083ae9d34b61614a7232b6195344bea1d66d2cbd3b092844b11f5b139162f8f886
 DIST Firebird-3.0.4.33054-0.tar.bz2 9778106 BLAKE2B 
4b9116cbc351e0c2e10d15e6ea8e9754a383da77d8e016337604143eb2677ff2519da34b1a5c2e9b7b071fa9774eddbb535e9f926058ee626573b0411f6c042d
 SHA512 
a346ebd53aeccf0b33eac5d35c3c3356624c1fbd0ad897173b3f68d940143062b28460a2822df807e8e8a1ea8792ebf98ed33e5b3ae273d86e6e36295a7fc8ad
+DIST firebird-3-quickstartguide.pdf 392796 BLAKE2B 
ef867664d107a9ee6dba3d724a5696fafe07a84305f1827dbeb5acf33d54aada45fad4e37971419fc7c26dba9b99577844a33c6e566485059329a8717fa79c1d
 SHA512 
480ed2e79f83741c5b0b268f07e1ac1e317fbd9572a6e646411dc7fb94e5f44187e90d50b6ce761fc5e562e5ad2abafe89b2766e651eb7a36dbcb9ed49c3289f
+DIST firebird-30-developers-guide.pdf 1747057 BLAKE2B 
9bde38dd5e997fec7fe69ada2ab1d74b0d59c440dd7a67d49e87a9464d7955f3766dde63aa60caf3e320759c934ec9f4088deed06cfae1b98e4d7ae6de364f02
 SHA512 
6a2a5ba1334e4a45839a950dd7b9c0a136b71a7626212b8aad5d173e8afd9a89c20ae51bdc5d309ebc206e0ac5af79138c28a10c64585d6f51c497e784445760
+DIST firebird-30-language-reference.pdf 3130464 BLAKE2B 
975550c77e1b9cfcd53eef023781f1a1bc2282b7ba7bcedd57027399cbd44ad06c35d3f58bdcb2bdb953abe8ab948149ea9c284bc37eb35770dd57369f6838cd
 SHA512 
9f17737733e2dd6e3a3f367c97c7053508621bc97b37b16ba36e6fe3554bf60363e3c06bf55ac6703d65e66039da7c16b71b70187c45b2206f6191c543cc1e95
+DIST firebird-fbmgr.pdf 151933 BLAKE2B 
b57394745a90732ee74f86d903690e0906be4bd5da5663ef28bd6959eb96f2d0f712cc06079a9730d9efa58e75258673b77b7b72db7897928632d315ffe1b5e1
 SHA512 
68b255d0de427df071400097f95205b8417c358e66a80c91d068b5e567f0a210c5494598cce871c83564cfbcd04b2f805cb53074a933ef963e94f1d1552ea2c9
+DIST firebird-gbak.pdf 196327 BLAKE2B 
c79e360a58c79c39e87b84b2653bd5fad1b1d45df8f02c8b6279277ea32b191533be52146ce8c03c3858ea86d23300c00d6eb31c30f0d6b466b5131aac4a7d54
 SHA512 
8a58adf94ea93bf51e55c7a0fd3adb7b6fc1f5fcaf71e29934f7bc192b5cac7dbd97113acf2ecda36df5470de5ee20f0100b65ab2b260a2194b846c52e0d816f
+DIST firebird-generator-guide.pdf 172298 BLAKE2B 
a923cc6aa5bab82b40d49b255d5ed2482e30f390ae76bffcd51294f9ee2000b827696bcb15b5bc5d9224a5650faf195daf89938c73ebce22d1e31411522c5800
 SHA512 
a043b84a1e7dff6b240b4786de7155fce266091d11f2a088e6864087e7d24c42cc70e44816d6abebf003feccf2676f9f8bbbb612b00db00366aead01f7e08c00
+DIST firebird-gfix.pdf 250034 BLAKE2B 
2073f5348d6bd5989ba2496aa59865bf107e08c7a8a4058866a53b482f5f8012d9f6877e7ceb5cbe42d1587d8d29f1fa6622f3e5842d241eeca8da1ae5afcb4b
 SHA512 
2f8de1fe4b45012c0d08e9e5d85d9ed1269629ac95c1ede5a9c8ae69aa69570ebfebe0f313ba54d6f00e785818f8801831c581be8b5ab427b189d3857a2b73fc
+DIST firebird-gsec.pdf 146403 BLAKE2B 
f20ddaee95c968df7b348ef5516ea53e3e6e866fdb2848951bd3ae5ed68e491360a24b6fbd71e2cf8fd03555284bf60bf0623db11d7b2569050fd022716eea55
 SHA512 
e930da593a9c0a8cdc0a669012c73b05e5844fe946807308bbe5e7a8ccd9a98261c7f4690fa7e07cfb39930359e30fdbfbe9c012565bf279a3471badf5eb46fa
+DIST firebird-gsplit.pdf 106100 BLAKE2B 
fd1e7edf7e6ea9556594395602739daa51253becf61db011548d763782ae57c5a2618ed79b91faf94264c1c0faff643f3941b6be0912c57e5d4b75d22ad5defa
 SHA512 
70dafc072a1265ee9db63902b58e52833ea2c7482a12030ac13c35e51e3b94dde746090a7a02060475bf85d5170348207816e3997102fd4e33820c695d7d3e57
+DIST firebird-gstat.pdf 162939 BLAKE2B 
c63825c52f85020c095b90e8482a6e5f38c752178b135331268b5c2800fcfe3a035ccc68c14b83219bff1cb864c9f405e851e64f44919854e7e8e7290f4ad94d
 SHA512 
c711122d9d020505f8475cda5b3621361a4d48cc39545a5e840430f43cb4dd7c97280a91085499547c95ce4cf9229b4ffec0f68c008fc04d7918b14fb7b8ec8a
+DIST firebird-isql.pdf 369327 BLAKE2B 
3ea02b7a7b97bf231d43906f2fc8feb79aba525f1cb642da834c68c436d81d2f4408bcfe287d4ace089d6f37d9b3c8dc002fa98121fe2819c27c7840482ca91c
 SHA512 
5f85a7ef98ab68df08c1225efab5859e988e63c3c3083e2320966cc4bf0976f9bbb4bea43906752f1710c860b33dae92c118ce13217ba61ee3ee9b0052204a3c
+DIST firebird-metadata-security.pdf 117765 BLAKE2B 
67075db42cca196f019eef15fd2474be6d92353f0697b134ee5d3bb1e4cc6cd5c38cd978236f289d6c9cc300d9ebc5ee856ad871f1bd1816b7d92d46ee0cffe3
 SHA512 
8f24ff48ff177fdd98dfc1272f43de979fc405139475bd630a8f1c10feaf773425c85704194b8245235c2c61c0f7ebaf9d0d1741b68323146630a1361ed478a4
+DIST firebird-nbackup.pdf 202108 BLAKE2B 
5ee794890f69935ec238d946649d05a72c3108674781af546e279e3d6cbbb82bbf81789270ad284a365f05cc6fdbca108baf86c5cb4eeacd242960e12e54d6b2
 SHA512 
c8e83a8e2bf23f3bcb17277b07eb822d1ae2ed412d6d1881f60c7c3003f60f1b6fe09e5dd52367c62a9311f9a7057fe4c85dd0c64a93554556f31cefc45e18c1
+DIST firebird-null-guide.pdf 487359 BLAKE2B 
346d942b7d4780496c2c212433660415437f6b17a42bb109aaf1cd8a8de31a394a1d2a3b52bb6dc1c3830bc839a692b611c7fe3289243e86ab874a84d989a7b8
 SHA512 
b5b9981a3f15fe933a44deb001d1d85b0dc340ae0ff55e79d160da8590406515f0ba73360a3904556aa36d94cdafb17fe2452b5f63138cb1f585d70842511cd3
 DIST ib_b60_doc.zip 10530848 BLAKE2B 
b4008b3e8b0416014d024cbbc9ac2e648ad671c71b91b7aeb0eedf0f8479aef80e22aff7105c5e7417e88bcf57f2cdacbc2d5f51a2ef7fb870f9d361c5f0ed6d
 SHA512 
59eccf1d6b1f0410eddbc5967fd77a3d00e09749640b3f81e2f8b624f5a45461dffad4af5ec61488e941fb3d3af266fe86c0b56e6b7e023239537cb6557a145a
+DIST using-firebird.pdf 236646 BLAKE2B 
54b296ac8c6281ff501678a24dac76e203a66e569b1cda7dc475a7fe9bbed9fc03923377c320a621a225d0277fc68cfb9820514d3f12191902cdeb18ccb87270
 SHA512 
ec16c33082524aa5df8907c1143a8707f1193c42882956c220e6c95442d43751ec3e2ba77ded004866f7dab7f58ecf4fac3a0027cf89ec7536c0771260f09cc4

diff --git a/dev-db/firebird/files/firebird-3.0.10.33601.0-flags.patch 
b/dev-db/firebird/files/firebird-3.0.10.33601.0-flags.patch
new file mode 100644
index 000000000000..a0ecef4693c4
--- /dev/null
+++ b/dev-db/firebird/files/firebird-3.0.10.33601.0-flags.patch
@@ -0,0 +1,25 @@
+# Compile externs with same CXX/CC/CFLAGS/CXXFLAGS/LDFLAGS as main
+--- a/builds/posix/Makefile.in
++++ b/builds/posix/Makefile.in
+@@ -127,8 +127,8 @@
+ endif
+ 
+ extern:
+-      $(MAKE) -C $(ROOT)/extern/btyacc
+-      $(MAKE) -C $(ROOT)/extern/cloop TARGET=release WITH_FPC=0 
BUILD_DIR=$(TMP_ROOT)/cloop OUT_DIR=$(GEN_ROOT)/$(TARGET)/cloop
++      $(MAKE) -C $(ROOT)/extern/btyacc CC="$(CC)" CFLAGS="$(CFLAGS)" 
LDFLAGS="$(LDFLAGS)"
++      $(MAKE) -C $(ROOT)/extern/cloop TARGET=release WITH_FPC=0 
BUILD_DIR=$(TMP_ROOT)/cloop OUT_DIR=$(GEN_ROOT)/$(TARGET)/cloop CXX="$(CXX)" 
CXXFLAGS="$(OPTIMIZE_FLAGS)" CFLAGS="${CFLAGS}" CC="${CC}" LDFLAGS="$(LDDFLAGS)"
+ 
+ ifeq ($(TOMBUILD_FLG),Y)
+       $(MAKE) -C $(ROOT)/extern/libtommath -f makefile.shared 
LIBTOOL=$(LIBTOOL)
+@@ -592,8 +592,8 @@
+       $(EXE_LINK) $(EXE_LINK_OPTIONS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) 
$(LINK_LIBS) $(call LINK_DARWIN_RPATH,..)
+ 
+ examples: include_generic
+-      $(MAKE) -f Makefile.examples -C $(GEN_ROOT)/examples/
+-      $(MAKE) -f Makefile.plugins_examples
++      $(MAKE) -f Makefile.examples -C $(GEN_ROOT)/examples/ CXX="${CXX}" 
CXXFLAGS="${CXXFLAGS}" LDFLAGS="${LDFLAGS}"
++      $(MAKE) -f Makefile.plugins_examples CXX="${CXX}" 
CXXFLAGS="${CXXFLAGS}" LDFLAGS="${LDFLAGS}"
+ 
+ message_file: $(FIREBIRD_MSG)
+ 

diff --git a/dev-db/firebird/firebird-3.0.10.33601.0.ebuild 
b/dev-db/firebird/firebird-3.0.10.33601.0-r1.ebuild
similarity index 72%
rename from dev-db/firebird/firebird-3.0.10.33601.0.ebuild
rename to dev-db/firebird/firebird-3.0.10.33601.0-r1.ebuild
index bb52d1549c92..61f61df905da 100644
--- a/dev-db/firebird/firebird-3.0.10.33601.0.ebuild
+++ b/dev-db/firebird/firebird-3.0.10.33601.0-r1.ebuild
@@ -8,9 +8,26 @@ inherit autotools flag-o-matic
 
 DESCRIPTION="Relational database offering many ANSI SQL:2003 and some SQL:2008 
features"
 HOMEPAGE="https://www.firebirdsql.org/";
+
 SRC_URI="
        https://github.com/FirebirdSQL/firebird/releases/download/v$(ver_cut 
1-3)/${MY_P}.tar.bz2
-       doc? ( ftp://ftpc.inprise.com/pub/interbase/techpubs/ib_b60_doc.zip )
+       doc? (
+               
https://firebirdsql.org/file/documentation/pdf/en/refdocs/fblangref30/firebird-30-language-reference.pdf
+               
https://firebirdsql.org/file/documentation/pdf/en/firebirddocs/qsg3/firebird-3-quickstartguide.pdf
+               
https://firebirdsql.org/file/documentation/pdf/en/refdocs/fbdevgd30/firebird-30-developers-guide.pdf
+               
https://firebirdsql.org/file/documentation/pdf/en/firebirddocs/isql/firebird-isql.pdf
+               
https://firebirdsql.org/file/documentation/pdf/en/firebirddocs/gsec/firebird-gsec.pdf
+               
https://firebirdsql.org/file/documentation/pdf/en/firebirddocs/gbak/firebird-gbak.pdf
+               
https://firebirdsql.org/file/documentation/pdf/en/firebirddocs/nbackup/firebird-nbackup.pdf
+               
https://firebirdsql.org/file/documentation/pdf/en/firebirddocs/gstat/firebird-gstat.pdf
+               
https://firebirdsql.org/file/documentation/pdf/en/firebirddocs/gfix/firebird-gfix.pdf
+               
https://firebirdsql.org/file/documentation/pdf/en/firebirddocs/fbmgr/firebird-fbmgr.pdf
+               
https://firebirdsql.org/file/documentation/pdf/en/firebirddocs/gsplit/firebird-gsplit.pdf
+               
https://firebirdsql.org/file/documentation/pdf/en/firebirddocs/generatorguide/firebird-generator-guide.pdf
+               
https://firebirdsql.org/file/documentation/pdf/en/firebirddocs/nullguide/firebird-null-guide.pdf
+               
https://firebirdsql.org/file/documentation/pdf/en/firebirddocs/fbmetasecur/firebird-metadata-security.pdf
+               
https://firebirdsql.org/file/documentation/pdf/en/firebirddocs/ufb/using-firebird.pdf
+       )
 "
 S="${WORKDIR}/${MY_P}"
 
@@ -19,7 +36,6 @@ SLOT="0"
 KEYWORDS="~amd64 ~x86"
 IUSE="doc examples +server xinetd"
 
-# FIXME: btyacc?
 BDEPEND="
        doc? ( app-arch/unzip )
 "
@@ -39,6 +55,7 @@ RDEPEND="
 
 PATCHES=(
        "${FILESDIR}"/${PN}-3.0.10.33601.0-unbundle.patch
+       "${FILESDIR}"/${PN}-3.0.10.33601.0-flags.patch
        "${FILESDIR}"/${P}-configure-autoconf2.72.patch
        "${FILESDIR}"/${P}-configure-clang16.patch
 )
@@ -60,16 +77,6 @@ check_sed() {
        [[ $1 -ge $2 ]] || die "${MSG}"
 }
 
-src_unpack() {
-       unpack "${MY_P}.tar.bz2"
-       if use doc; then
-               # Unpack docs
-               mkdir "manuals" || die
-               cd "manuals" || die
-               unpack ib_b60_doc.zip
-       fi
-}
-
 src_prepare() {
        default
 
@@ -84,10 +91,14 @@ src_prepare() {
                -e 's:ISQL :FBSQL :w /dev/stdout' \
                src/msgs/messages2.sql | wc -l)" "6" "src/msgs/messages2.sql" # 
6 lines
 
+       # use gentoo's CXXFLAGS instead of whatever firebird decided on
+       # doesn't replace all firebird's CXXFLAGS, but at least this is last,
+       # so it can do some overrides
+       sed -i -e "/OPTIMIZE_FLAGS=/s/=.*/=${CXXFLAGS}/" builds/posix/prefix.*
+
        find . -name \*.sh -exec chmod +x {} + || die
-       # TODO: unbundle btyacc again
+       # firebird's patched btyacc is needed now as of
        # 
https://github.com/FirebirdSQL/firebird/commit/9aab6ed8cc6872e2ebc6bfa2531e089cb96e8305#diff-a01303d63fcb967bea34359c3c7f79e4356d6549ab22a1a9190e8020c0b33a3d
-       # breaks usage of system copy.
        rm -r extern/{editline,icu} || die
 
        eautoreconf
@@ -96,14 +107,6 @@ src_prepare() {
 src_configure() {
        tc-export PKG_CONFIG
 
-       filter-flags -fprefetch-loop-arrays
-       filter-mfpmath sse
-
-       # otherwise this doesnt build with gcc-6
-       # http://tracker.firebirdsql.org/browse/CORE-5099
-       append-cflags -fno-sized-deallocation -fno-delete-null-pointer-checks
-       append-cxxflags -fno-sized-deallocation -fno-delete-null-pointer-checks 
-std=c++11
-
        local myeconfargs=(
                --prefix=/usr/$(get_libdir)/firebird
                --with-editline
@@ -115,13 +118,13 @@ src_configure() {
                --with-fbinclude=/usr/include
                --with-fbdoc=/usr/share/doc/${PF}
                --with-fbudf=/usr/$(get_libdir)/${PN}/UDF
-               --with-fbsample=/usr/share/doc/${PF}/examples
-               --with-fbsample-db=/usr/share/doc/${PF}/examples/db
-               --with-fbhelp=/usr/$(get_libdir)/${PN}/help
+               --with-fbsample=/usr/share/${PN}/examples
+               --with-fbsample-db=/usr/share/${PN}/examples/empbuild
+               --with-fbhelp=/usr/share/${PN}/help
                --with-fbintl=/usr/$(get_libdir)/${PN}/intl
                --with-fbmisc=/usr/share/${PN}
                --with-fbsecure-db=/etc/${PN}
-               --with-fbmsg=/usr/$(get_libdir)/${PN}
+               --with-fbmsg=/usr/share/${PN}/msg
                --with-fblog=/var/log/${PN}/
                --with-fbglock=/var/run/${PN}
                --with-fbplugins=/usr/$(get_libdir)/${PN}/plugins
@@ -135,7 +138,13 @@ src_configure() {
 src_install() {
        if use doc; then
                dodoc -r doc
-               find "${WORKDIR}"/manuals -type f -iname "*.pdf" -exec dodoc 
'{}' + || die
+
+               local x
+               for x in ${A}; do
+                       if [[ ${x} == *.pdf ]] ; then
+                               dodoc "${DISTDIR}"/${x}
+                       fi
+               done
        fi
 
        cd "${S}/gen/Release/${PN}" || die

Reply via email to