Greetings Farid
I have tried using your patch along with my port of the exec utility,
and the generated project is a near match to the one I had been using
for my development. I have a few observations about the patch.
The first observation is that %BUILDDIR%\bin might be a better place to
place the utilities than %BUILDDIR%\util. The reason I feel this would
be a better location is so that it would mirror the file system
structure generated by the GNU makefiles.
The second observation is that it might make sense to have a .utils or
.stdlib_utils project, similar to how there are a .stdlib_examples
project for the examples and a .stdlib_tests project for the tests.
This project likely wouldn't do anything when run, but it would provide
a convenient way to build all the utilities (and possibly the locales)
in one shot.
The final observation is that the exec utility is written as a C
program, although one masquerading as a C++ program, and it has no
reliance on the C++ headers or the standard library. I suspect removing
the dependencies from the project would be something of a hassle, but it
probably should be considered.
With regards to the GNU makefile infrastructure, there actually are two
different ways to build locales inside the infrastructure.
One way is by specifying a target similar to 'en_US.ISO-8859-1' or
'[EMAIL PROTECTED]'. This will build the locale specified with
the localedef utility, placing the results in the nls subdirectory of
the build directory.
The second method is through the locale shell scripts (named like
'en_US.ISO-8859-1.sh' or '[EMAIL PROTECTED]'). These scripts
are generated by the GNU makefile infrastructure. They are used to
check that the locales build correctly, producing output with a summary
section similar to that of the test suite.
For end users, it would likely be more useful to have the former
ability, while developers would likely find the later to be of more use.
--Andrew Black
Farid Zaripov wrote:
Attached is the update of the script files for generating
VisualStudio projects and solution(s). Added generation of the
exec, locale and localedef projects.
ChangeLog:
* generate.wsf: Added code to create the %BUILDDIR%/util directory.
* generate.js: Added code for generating the exec, locale and
localedef projects.
* data.js: Ditto.
* msvc-config.js: Ditto.
* icc-config.js: Ditto.
GNUmakefile.bin, in addition to compile the exec, locale and
localedef executables, also builds the locales:
GNUmakefile.bin:
-----
# build all locales with the localedef utility
locales: localedef $(LOCALE_LIST)
Should we have the similar functionality on the Windows platform?
Farid.