Miquel,
I would prefer that we temporarily have a copy of =
CMakeConfigurableFile.in in config/cmake/Modules/NewCmake. For me, =
upgrading cmake on all of the dashboard build machines takes a good =
chunk of time that I'd rather not spend there this week. Plus every =
user working off of cvs sources would have to upgrade cmake as well, and =
for a fairly minor reason.
To document the future removal of CMakeConfigurableFile.in, an =
appropriate CMakeLists.txt file could be marked up like this:
# CMake 2.4 is not currently required, but when it is we can remove =
CMakeConfigurableFile.in from config/cmake/Modules/NewCmake
# CMAKE_MINIMUM_REQUIRED(VERSION 2.4)
Sound reasonable?
Fred
> -----Original Message-----
> From: figueroa.villanueva@...
> [mailto:figueroa.villanueva@... Behalf Of Miguel A.
> Figueroa-Villanueva
> Sent: Tuesday, July 18, 2006 6:35 AM
> To: vxl-maintainers@...
> Cc: wheeler@...
> Subject: Re: Automatic Test Driver (broken dashboard)
>=20
>=20
> Fred, Maintainers,
>=20
> I have broken the dashboard for several builds maintained by Fred
> Wheeler, and one from Manchester (mul, not sure who is maintaining
> this one). The problem is that I am using a file distributed with
> CMake (${CMAKE_ROOT}/Modules/CMakeConfigurableFile.in) in the Modules
> directory. I hadn't realized that this file was included in CMake 2.4.
>=20
> Should I continue poluting VXL's config/cmake/Modules/NewCmake
> directory and place a copy there? Or is it a good time to update CMake
> on these builds?
>=20
> Thanks,
> --Miguel
>=20
> On 7/14/06, Miguel A. Figueroa-Villanueva <miguelf@...> wrote:
> > Hello maintainers,
> >
> > If noone objects I'll add the following MACROS to
> > config/cmake/config/vxl_utils.cmake and test apply changes=20
> to vul/vil
> > to use them. I have attached the vxl_utils.cmake and a generated
> > test_include.cxx for your quick inspection.
> >
> > --- First Macro
> > Motivated by the recent problem in vul's test_url.cxx with APPLE, I
> > tested a MACRO (attached below) that I have for generating the TEST
> > code for CMake in vul and vil (not in the io,algo subdirs, yet). In
> > summary, you don't need the test_driver.cxx that is currently
> > generated, and it replaces the ADD_EXECUTABLE/ADD_TEST commands with
> > the single line:
> >
> > GENERATE_TEST_DRIVER(vul vul_test_sources vul vpl testlib vcl)
> >
> > In case you need arguments passed, I've used the following=20
> convention
> > that works in vil:
> >
> > SET(test_file_format_read_args =20
> ${CMAKE_CURRENT_SOURCE_DIR}/file_read_data)
> > SET(test_stream_args =20
> ${CMAKE_CURRENT_SOURCE_DIR}/file_read_data)
> > SET(test_convert_args =20
> ${CMAKE_CURRENT_SOURCE_DIR}/file_read_data)
> > SET(test_blocked_image_resource_args=20
> ${CMAKE_CURRENT_SOURCE_DIR}/file_read_data)
> > GENERATE_TEST_DRIVER(vil vil_test_sources vil vpl vul testlib vcl)
> >
> > That is create a variable named after the file containing the test +
> > "_args" to hold the arguments.
> >
> > I also had to manually change all tests to have a function with the
> > signature as in the following code, but in most cases this could be
> > done by redefining TESTMAIN:
> >
> > //TESTMAIN(test_math_value_range);
> > int test_math_value_range(int, char*[])
> > {
> > testlib_test_start("test_math_value_range");
> >
> > test_math_value_range();
> >
> > return testlib_test_summary();
> > }
> >
> > --- Second Macro
> > I have also created a GENERATE_TEST_INCLUDE, which replaces the two
> > lines adding the test_include.cxx file in the=20
> CMakeLists.txt, but also
> > generates the actual test_include.cxx. The command looks like:
> >
> > GENERATE_TEST_INCLUDE(vil vil_sources "vil/")
> > #ADD_EXECUTABLE( vil_test_include test_include.cxx )
> > #TARGET_LINK_LIBRARIES( vil_test_include vil )
> >
> > The way I generate it is that I take the vil_sources variable (from
> > the upper dir) and scan it for *.h files, then include it=20
> twice in the
> > generated test_include.cxx with the prefix "vil/" appended. Sample
> > output is appended for vil.
> >
> > My only reservation with this is that I don't know if people have
> > manually added things to test_include.cxx that would need special
> > treatment. Also, it will add everything with a *.h=20
> extension including
> > impl things like:
> >
> > #include <vil/file_formats/vil_png.h>
> >
> > in vil (which is not a bad thing for a test, I guess).
> >
> > ----
> >
> > Please, let me know any concerns or suggestions you may have.
> >
> > --Miguel
>=20
|