Re: [cmake-developers] A type for static plugins?

2013-09-21 Thread Stephen Kelly
Brad King wrote:

 On 09/20/2013 01:40 PM, Stephen Kelly wrote:
 macro(qt_add_plugin name type)
   if (${type} STREQUAL STATIC OR ${type} STREQUAL MODULE)
 set(_type ${type})
 set(args ${ARGN})
   else()
 set(_type MODULE)
 set(args ${type} ${ARGN})
   endif()
   add_library(${name} ${_type} ${ARGN})
 
 s/ARGN/args/ ?

Yes.

 
   if (_type STREQUAL STATIC)
 set_target_properties(${name} PROPERTIES
   PLUGIN 1
   # Not sure if this is a Qt/KDE convention:
   PREFIX 
 )
   endif()
 endmacro()
 
 Don't you want an empty prefix for MODULE too?

Yes. I was assuming the existence of 

 set(CMAKE_SHARED_MODULE_PREFIX )

Actually the empty prefix doesn't seem to be a Qt convention, only a KDE 
one:

 stephen@hal:~/dev/build/qtbase/qtbase$ l plugins/imageformats/
 libqgif.so*  libqico.so*  libqjpeg.so*

So it wouldn't belong in a qt_add_plugin macro anyway, and kde would need 
its own wrapper macro to set the prefix.

Those layers of wrapper macros are exactly what I'm aiming to avoid with 
modern CMake patterns, so I will not add the qt_add_plugin macro to Qt 5.

Thanks,

Steve.


--

Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers


[cmake-developers] [CMake 0014430]: LINK_DEPENDS dependency generated by custom command fails to build

2013-09-21 Thread Mantis Bug Tracker

The following issue has been SUBMITTED. 
== 
http://cmake.org/Bug/view.php?id=14430 
== 
Reported By:rgstr
Assigned To:
== 
Project:CMake
Issue ID:   14430
Category:   CMake
Reproducibility:always
Severity:   minor
Priority:   normal
Status: new
== 
Date Submitted: 2013-09-21 07:28 EDT
Last Modified:  2013-09-21 07:28 EDT
== 
Summary:LINK_DEPENDS dependency generated by custom command
fails to build
Description: 
I'm using CMake to build an embedded project that requires a generated linker
script.
The linker script is supposed to be generated via add_custom_command() and
set_property(TARGET … PROPERTY LINK_DEPENDS …).

However CMake apparently does not create a Makefile target for the linker script
and thus a subsequent call to make fails stating No rule to make target ….

Steps to Reproduce: 
1.) Download and extract attached minimal non-working example
2.) $ cmake .  make
3.) make[2]: *** No rule to make target `linker_symbols.x', needed by `main'. 
Stop.

Additional Information: 
When adding the linker script dependency to one of the source files being built
via add_property(SOURCE … PROPERTY OBJECT_DEPENDS …) everything works fine.
Just uncomment the corresponding section in my CMakeLists.txt an rerun make.
== 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2013-09-21 07:28 rgstr  New Issue
2013-09-21 07:28 rgstr  File Added: cmake_mnwe.tar.bz2  
 
==

--

Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers