On Jan 11, 2009, at 7:13 PM, Philip Lowman wrote:
On Sat, Jan 10, 2009 at 7:48 AM, Alexander Neundorf <[email protected]
> wrote:
On Thursday 08 January 2009, Philip Lowman wrote:
> If you use GTK2 in any of your projects and have time, please test
this
> CMake module and post any issues to this thread.
I had a quick look at it.
I think in the FIND_PATH() call you don't need to list /usr/include
and /usr/local/include, they are searched anyway.
Yes, thanks. I'm not sure how those got there, I will remove them.
The constants for true and false are "TRUE" and "FALSE" (i.e. upper
case).
Ah, you're complaining about using 1 and 0 in the macro arguments.
There's a reason for that. I'm not sure what I'm doing wrong here
below, but this code only outputs "a is true" when a 1 is passed in,
both TRUE and ON do not work. Kinda looks like a bug but it's hard
to believe that it is.
PROJECT(Foo)
CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
MACRO(test_constants _a _b )
MESSAGE("a,b = ${_a},${_b}")
IF(${_a})
MESSAGE("a is true")
ENDIF()
IF(${_b})
MESSAGE("b is true")
ENDIF()
ENDMACRO()
test_constants(1 0)
test_constants(TRUE FALSE)
test_constants(ON OFF)
outputs:
a,b = 1,0
a is true
a,b = TRUE,FALSE
a,b = ON,OFF
I'm not sure it's a good idea to abort with FATAL_ERROR if no
components are
given. No other module does that. What would be a good default ?
Trying to find everything and report success if at least gtk itself
has been
found ?
One choice would be to assume the only thing they want is "gtk" and
it's dependents. I prefer the FATAL_ERROR though as it forces CMake
users to read the documentation, they may after all want gtkmm,
glade, or some other combination of GTK2's libraries. Worse case
they don't read it and the FATAL_ERROR message tells them to read
the documentation. =)
> I intend to check it into CMake and support it.
Cool :-)
Let me know when you do this, then I can close
http://public.kitware.com/Bug/view.php?id=7483
Will do. Thanks for the reference. I noticed a couple of use cases
in that module I hadn't thought of like
/usr/lib64/gtk-2.0/include for example.
--
Philip Lowman
Coming from a complete outsider is GTK like Qt in that GTK has a
"Core" library then others built on top of that? If so you can default
to looking for the "Core" library then use CMake variables such as
"GTK_USE_MM" set to "TRUE" and find components that way. I think
FindBoost does something like that also.
just my 2 cents. It is my hope that large libraries such as GTK, Qt,
Boost and others could be written to the same "style" so that if I
were used to using FindBoost, then I could easily use FindGTK in the
same way and it would just work.
Respectfully.
---
Mike Jackson www.bluequartz.net
_______________________________________________
CMake mailing list
[email protected]
http://www.cmake.org/mailman/listinfo/cmake