After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 590907 - files_general_hg: variable `NULL' is used but `NULL' is undefined
files_general_hg: variable `NULL' is used but `NULL' is undefined
Status: RESOLVED OBSOLETE
Product: glibmm
Classification: Bindings
Component: build
unspecified
Other Linux
: Normal normal
: ---
Assigned To: gtkmm-forge
gtkmm-forge
Depends on:
Blocks:
 
 
Reported: 2009-08-06 06:40 UTC by Christian Kirbach
Modified: 2009-09-03 13:22 UTC
See Also:
GNOME target: ---
GNOME version: 2.27/2.28



Description Christian Kirbach 2009-08-06 06:40:00 UTC
*** Configuring glibmm *** [1/1]
./autogen.sh --prefix /opt/gnome2 --libdir '/opt/gnome2/lib64'  --disable-static 
Found GNU make at /usr/bin/make... good.
Adding libtools.
Building macros.
Building makefiles.
files_general_hg: variable `NULL' is used but `NULL' is undefined
files_all_hg: variable `files_general_deprecated_hg' is used but `files_general_deprecated_hg' is undefined
files_all_extra_h: variable `sublib_files_extra_general_deprecated_h' is used but `sublib_files_extra_general_deprecated_h' is undefined
Comment 1 Murray Cumming 2009-08-09 21:55:53 UTC
The glibmm build is currently undergoing a huge rework and you were probably just unlucky with some intermediate work. Could you try again, please?
Comment 2 Daniel Elstner 2009-08-10 04:34:27 UTC
The errors are from the old stuff.  It is not unlikely that it may suddenly work now, as it has now changed completely.
Comment 3 Daniel Elstner 2009-08-10 05:07:47 UTC
By the way -- this is somewhat unrelated, but as I just saw this line in your output:

  ./autogen.sh --prefix /opt/gnome2 --libdir '/opt/gnome2/lib64' 

if this is on Ubuntu or any other system that does not use the lib64 directory for binaries native to the architecture, then make sure to add a line

  use_lib64 = False

to your ~/.jhbuildrc.  Also make sure that ${prefix}/lib is a real directory, and create a symlink from lib64 to lib to work around some broken packages like Python.  On the other hand, if you are on RedHat or Fedora, then the lib64 is correct.

Sorry for the side-track.  The error you are reporting here cannot possibly occur anymore with glibmm master, because I already removed the offending $(NULL). It did work before for me though, which makes me believe that you are probably using a different (and pickier) version of Automake.

I'm leaving the bug open for now, since the other branches of glibmm probably still exhibit it.
Comment 4 Christian Kirbach 2009-08-10 06:03:14 UTC
Ok so the original problem is gone, but i am stuck now here.

nazgul@rivendell:~$ jhbuild buildone glibmm
*** Checking out glibmm *** [1/1]
git pull --rebase
remote: Counting objects: 249, done.
remote: Compressing objects: 100% (51/51), done.
remote: Total 180 (delta 99), reused 180 (delta 99)
Receiving objects: 100% (180/180), 37.49 KiB | 27 KiB/s, done.
Resolving deltas: 100% (99/99), completed with 22 local objects.
From ssh://ckirbach@git.gnome.org/git/glibmm
   be416f1..ba84a26  master     -> origin/master
First, rewinding head to replay your work on top of it...
Fast-forwarded master to ba84a26bac2353d622036fac3dc03979ec3d83fc.
*** Configuring glibmm *** [1/1]
./autogen.sh --prefix /opt/gnome2 --libdir '/opt/gnome2/lib64'  --disable-static 
./autogen.sh: 5: mm-common-prepare: not found



Hmm thanks fo the hint Daniel altough I do not easily see how that behaviour would make sense. then again I am not an expert.
however your hint did not remedy:

./autogen.sh --prefix /opt/gnome2 --libdir '/opt/gnome2/lib'  --disable-static 
./autogen.sh: 5: mm-common-prepare: not found
Comment 5 Daniel Elstner 2009-08-10 07:32:18 UTC
Sorry, I have not yet pushed my changes to the jhbuild module sets to make glibmm depend on the new mm-common module.  You will have to clone mm-common manually for now. libsigc++2 master will also be needed.

Regarding my hint; yes, as I said it is unrelated to this bug. I just happened to notice it when I read your bug report, and you would likely have stumbled over that problem later on.
Comment 6 Murray Cumming 2009-08-10 08:38:33 UTC
Daniel, do you have any idea what causes this problem with NULL? A specific auto* version? I've never seen it before in all the years that we've had this build system. Christian, what distro is this?
Comment 7 Daniel Elstner 2009-08-10 09:27:22 UTC
Terminating a list with $(NULL) is just a conventional means to avoid the syntax difference at the last filename in the list, as it must not end in a backslash. You can use any empty variable for this purpose, but you also have to define it or Automake will complain, or at least it used to.

So, an "AC_SUBST([NULL], [[]])" in configure.ac, or a "NULL =" in the Makefile.am should fix the problem.  I am a bit surprised that apparently it wasn't defined in glibmm.  My guess is that Automake started to support $(NULL) directly as a special case at some point, and I am probably using a version that does that.
Comment 8 Daniel Elstner 2009-09-03 13:22:42 UTC
Doesn't apply anymore since the world changed completely in the meantime. Closing.