[Monetdb-developers] Simple bat operations

Stefan Manegold Stefan.Manegold at cwi.nl
Fri Oct 12 15:11:34 CEST 2007


On Thu, Oct 11, 2007 at 07:46:02PM +0200, Fabian Groffen wrote:
> On 11-10-2007 19:28:28 +0200, darabi at web.de wrote:
> > Haha!
> > 
> > that was a good joke:
> > 
> > > > user at host$ mserver5 --version
> > > > MonetDB Server v5.0.0
> > > > Copyright (c) 1993-2007 CWI, all rights reserved
> > > > Compiled by: sjoerd at localhost.localdomain
> > > > Compilation: gcc -O2 -std=c99 -O6 -fomit-frame-pointer                         -finline-functions -falign-loops=4 -falign-jumps=4 -falign-functions=4 -fexpensive-optimizations                     -funroll-loops -frerun-cse-after-loop -frerun-loop-opt 
> > > > Linking:     ld -IPA -m elf_x86_64 
> > >
> > > i686 != x86_64
> > 
> > After recompiling with --enable-debug, I get exactly the same version
> > message. Then, I became suspicious because of the 'sjoerd' user and
> > looked into mserver5.c:
> > 
> > 
> > void
> > monet_version()
> > {
> >         printf("MonetDB Server v%s\n", VERSION);
> >         printf("Copyright (c) 1993-2007 CWI, all rights reserved\n");
> >         printf("Compiled by: %s\n", "sjoerd at localhost.localdomain");
> >         printf("Compilation: %s\n", "gcc -O2 -std=c99 -O6 -fomit-frame-pointer                          -finline-functions -falign-loops=4 -falign-jumps=4 -falign-functions=4 -fexp
> > ensive-optimizations                     -funroll-loops -frerun-cse-after-loop -frerun-loop-opt ");
> >         printf("Linking:     %s\n", "ld -IPA -m elf_x86_64 ");
> >         exit(0);
> > }
> > 
> > Duh! It's hard-coded!
> > 
> > But, never mind. I think I needed --enable-debug anyway.
> 
> RIGHT!!!!!!
> 
> WTF!  That is completely b0rkened!

Obviously, having .mx.in files in the CVS sources does not make much sense,
at least not in combination with source distributions (tarballs).

...

Not that "obvious" --- well, maybe a short recap of the build process helps:

1) @...@ placeholdes in .in files are replace by configure.
2) .mx files are extracted/expanded by Mx when compiling from CVS sources.
3) tarballs are supposed to be compiled w/o Mx, hence, they contain the
   Mx-extracted/-expanded files
   ("obviously" including the "hard-wired" @...@ replacements as done by the
   configure of that preceeded the building of the source tarball).

Stefan

ps: MonetDB5/src/tools/mserver5.mx.in is the only .mx.in file in our code
    base.

pps: non-.mx .in files do correctly end-up in the source tarballs and hence
     have their @...@ placeholders correctly replaced by the configure when
     compiling from the source tarball.

-- 
| Dr. Stefan Manegold | mailto:Stefan.Manegold at cwi.nl |
| CWI,  P.O.Box 94079 | http://www.cwi.nl/~manegold/  |
| 1090 GB Amsterdam   | Tel.: +31 (20) 592-4212       |
| The Netherlands     | Fax : +31 (20) 592-4312       |




More information about the developers-list mailing list