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 347469 - DBUS_API_SUBJECT_TO_CHANGE causes build to fail
DBUS_API_SUBJECT_TO_CHANGE causes build to fail
Status: RESOLVED FIXED
Product: gnome-vfs
Classification: Deprecated
Component: Build
cvs (head)
Other All
: Normal normal
: ---
Assigned To: gnome-vfs maintainers
gnome-vfs maintainers
: 348368 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2006-07-14 01:08 UTC by YunSong Hwang
Modified: 2008-12-04 13:58 UTC
See Also:
GNOME target: ---
GNOME version: 2.15/2.16



Description YunSong Hwang 2006-07-14 01:08:44 UTC
Please describe the problem:
I installed dbus-0.60 & 0.622

usr/include/dbus-1.0/dbus/dbus.h:30:2: error: #error "Please define DBUS_API_SUBJECT_TO_CHANGE to acknowledge your understanding that D-BUS hasn't reached 1.0 and is subject to protocol and API churn. See the README for a full explanation."

Same Error

Steps to reproduce:
1. 
2. 
3. 


Actual results:


Expected results:


Does this happen every time?


Other information:
Comment 1 Christian Kellner 2006-07-14 09:47:21 UTC
It compiles just fine here. Can you give me the build log (the part where it fails?). I need to know which file. 
Comment 2 YunSong Hwang 2006-07-17 06:48:26 UTC
make  all-am
make[3]: Entering directory `/home/hys545/GNOME/Cvs/gnome-vfs/libgnomevfs'
if /bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I.. -pthread -DORBIT2=1 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/gconf/2 -I/usr/include/orbit-2.0 -I/usr/include/libxml2 -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include   -I/usr/kerberos/include      -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include   -Wall -Werror  -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes   -Wnested-externs -Wpointer-arith -Wno-strict-aliasing -Wno-sign-compare  -DXDG_PREFIX=_gnome_vfs_xdg -D_FILE_OFFSET_BITS=64 -D_BSD_SOURCE -D_LARGEFILE64_SOURCE -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -DG_DISABLE_DEPRECATED -DGNOME_VFS_PREFIX=\"/usr/local\" -DGNOME_VFS_BINDIR=\"/usr/local/bin\" -DGNOME_VFS_DATADIR=\"/usr/local/share\" -DGNOME_VFS_LIBDIR=\"/usr/local/lib\" -DGNOME_VFS_LOCALEDIR=\"/usr/local/share/locale\" -DGNOME_VFS_SYSCONFDIR=\"/usr/local/etc\" -DG_LOG_DOMAIN=\"libgnomevfs\"     -g -O2 -MT gnome-vfs-cancellation.lo -MD -MP -MF ".deps/gnome-vfs-cancellation.Tpo" -c -o gnome-vfs-cancellation.lo gnome-vfs-cancellation.c; \
then mv -f ".deps/gnome-vfs-cancellation.Tpo" ".deps/gnome-vfs-cancellation.Plo"; else rm -f ".deps/gnome-vfs-cancellation.Tpo"; exit 1; fi
 gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I.. -pthread -DORBIT2=1 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/gconf/2 -I/usr/include/orbit-2.0 -I/usr/include/libxml2 -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I/usr/kerberos/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -Wall -Werror -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wno-strict-aliasing -Wno-sign-compare -DXDG_PREFIX=_gnome_vfs_xdg -D_FILE_OFFSET_BITS=64 -D_BSD_SOURCE -D_LARGEFILE64_SOURCE -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -DG_DISABLE_DEPRECATED -DGNOME_VFS_PREFIX=\"/usr/local\" -DGNOME_VFS_BINDIR=\"/usr/local/bin\" -DGNOME_VFS_DATADIR=\"/usr/local/share\" -DGNOME_VFS_LIBDIR=\"/usr/local/lib\" -DGNOME_VFS_LOCALEDIR=\"/usr/local/share/locale\" -DGNOME_VFS_SYSCONFDIR=\"/usr/local/etc\" -DG_LOG_DOMAIN=\"libgnomevfs\" -g -O2 -MT gnome-vfs-cancellation.lo -MD -MP -MF .deps/gnome-vfs-cancellation.Tpo -c gnome-vfs-cancellation.c  -fPIC -DPIC -o .libs/gnome-vfs-cancellation.o
In file included from ./gnome-vfs-dbus-utils.h:30,
                 from gnome-vfs-cancellation.c:30:
/usr/include/dbus-1.0/dbus/dbus.h:30:2: error: #error "Please define DBUS_API_SUBJECT_TO_CHANGE to acknowledge your understanding that D-BUS hasn't reached 1.0 and is subject to protocol and API churn. See the README for a full explanation."
make[3]: *** [gnome-vfs-cancellation.lo] Error 1
make[3]: Leaving directory `/home/hys545/GNOME/Cvs/gnome-vfs/libgnomevfs'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/hys545/GNOME/Cvs/gnome-vfs/libgnomevfs'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/hys545/GNOME/Cvs/gnome-vfs'
make: *** [all] Error 2
[hys545@localhost gnome-vfs]$                                         
Comment 3 Christian Kellner 2006-07-23 09:28:28 UTC
*** Bug 348368 has been marked as a duplicate of this bug. ***
Comment 4 Christian Kellner 2006-07-23 09:30:42 UTC
So which OS or compiler is this? When looking at the file there is:

