-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi

I'm using (on a Gentoo/Linux) box cmake version 2.4-patch 6 and I think I've 
found a bug in cmake.

I am writting a MACRO that creates targets (with ADD_LIBRARY) depending on 
values of the first paremeter and predefined
variables. The idea is to have something similar of Makefile.am

SET(cu_blmotor_DEPS cu_dsp_402)
SET(cu_blmotor_SRC_REGEX "cu_bl.*.c")

CREATE_DRV_TARGET(cu_blmotor)
CREATE_DRV_TARGET(cu_dsp_402)

The CREATE_DRV_TARGET macro is the one I'm writting. Using those variables I'm 
able to tell the macro which
modules depend on which modules, what are their source files, etc. The macro 
has currently this:

MACRO(CREATE_DRV_TARGET MODULE_NAME)
    SET(DRV_TARGET_SOURCE "")
    SET(MOD_SRC_REGEX ${${MODULE_NAME}_SRC_REGEX})
    SET(MOD_SRC ${${MODULE_NAME}_SRC})
    MESSAGE("Creating target for ${MODULE_NAME}")


    MESSAGE("MOD_SRC_REGEX is ${MOD_SRC_REGEX}")

    IF(NOT MOD_SRC_REGEX MATCHES "^$")
        MESSAGE("In if MOD_SRC_REGEX is ${MOD_SRC_REGEX}")
        SET(MOD_SRC "")
        FILE(GLOB DRV_TARGET_SOURCE "${MOD_SRC_REGEX}")
    ENDIF(NOT MOD_SRC_REGEX MATCHES "^$")
...
ENDMACRO(CREATE_DRV_TARGET)

If I execute cmake I get:
cmake ..
Creating target for cu_blmotor
MOD_SRC_REGEX is ot*.c
In if MOD_SRC_REGEX is ot*.c
Creating target for cu_dsp_402
MOD_SRC_REGEX is
In if MOD_SRC_REGEX is
Segmentation fault


The segfault comes when cu_dsp_402_SRC_REGEX is either undefined or is set to 
"". I'm not sure whether this is a real
bug of cmake (at least cmake should not die with segfault) or I'm not 
implementing my idea correctly. Should it be
better if I first check whether the ${MODULE_NAME}_SRC_REGEX variables are 
definied or not instead of relying that
undefined variables are empty?

Does cmake have a bugtrucker where you can submit bugs?

Thanks,
Pablo


- --
Pablo Yanez Trujillo
http://klingsor.informatik.uni-freiburg.de
My public key: http://klingsor.informatik.uni-freiburg.de/gpg/supertux.asc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkkm0asACgkQDzf8xo+0xRXVUwCeJJuQPfVpHoiV2dK3nFTvhM/3
Rk4AnAuXq/6W7ZkNhFQn7FwxqdymbLzr
=9tSU
-----END PGP SIGNATURE-----
_______________________________________________
CMake mailing list
CMake@cmake.org
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to