[cmake-developers] Peculiar issue for "NMake Makefiles JOM"

Alan W. Irwin irwin at beluga.phys.uvic.ca
Thu Jun 6 18:35:31 EDT 2013


I have just now tried the "NMake Makefiles JOM" generator for my
build_projects project, and I ran into a peculiar issue.

For example (from the "jom VERBOSE=1 build_ndiff" output) and with
single lines split up for e-mail purposes

Z:\home\wine\newstart\cmake-2.8.10.2-win32-x86\bin\cmake.exe -E make_directory
Z:/home/wine/newstart/build_script/build_dir-git_jom/build_projects/Source/build_ndiff

works fine, but the next command,

Z:\home\wine\newstart\cmake-2.8.10.2-win32-x86\bin\cmake.exe -E copy
z:/home/software/plplot_svn/HEAD/plplot_allura/cmake/build_projects/ndiff/CMakeLists.txt
Z:/home/wine/newstart/build_script/build_dir-git_jom/build_projects/Source/build_ndiff/CMakeLists.txt

silently fails to copy the file and the build continues happily a bit
further until it errors out when that missing file is required.  The
Makefile indicates these commands were executed under the cmd.exe
shell so I tried them by hand under that shell, and they work fine
there.

The "MinGW Makefiles" generator also generates Makefiles
that use the cmd shell, and the equivalent command in that case is
virtually identical (the suffix on the build directory is "_mingw" rather
than "_jom")

Z:\home\wine\newstart\cmake-2.8.10.2-win32-x86\bin\cmake.exe -E copy
z:/home/software/plplot_svn/HEAD/plplot_allura/cmake/build_projects/ndiff/CMakeLists.txt
Z:/home/wine/newstart/build_script/build_dir-git_mingw/build_projects/Source/build_ndiff/CMakeLists.txt

That not only works fine under cmd by hand, but also when it is run
indirectly by executing mingw32-make VERBOSE=1 build_ndiff.

Note, I originally wrote up this issue as a command length problem,
but that is completely contradicted by the cmd results I executed by
hand and the equivalent "MinGW Makefiles" generator results which
actually have a (one-character) longer command line that is
interpreted correctly by mingw32-make.

So it appears the actual cmd command embedded in jom Makefile by CMake
is fine, but nevertheless some sort of silent failure is going on with
that command when jom is run on that Makefile that does not occur in
the near-equivalent mingw32-make case or when I run the commands from
the cmd shell by hand.  Of course, it is entirely possible these
peculiar jom results could be an issue with jom itself rather than
CMake.  For the record, I used the most recent stable release of jom
(downloaded by wget
http://releases.qt-project.org/jom/jom_1_0_13.zip). Are there known
problems with that jom release and how it interacts with Makefiles
produced by the "NMake Makefiles JOM" generator?

This is my very first experience with jom. Can jom be put into a
debugging mode so you can see exactly what commands it executes (which
is a somewhat different than VERBOSE=1 results which lists the
commands that jom _should_ be executing)?

Alan
__________________________
Alan W. Irwin

Astronomical research affiliation with Department of Physics and Astronomy,
University of Victoria (astrowww.phys.uvic.ca).

Programming affiliations with the FreeEOS equation-of-state
implementation for stellar interiors (freeeos.sf.net); the Time
Ephemerides project (timeephem.sf.net); PLplot scientific plotting
software package (plplot.sf.net); the libLASi project
(unifont.org/lasi); the Loads of Linux Links project (loll.sf.net);
and the Linux Brochure Project (lbproject.sf.net).
__________________________

Linux-powered Science
__________________________



More information about the cmake-developers mailing list