Description of problem: GRASS 7.0.0 has been released, so we should update in master. Version-Release number of selected component (if applicable): 7.0.0. Additional info: http://grass.osgeo.org/news/42/15/GRASS-GIS-7-0-0/
Created attachment 1088824 [details] GRASS GIS 7.0.1 SPEC file
Attached a SPEC file for GRASS GIS 7.0.1, derived from the existing 6.4.x SPEC file. It still has some minor issues but my SPEC file knowledge is too limited to complete it.
Hi Markus, I started working on it. Getting the following error for now. Let me see what I can do. make[1]: Leaving directory '/home/devrim/Fedora/grass/master/grass-7.0.1' make real-install make[1]: Entering directory '/home/devrim/Fedora/grass/master/grass-7.0.1' mkdir -p -m 755 /home/devrim/rpmbuild/BUILDROOT/grass-7.0.1-1.fc24.x86_64/usr/grass-7.0.1 tar cBCf /home/devrim/Fedora/grass/master/grass-7.0.1/dist.x86_64-redhat-linux-gnu - . | tar xBCf /home/devrim/rpmbuild/BUILDROOT/grass-7.0.1-1.fc24.x86_64/usr/grass-7.0.1 - 2>/dev/null rm /home/devrim/rpmbuild/BUILDROOT/grass-7.0.1-1.fc24.x86_64/usr/grass-7.0.1/grass70.tmp make /usr/bin/grass70 make[2]: Entering directory '/home/devrim/Fedora/grass/master/grass-7.0.1' sed -e 's#'@GISBASE@'#'/home/devrim/rpmbuild/BUILDROOT/grass-7.0.1-1.fc24.x86_64/usr/grass-7.0.1'#g' \ -e 's#'@LD_LIBRARY_PATH_VAR@'#'LD_LIBRARY_PATH'#g' \ -e 's#'@CONFIG_PROJSHARE@'#'/usr/share/proj'#g' \ /home/devrim/Fedora/grass/master/grass-7.0.1/dist.x86_64-redhat-linux-gnu/grass70.tmp > /usr/bin/grass70 /bin/sh: /usr/bin/grass70: Permission denied include/Make/Install.make:128: recipe for target '/usr/bin/grass70' failed make[2]: *** [/usr/bin/grass70] Error 1 make[2]: Leaving directory '/home/devrim/Fedora/grass/master/grass-7.0.1' include/Make/Install.make:100: recipe for target 'real-install' failed make[1]: *** [real-install] Error 2 make[1]: Leaving directory '/home/devrim/Fedora/grass/master/grass-7.0.1' include/Make/Install.make:34: recipe for target 'install' failed make: *** [install] Error 2 error: Bad exit status from /var/tmp/rpm-tmp.wWTa4l (%install)
I got exactly the same. The trick must be around line 91 in include/Make/Install.make where UNIX_BIN is defined (which doesn't seem to contain the BUILDROOT part).
Adding ARCH_DISTDIR around make lines made some progress. I'll keep you updated.
Just FYI, we release https://grass.osgeo.org/news/50/15/GRASS-GIS-7-0-2-released/
Just FYI, we released https://grass.osgeo.org/news/50/15/GRASS-GIS-7-0-2-released/
(In reply to Devrim GÜNDÜZ from comment #5) > Adding ARCH_DISTDIR around make lines made some progress. I'll keep you > updated. Is there any update? It has been almost a year since the new major release. Might be the spec file [1] from openSUSE any help? 1: https://build.opensuse.org/package/view_file/Application:Geo/grass/grass.spec?expand=1
The(In reply to markusN from comment #4) > I got exactly the same. > > The trick must be around line 91 in include/Make/Install.make where UNIX_BIN > is defined (which doesn't seem to contain the BUILDROOT part). The error is gone if you add UNIX_BIN=${buildroot}%{_bindir} to the make install directive.
Created attachment 1132479 [details] GRASS GIS 7.0.1 SPEC file
(In reply to Thomas Kreuzer from comment #9) > The error is gone if you add > > UNIX_BIN=${buildroot}%{_bindir} > > to the make install directive. I have attached an updated grass7.spec file. Still struggling here (maybe easy to fix but I am not too familiar with SPEC files): /bin/sh: /usr/bin/grass70: Permission denied Details: mock --no-clean --rebuild ~/software/grass-7.0.1-1.fc23.src.rpm ... make install-check-writable make[1]: Entering directory '/builddir/build/BUILD/grass-7.0.1' make[1]: Leaving directory '/builddir/build/BUILD/grass-7.0.1' make install-check-prefix make[1]: Entering directory '/builddir/build/BUILD/grass-7.0.1' make[1]: Leaving directory '/builddir/build/BUILD/grass-7.0.1' make real-install make[1]: Entering directory '/builddir/build/BUILD/grass-7.0.1' mkdir -p -m 755 /builddir/build/BUILDROOT/grass-7.0.1-1.fc23.x86_64/usr/grass-7.0.1 tar cBCf /builddir/build/BUILD/grass-7.0.1/dist.x86_64-redhat-linux-gnu - . | tar xBCf /builddir/build/BUILDROOT/grass-7.0.1-1.fc23.x86_64/usr/grass-7.0.1 - 2>/dev/null rm /builddir/build/BUILDROOT/grass-7.0.1-1.fc23.x86_64/usr/grass-7.0.1/grass70.tmp make /usr/bin/grass70 make[2]: Entering directory '/builddir/build/BUILD/grass-7.0.1' sed -e 's#'@GISBASE@'#'/builddir/build/BUILDROOT/grass-7.0.1-1.fc23.x86_64/usr/grass-7.0.1'#g' \ -e 's#'@LD_LIBRARY_PATH_VAR@'#'LD_LIBRARY_PATH'#g' \ -e 's#'@CONFIG_PROJSHARE@'#'/usr/share/proj'#g' \ /builddir/build/BUILD/grass-7.0.1/dist.x86_64-redhat-linux-gnu/grass70.tmp > /usr/bin/grass70 /bin/sh: /usr/bin/grass70: Permission denied include/Make/Install.make:128: recipe for target '/usr/bin/grass70' failed make[2]: Leaving directory '/builddir/build/BUILD/grass-7.0.1' include/Make/Install.make:100: recipe for target 'real-install' failed make[2]: *** [/usr/bin/grass70] Error 1 make[1]: *** [real-install] Error 2 make: *** [install] Error 2 make[1]: Leaving directory '/builddir/build/BUILD/grass-7.0.1' include/Make/Install.make:34: recipe for target 'install' failed Some rpmbuild path is still lost.
Created attachment 1132492 [details] grass.spec
I made a few minor adjustments in a new spec file (see attachment). Maybe it works. I just started looking into spec files myself, so I am no expert by any means as well. I am currently in the process of writing the spec file from scratch, since I think some hacks from the old 6.4 spec file can be omitted now. I'll keep you updated.
Thanks for that! BTW: The sed line yet failing here is in include/Make/Install.make
Created attachment 1132863 [details] grass.spec
Howdy partners, it seems to work now, I updated the grass.spec file, and see: https://copr.fedorainfracloud.org/coprs/maligree/grass70/build/165276/ There are a few issues, namely there is no liblas support, because of: https://bugzilla.redhat.com/show_bug.cgi?id=1300860 https://bugzilla.redhat.com/show_bug.cgi?id=1313260 (duplicate) https://bugzilla.redhat.com/show_bug.cgi?id=1311953 I also couldn't include the ChangeLog and the contributors to the libs package, for some reason the build system didn't find the respective files. I also didn't include the multilib support as of yet, kind of forgot :D It is version for grass 7.0.3 (contrary to the topic headline)
Created attachment 1132918 [details] GRASS GIS 7.0.3 SPEC file based on grass.spec by Thomas with updated metadata
Thank you, as soon as https://bugzilla.redhat.com/show_bug.cgi?id=1300860 is fixed, I shall update the spec file again, for multilib and liblas support.
Created attachment 1133197 [details] Complete SPEC version Includes liblas and multilib
Ok I updated the SPEC file, it has now liblas and multilib support, it is running fine on my machine. This should be the final version, but it will currently fail without the liblas fix. Since I had grass 6.4 installed, I am not sure if I missed some Requires or something like that.
Created attachment 1133204 [details] Improvements to the last COMPLETE spec file
(In reply to Thomas Kreuzer from comment #20) > Since I had grass 6.4 installed, I am not sure if I missed some Requires or > something like that. A few dependencies were missing, I have attached the improvements to the last COMPLETE spec file as a diff.
Just FYI - New RPMs (liblas commented out due to bug #1300860) compiling at https://copr.fedorainfracloud.org/coprs/neteler/grass70/ As soon as one iostream lib compilation error is fixed https://trac.osgeo.org/grass/ticket/2956 (I don't know how to fix it as it is C++ related) it will likely also compile on EPEL and F24 + rawhide. Great work, Thomas!
Nice to hear. In regards to your diff: "desktop-file-utils" is not needed, since I removed the portion from the SPEC which used it, and "subversion" shouldn't be needed as well. At least I can't fathom why we would need it, I didn't have it on the system I built the test packages. All in all I think the "BuildRequires" were complete in my original SPEC. cairo, libglw, wxpython-devel etc. are either not needed or get automatically pulled as a side effect from the other devel packages. (The machine I built it on was a virtual machine with a clean plate) I was more worried about the "Required" part, like maybe gdal-python, python-sphinx, or wxGTK-GL or something. Since I don't have VM set up for testing a complete X environment. Regards.
(In reply to Thomas Kreuzer from comment #24) > Nice to hear. > > In regards to your diff: "desktop-file-utils" is not needed, since I removed > the portion from the SPEC which used it, and "subversion" shouldn't be > needed as well. At least I can't fathom why we would need it, I didn't have > it on the system I built the test packages. "subversion" is needed during compilation to determine the revision number: GRASS 7.0.3 (nc_spm_08_grass7):~ > g.version -g version=7.0.3 date=2016 revision=00000 <<== missing subversion at compile time build_date=2016-03-04 build_platform=x86_64-redhat-linux-gnu # for comparison, my local compilation directly from SVN, with "subversion" being installed: GRASS 7.0.4svn (nc_spm_08_grass7):~ > g.version -g version=7.0.4svn date=2016 revision=67880M build_date=2016-01-20 build_platform=x86_64-pc-linux-gnu For the rest: fine!
Comment on attachment 1133197 [details] Complete SPEC version Hallo again, I just noticed a bug in my SPEC file. Some folder and file ownerships are not correct. I will correct it on Monday, until then I better make the SPEC file obsolete. Sorry.
Created attachment 1133707 [details] grass.spec Ok, this SPEF file should be bug free and complete (including markus' patch were applicable). There is one noteable difference to the old spec file: instead of changing the directory references in many python script files, I symlinked the doc and locale directories back to GISBASE to avoid this. To me this seems to be a cleaner and easier to maintain approach in case something changes upstream.
Created attachment 1134100 [details] grass.spec Fix formatting errors.
FWIY, I have managed to compile QGIS against this new GRASS GIS 7 rpm to enable the rewritten GRASS 7 toolbox in QGIS: https://copr.fedorainfracloud.org/coprs/neteler/QGIS-2.12-Lyon/ Just FYI.
Created attachment 1134512 [details] grass.spec Good to hear! Meanwhile, I changed the SPEC again. I ditched the old GRASS 6 approach of putting the locales into the system's locale folder (Ubuntu doesn't do it either), because if I do, and make it available to GRASS, then GRASS reports all languages in the locale folder as possible to chose from for localizations, which is just wrong.
Created attachment 1134901 [details] grass.spec Small file ownership bugfix (which was present in the old 6.4 SPEC file as well). Now, I am positive this should be the last version of my SPEC file :)
(In reply to markusN from comment #29) > FWIW, I have managed to compile QGIS against this new GRASS GIS 7 rpm to > enable the rewritten GRASS 7 toolbox in QGIS: FYI - now also QGIS 2.14 with GRASS GIS 7 support: https://copr.fedorainfracloud.org/coprs/neteler/QGIS-2.14-Essen/ I really hope that your GRASS GIS spec file is picked up soon...
Thomas, Thanks for the great work. Committed your spec file: http://pkgs.fedoraproject.org/cgit/rpms/grass.git/commit/?id=9b1a1467802c00123a1382cb3be0beb9ed40cd39 I'm currently building on rawhide. As it is completed, I'll also push it for Fedora 24. Regards, Devrim
This is good news! Thank you very much. However, GRASS is still without libLAS support. Maybe you could push the libLAS package first [1], and then you could build GRASS with libLAS?! Regards! 1: https://bugzilla.redhat.com/show_bug.cgi?id=1311953
Created attachment 1136675 [details] grass.spec Hi again, I almost forgot, but as per comment 23, I got the package to successfully compile under rawhide, with this new SPEC file. On a different topic: I also reintroduced two fixes from the old 6.4 SPEC file, which seem to be needed after all. libLAS support is still commented out so far.
Ok, pushed the new spec along with a few rpmlint fixes. The package is built successfully now, with liblas support (yes, pushed new liblas, too) If you have further improvements, please send your patch against master, per the rpmlint fixes. Closing this. Thanks again! Regards, Devrim
Would you mind to push 7.0.3 also to F24? Thanks!