[Gambas-devel] What about cmake?

Sebastian Kulesz sebikul at ...176...
Sun Oct 13 22:43:20 CEST 2013


Both bugs have been fixed. Thanks for the feedback. Cmake now checks to see
if the .svn folder exists, not only if the svn binary exists within PATH.
PostgreSQL was one of the first modules i moved so contained some bugs
regarding inclusion paths passed to the compiler.

I will start implementing the installation macros. I can't do much without
gbx compiling, this is the error i get:

[ 10%] Building C object main/gbx/CMakeFiles/gbx.dir/gbx_replace.c.o
In file included from
/home/sebi/Builds/gambas3-cmake/main/share/gb_replace_temp.h:24:0,
                 from
/home/sebi/Builds/gambas3-cmake/main/gbx/gbx_replace.c:24:
/home/sebi/Builds/gambas3-cmake/main/share/gb_replace.h:36:6: error: tipos
en conflicto para ‘unsetenv’
 void unsetenv(const char *name);
      ^
In file included from
/home/sebi/Builds/gambas3-cmake/main/share/gb_common.h:43:0,
                 from
/home/sebi/Builds/gambas3-cmake/main/share/gb_replace.h:28,
                 from
/home/sebi/Builds/gambas3-cmake/main/share/gb_replace_temp.h:24,
                 from
/home/sebi/Builds/gambas3-cmake/main/gbx/gbx_replace.c:24:
/usr/include/stdlib.h:588:12: nota: la declaración previa de ‘unsetenv’
estaba aquí
 extern int unsetenv (const char *__name) __THROW __nonnull ((1));
            ^
In file included from
/home/sebi/Builds/gambas3-cmake/main/gbx/gbx_replace.c:24:0:
/home/sebi/Builds/gambas3-cmake/main/share/gb_replace_temp.h:67:6: error:
tipos en conflicto para ‘unsetenv’
 void unsetenv(const char *name)
      ^
In file included from
/home/sebi/Builds/gambas3-cmake/main/share/gb_common.h:43:0,
                 from
/home/sebi/Builds/gambas3-cmake/main/share/gb_replace.h:28,
                 from
/home/sebi/Builds/gambas3-cmake/main/share/gb_replace_temp.h:24,
                 from
/home/sebi/Builds/gambas3-cmake/main/gbx/gbx_replace.c:24:
/usr/include/stdlib.h:588:12: nota: la declaración previa de ‘unsetenv’
estaba aquí
 extern int unsetenv (const char *__name) __THROW __nonnull ((1));
            ^
main/gbx/CMakeFiles/gbx.dir/build.make:218: recipe for target
'main/gbx/CMakeFiles/gbx.dir/gbx_replace.c.o' failed
make[2]: *** [main/gbx/CMakeFiles/gbx.dir/gbx_replace.c.o] Error 1
CMakeFiles/Makefile2:223: recipe for target
'main/gbx/CMakeFiles/gbx.dir/all' failed
make[1]: *** [main/gbx/CMakeFiles/gbx.dir/all] Error 2
Makefile:136: recipe for target 'all' failed
make: *** [all] Error 2

----------------

I don't know if there is an easy fix, but i have to include the file
outside the gambas tree with the conflicting definition. Any thoughts?


On Sun, Oct 13, 2013 at 4:31 PM, Tobias Boege <tobias at ...692...> wrote:

> On Sun, 13 Oct 2013, Sebastian Kulesz wrote:
> > ---------- Forwarded message ----------
> > From: "Sebastian Kulesz" <sebikul at ...176...>
> > Date: Oct 13, 2013 1:03 PM
> > Subject: Re: [Gambas-devel] What about cmake?
> > To: "Beno?t Minisini" <gambas at ...1...>
> > Cc:
> >
> > Here [0] is an updated package (not up to date with trunk). Most of the
> > tree is now ported to cmake, i'm missing a few components which i had
> some
> > trouble building or finding the libraries they depend on. The code is
> much
> > cleaner now, i removed A LOT of files and symlinks. Cmake simplified a
> lot
> > the include directives.
> >
> > I need some info about the installation process for the binary
> components.
> > If possible, the exact steps autoconf executes when doing a make install
> in
> > every component.
> >
> > I'm also having a build error with gbx about an existing symbol with a
> > different declaration which is causing an error.
> >
> > I had to move, remove and change a lot of files. Please test it in your
> > system an let me know if you find a bug. As before, installation is not
> yet
> > implemented.
> >
> > Hope you mine it!
> >
> > [0] http://goo.gl/1rBMhS
>
> I just tested it. Apart from a compilation error in gb.db.postgresql (this
> may not have anything to do with your changes), the configuration process
> does not run properly if the SVN revision cannot be found (because SVN
> fails
> when cmake tries to use it to get the revision number).
>
> The archive is called "-nosvn" but the configuration simply dropped out
> with
> an error until I copy the .svn directory from my real working copy to your
> gambas3-cmake-nosvn directory. Then it worked. It's not supposed to work
> this way, right? Maybe you are developing the cmake port above an svn
> checkout and didn't notice this therefore?
>
> If you ask, I'll probably provide the information tomorrow. (I'll maybe
> have
> a look at the postgresql thing, too, as in the normal trunk/, there is no
> problem with postgresql, the component builds and installs just fine. The
> error is about a missing include, so it _may_ be related to cmake's way of
> detecting the include directory but I have no time to look at it today.)
>
> Regards,
> Tobi
>
> --
> "There's an old saying: Don't change anything... ever!" -- Mr. Monk
>
>
>
> ------------------------------------------------------------------------------
> October Webinars: Code for Performance
> Free Intel webinars can help you accelerate application performance.
> Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most
> from
> the latest Intel processors and coprocessors. See abstracts and register >
> http://pubads.g.doubleclick.net/gampad/clk?id=60134071&iu=/4140/ostg.clktrk
> _______________________________________________
> Gambas-devel mailing list
> Gambas-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gambas-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gambas-basic.org/pipermail/devel/attachments/20131013/c94a1776/attachment.html>


More information about the Devel mailing list