#ifndef DBUS_API_SUBJECT_TO_CHANGE
#define DBUS_API_SUBJECT_TO_CHANGE
#endif

maybe chaning the define line to "#define DBUS_API_SUBJECT_TO_CHANGE 1" would help. Can someone test?
Comment 5 Lupine 2006-07-23 15:16:11 UTC
Hmmm, what an annoying little bug.  The file originally said:

/usr/include/dbus-1.0/dbus/dbus.h
---------------------------------------------
#ifndef DBUS_API_SUBJECT_TO_CHANGE
#error "Please define DBUS_API_SUBJECT_TO_CHANGE to acknowledge your understanding that D-BUS hasn't reached 1.0 and is subject to protocol and API churn. See the README for a full explanation."
#endif
---------------------------------------------

I changed it to just say:

#define DBUS_API_SUBJECT_TO_CHANGE 1

...and this allowed gnome-vfs to compile correctly.  Wonder why only a few of us are seeing this issue?

I'm currently running dbus-0.62 (but I've also noticed that line was in dbus-0.50)
currenlty running Gnome-2.14.2
gcc (GCC) 4.0.3

Thanks for the tip, I'm continuing on my install now.
Comment 6 Christian Kellner 2006-07-23 16:31:35 UTC
Ok, I changed cvs head to always define DBUS_API_SUBJECT_TO_CHANGE 1 which should make your compiler happy. Thanks for the testing. 
Comment 7 YunSong Hwang 2006-07-24 00:49:45 UTC
I failed Build on Cvs-2006-7-24

 
In file included from ./gnome-vfs-dbus-utils.h:30,
                 from gnome-vfs-cancellation.c:30:
/usr/include/dbus-1.0/dbus/dbus.h:30:2: error: #error "Please define DBUS_API_SUBJECT_TO_CHANGE to acknowledge your understanding that D-BUS hasn't reached 1.0 and is subject to protocol and API churn. See the README for a full explanation."
make[1]: *** [gnome-vfs-cancellation.lo] Error 1
make[1]: Leaving directory `/home/hys545/GNOME/Cvs/gnome-vfs/libgnomevfs'
make: *** [all] Error 2


In file included from gnome-vfs-volume-monitor-private.h:29,
                 from gnome-vfs-dbus-utils.c:30:
/usr/include/dbus-1.0/dbus/dbus.h:30:2: error: #error "Please define DBUS_API_SUBJECT_TO_CHANGE to acknowledge your understanding that D-BUS hasn't reached 1.0 and is subject to protocol and API churn. See the README for a full explanation."
make[1]: *** [gnome-vfs-dbus-utils.lo] Error 1

n file included from gnome-vfs-volume-monitor-private.h:29,
                 from gnome-vfs-drive.c:29:
/usr/include/dbus-1.0/dbus/dbus.h:30:2: error: #error "Please define DBUS_API_SUBJECT_TO_CHANGE to acknowledge your understanding that D-BUS hasn't reached 1.0 and is subject to protocol and API churn. See the README for a full explanation."
make[1]: *** [gnome-vfs-drive.lo] Error 1
make[1]: Leaving directory `/home/hys545/GNOME/Cvs/gnome-vfs/libgnomevfs'
make: *** [all] Error 2

In file included from gnome-vfs-volume-monitor-private.h:29,
                 from gnome-vfs-init.c:36:
