Old style headers

Alexander Neundorf neundorf at kde.org
Mon Jun 16 20:24:37 CEST 2008


On Monday 16 June 2008, Alexander Neundorf wrote:
> On Monday 16 June 2008, Andreas Pakulat wrote:
> > On 16.06.08 00:35:09, Alexander Neundorf wrote:
> > > On Sunday 15 June 2008, Andreas Pakulat wrote:
> > > > On 15.06.08 16:56:33, Allen Winter wrote:
> > > > > On Sunday 15 June 2008 16:15:38 David Johnson wrote:
> > > > > > p.s. I did not realize that the old style lowercase headers were
> > > > > > a political issue. I apologize for bringing up this topic. Shall
> > > > > > I revert the few changes I have made?
> > > > >
> > > > > Don't revert.
> > > > >
> > > > > This isn't a political issue... well it is sorta.  Some people
> > > > > don't like using the forwarding headers were they aren't required
> > > > > because that makes compiling slower.
> > > > >
> > > > > But is an issue of having to take the time to fix something
> > > > > that shouldn't need fixing.
> > > > >
> > > > > I wonder if their is a simple "if(FreeBSD)"  hack we can put
> > > > > high up in the buildsystem to alleviate this problem??
> > > >
> > > > Well, the following woud work as long as nobody uses
> > > >
> > > > #include <QtCore/qobject.h>
> > > >
> > > > or similar. In our FindQt4.cmake the include-dir needs to get the
> > > > order:
> > > >
> > > > <QtCore-includedir>:<QtGui-includedir>:...:<general-Qt-includedir>
> > > >
> > > > which would result in:
> > > >
> > > > /usr/local/include/QtCore:/usr/local/include/QtGui:...:/usr/local/inc
> > > >lu de
> > > >
> > > > for David.
> > > >
> > > > Cc'ing buildsystem to ask wether that (re-ordering the include paths
> > > > so that the general Qt4-includedir is after those for the individual
> > > > modules)might be feasible.
> > >
> > > So the question is whether the Qt-module include dirs can be can be put
> > > before the general include dir ?
> > >
> > > What was the original problem ?
> >
> > The original problem is that apparently FreeBSD maintainers of Qt3+Qt4
> > managed to install the headers of both version into /usr/local/include.
> > Which creates problems when using
> >
> > #include <qobject.h>
> >
> > as that is inside /usr/local/include and /usr/local/include/QtCore (the
> > first one being the Qt3 version, the second the Qt4 version). So with
> > include directories ordered as
> >
> > -I/usr/local/include/QtCore -I/usr/local/include
>
> Looks safe.
> But I remember not too long ago there was a commit which already changed
> the order of include dirs for Qt. I'd like to check that again first, to
> make sure we don't break something (but not now... soccer is waiting).

Ok, that one seems to be safe:
http://websvn.kde.org/trunk/KDE/kdelibs/cmake/modules/FindQt4.cmake?r1=750657&r2=768283

But, in FindQt4.cmake we have:
# Set QT_INCLUDES
SET( QT_INCLUDES ${QT_QT_INCLUDE_DIR} 
                 ${QT_MKSPECS_DIR}/default ${QT_INCLUDE_DIR} )

...
    IF (QT_${basename}_INCLUDE_DIR)
      #add the include directory to QT_INCLUDES
      SET(QT_INCLUDES "${QT_${basename}_INCLUDE_DIR}" ${QT_INCLUDES})
    ENDIF (QT_${basename}_INCLUDE_DIR)

So QT_INCLUDE_DIR should already be at the end.
I guess /usr/local/include then comes from some other include dir ?
Or am I missing something ?

Alex


More information about the Kde-buildsystem mailing list