Created attachment 633586 [details] arangodb 3.7.0 ebuild attempt I am trying to create an ebuild for arangodb (https://www.arangodb.com/). I am basing my efforts on the ebuilds in an unmaintained overlay (https://github.com/gbevan/portage-arangodb-overlay/blob/master/dev-db/arangodb3/arangodb3-3.2.10.ebuild). However, currently my ebuild is not building yet. With this bug, I would like to get feedback on the ebuild, to get it working. Depending on how things turn out, I would like to attempt to get arangodb into the main tree, so pointers on what to do to meet the required standards are useful as well.
With the current version of the ebuild (2020-04-18 15:21 UTC), I get the following error, which I think is due to a misspecification on my part: CMake Error at cmake/FindPackageHandleStandardArgs.cmake:21 (message): Could NOT find PythonInterp: Found unsuitable version "1.4", but required is exact version "3" (found /var/tmp/portage/dev-db/arangodb-3.7.0/temp/python2.7/bin/python3) I would be grateful for any pointers on how to fix this.
I suggest to discuss this on IRC #gentoo-dev-help
Created attachment 633968 [details] arangodb 3.7.0 ebuild attempt Apparently, 3.7.0 is the first release to support/require Python 3. Changing the PYTHON_COMPAT fixed the issue described above. The ebuild doesn't result in a successful build process yet, as it now bails out with the following error: ninja: error: build.ninja:1272: bad $-escape (literal $ must be written as $$) There are also quite a number of warnings in the build configuration stage and packages, like git and perl, detected (required?) while not in de ebuild ?DEPENDS yet. Guidance could be useful here. (I will include the build log in attachment as well.)
Created attachment 633970 [details] build log for ebuild attached as 633968
Created attachment 634036 [details] arangodb 3.7.0 ebuild attempt Putting CMAKE_MAKEFILE_GENERATOR="emake" fixed the issue with ninja. (Upstream does not support ninja.) This ebuild takes the build process much further. I now get an out-of-space error: lto-wrapper: fatal error: write: No space left on device I'm building in a tmpfs of 11 GB. I do not know whether that should be enough or not. A lot of third-party packages are included (zlib, snappy, nghttp2, boost,…). Perhaps unbundling those can make the compile lighter. Pointers on how to debundle are welcome (I have no idea…).
Created attachment 634038 [details] build log for ebuild attached as 634036
Created attachment 639476 [details] arangodb 3.7.0 ebuild attempt This version of the ebuild compiles, and installs files to proper paths. Still to be done: * Test whether it actually runs… * Apply `keepdir` as needed. * Deal with warnings in the build log. * Unbundlings lots of stuff. Any help appreciated.
Created attachment 639478 [details] build log for ebuild attached as 639476
Updates to the ebuild are now done in my overlay (equaeghe): https://github.com/equaeghe/gentoo-overlay/tree/master/dev-db/arangodb Current version is 3.7.0.1
I've removed the now stale ebuild from my overlay.