/usr/include/dbus-1.0/dbus/dbus.h:30:2: error: #error "Please define DBUS_API_SUBJECT_TO_CHANGE to acknowledge your understanding that D-BUS hasn't reached 1.0 and is subject to protocol and API churn. See the README for a full explanation."
make[1]: *** [gnome-vfs-init.lo] Error 1
make[1]: Leaving directory `/home/hys545/GNOME/Cvs/gnome-vfs/libgnomevfs'
make: *** [all] Error 2

In file included from gnome-vfs-module-callback-private.h:29,
                 from gnome-vfs-job.c:36:
/usr/include/dbus-1.0/dbus/dbus.h:30:2: error: #error "Please define DBUS_API_SUBJECT_TO_CHANGE to acknowledge your understanding that D-BUS hasn't reached 1.0 and is subject to protocol and API churn. See the README for a full explanation."
make[1]: *** [gnome-vfs-job.lo] Error 1
make[1]: Leaving directory `/home/hys545/GNOME/Cvs/gnome-vfs/libgnomevfs'
make: *** [all] Error 2


In file included from gnome-vfs-module-callback-private.h:29,
                 from gnome-vfs-job.c:36:
/usr/include/dbus-1.0/dbus/dbus.h:30:2: error: #error "Please define DBUS_API_SUBJECT_TO_CHANGE to acknowledge your understanding that D-BUS hasn't reached 1.0 and is subject to protocol and API churn. See the README for a full explanation."
make[1]: *** [gnome-vfs-job.lo] Error 1
make[1]: Leaving directory `/home/hys545/GNOME/Cvs/gnome-vfs/libgnomevfs'
make: *** [all] Error 2

In file included from gnome-vfs-daemon-method.h:27,
                 from gnome-vfs-method.c:35:
/usr/include/dbus-1.0/dbus/dbus.h:30:2: error: #error "Please define DBUS_API_SUBJECT_TO_CHANGE to acknowledge your understanding that D-BUS hasn't reached 1.0 and is subject to protocol and API churn. See the README for a full explanation."
make[1]: *** [gnome-vfs-method.lo] Error 1
make[1]: Leaving directory `/home/hys545/GNOME/Cvs/gnome-vfs/libgnomevfs'
make: *** [all] Error 2

In file included from gnome-vfs-module-callback-private.h:29,
                 from gnome-vfs-module-callback-marshall.c:30:
/usr/include/dbus-1.0/dbus/dbus.h:30:2: error: #error "Please define DBUS_API_SUBJECT_TO_CHANGE to acknowledge your understanding that D-BUS hasn't reached 1.0 and is subject to protocol and API churn. See the README for a full explanation."
make[1]: *** [gnome-vfs-module-callback-marshall.lo] Error 1
make[1]: Leaving directory `/home/hys545/GNOME/Cvs/gnome-vfs/libgnomevfs'
make: *** [all] Error 2

In file included from gnome-vfs-volume-monitor-client.h:32,
                 from gnome-vfs-volume-monitor-client.c:30:
/usr/include/dbus-1.0/dbus/dbus.h:30:2: error: #error "Please define DBUS_API_SUBJECT_TO_CHANGE to acknowledge your understanding that D-BUS hasn't reached 1.0 and is subject to protocol and API churn. See the README for a full explanation."
make[1]: *** [gnome-vfs-volume-monitor-client.lo] Error 1
make[1]: Leaving directory `/home/hys545/GNOME/Cvs/gnome-vfs/libgnomevfs'
make: *** [all] Error 2

Comment 8 Christian Kellner 2006-07-24 06:40:52 UTC
Did you check and make sure that you have the changes I made (ano-cvs is behind sometimes). If yes, I will look again!
Comment 9 YunSong Hwang 2006-07-26 00:51:08 UTC
My Command:

rm -Rf gnome-vfs
export CVSROOT=:pserver:anonymous@anoncvs.gnome.org:/cvs/gnome
cvs co gnome-vfs
cd gnome-vfs
./autogen.sh
./configure
make


Comment 10 Kalle Vahlman 2006-07-27 17:59:35 UTC
My Debian Sarge's gcc 3.3.5 fails too, on lot of files.

Currently cvs diff says I had to put it in 16 files :/ though that number could be lower if double-checked where it really needs to be done (I just went through all .c:s that did not compile and added it to the top...).


Want me to clean up and attach a patch?
Comment 11 Daniel Macks 2006-07-27 18:18:11 UTC
Instead of adding it to all the .c, might be easier (and less annoying to maintain) to just add a -D flag to the Makefile.am (or even configure.in).
Comment 12 Christian Neumair 2006-08-11 21:36:18 UTC
2006-08-07  Alexander Larsson  <alexl@redhat.com>

        * daemon/Makefile.am:
        * libgnomevfs/Makefile.am:
        Define DBUS_API_SUBJECT_TO_CHANGE


Thanks for your efforts.