Module CS/mk/

back to main page

Summary Period: 1999-05-06 to 2003-07-11

Modules

[root]/CS/mk
     autoconf (19 files, 4429 lines)
     jam (27 files, 3277 lines)
     msvcgen (6 files, 1995 lines)
         template6 (12 files, 0 lines)
         template7 (12 files, 1017 lines)
     support (1 files, 1536 lines)
     visualc6 (364 files, 9349 lines)
     visualc7 (364 files, 61923 lines)

Lines Of Code


Total Lines Of Code: 1737 (2003-07-11 20:29)

Authors

Author Changes Lines of code Lines per change
Totals 526 (100.0%) 3689 (100.0%) 7.0
sunshine 199 (37.8%) 1909 (51.7%) 9.5
bdavis 4 (0.8%) 333 (9.0%) 83.2
jorrit 82 (15.6%) 251 (6.8%) 3.0
wouter 19 (3.6%) 212 (5.7%) 11.1
andy 33 (6.3%) 198 (5.4%) 6.0
okt 7 (1.3%) 183 (5.0%) 26.1
azverkan 14 (2.7%) 140 (3.8%) 10.0
andyz 39 (7.4%) 127 (3.4%) 3.2
pgarceau 9 (1.7%) 80 (2.2%) 8.8
norman 32 (6.1%) 69 (1.9%) 2.1
matzebraun 21 (4.0%) 48 (1.3%) 2.2
res2002 10 (1.9%) 43 (1.2%) 4.3
philwyett 20 (3.8%) 24 (0.7%) 1.2
uid30344 2 (0.4%) 14 (0.4%) 7.0
link 5 (1.0%) 13 (0.4%) 2.6
mgeisse 5 (1.0%) 9 (0.2%) 1.8
miklby 4 (0.8%) 5 (0.1%) 1.2
thebolt00 3 (0.6%) 4 (0.1%) 1.3
serplord 1 (0.2%) 4 (0.1%) 4.0
samuel 1 (0.2%) 4 (0.1%) 4.0
duhprey 4 (0.8%) 4 (0.1%) 1.0
mlong 1 (0.2%) 3 (0.1%) 3.0
neverjade 2 (0.4%) 2 (0.1%) 1.0
malakai 1 (0.2%) 2 (0.1%) 2.0
alquarra 2 (0.4%) 2 (0.1%) 1.0
tomriemer 1 (0.2%) 1 (0.0%) 1.0
tetron 1 (0.2%) 1 (0.0%) 1.0
jasegler 1 (0.2%) 1 (0.0%) 1.0
iplayfast 1 (0.2%) 1 (0.0%) 1.0
dentoid 1 (0.2%) 1 (0.0%) 1.0
cbayle 1 (0.2%) 1 (0.0%) 1.0

Most Recent Commits

cbayle 2003-07-11 20:29

Remove extra @ that make fail install

1 lines of code changed in:

sunshine 2003-07-10 17:01

Eric Sunshine fixed the default plugin install macro in install.mak so
that it only installs the .csplugin file if present. This is a
convenience for platforms which bundle the meta-information directly into
the plugin module rather than maintaining it in a separate .csplugin file.
It allows such platforms to utilize the default macro rather than creating
a custom one. This also fixes the "install" target for Windows, since
meta-information is bundled into the .dll on Windows. Finally, as a
side-effect, it fixes the problem where installation of the Python plugin
_cspace.so (.dll) caused the "install" target to fail because no .csplugin
file was present (lack of .csplugin is correct since this is a Python
plugin, not a CS plugin). This is not a "clean" solution to the
_cspace.so problem, and it we should devise a better one, but it works
well enough for the interim.

10 lines of code changed in:

okt 2003-06-23 21:05

Added the nullmesh loader and iNullFactoryState.

1 lines of code changed in:

thebolt00 2003-06-19 23:45

- Marten made the following changes:
- Changed duhpreys shadowcode to use GetPolygonMeshShadows at first, then fallback to GetPolygonMeshColldet.
- Added setting of PolygonMeshShadows in genmesh.
- Added stencil to user.mk

1 lines of code changed in:

philwyett 2003-06-19 14:45

Commented out the csperl5 plugin.

This plugin is nothing but problems and never seemingly
able to be in sync with the rest of the code base. IMHO
it should be removed!

1 lines of code changed in:

okt 2003-06-19 02:25

Got rid of all the warnings, some by fixing and some by ignoring with compiler switches and pragmas.
Added csString to those classes wrapped by Swig.
Uncommented the Perl plugin in user.mak.

1 lines of code changed in:

res2002 2003-06-15 21:07

Added a work around for a static linking problem to static.mak.
Renamed csScanPluginsDir() to csScanPluginDir(), added
csScanPluginDirs(), and implemented a general csGetPluginMetadata().
Removed the fopen() hack.
Added Jamfiles for the render loop loader/standard rendersteps
along with some minor compile fixes.
Updated the MSVC6 makefile templates.

5 lines of code changed in:

sunshine 2003-06-13 23:32

Eric Sunshine performed Phase Four of the elimination of the monolithic
scf.cfg:

-*- Repaired static linking mode so that it works with the new SCF design.

-*- Added new macros SCF_REGISTER_STATIC_LIBRARY() and
SCF_REGISTER_FACTORY_FUNC() which can be used in aid of static linking
(and other special cases).

-*- Added iSCF::RegisterClasses(char const*) convenience variation.

-*- Added iSCF::RegisterFactoryFunc() which allows clients to register a
class factory function after-the-fact (that is, after a class has been
registered).

-*- Modified static.mak and static.jam to utilize the new
SCF_REGISTER_STATIC_LIBRARY() and SCF_REGISTER_FACTORY_FUNC() macros
when creating the special static-link stub source files which register
the SCF classes and ensure that the program links with the appropriate
libraries.

-*- Redesigned the sed expressions used in creation of the plugin .def
files on Windows. Was able to eliminate CS/libs/cssys/win32/mkdef.sh
since the sed expressions no longer contain embedded newlines.

-*- Still To-Do:

- Remove references to scf.cfg and scfreg from documentation. Also
document new .csplugin resources.

- Add platform-specific function to scan and locate plugins
automatically rather than using the ad-hoc approach inherited from
scanning for .scf files.

- Add platform-specific function to query a plugin's meta-information.
This should be used by SCF to do the raw extraction. Provide and
finalize API for higher-level clients to access meta-information.

56 lines of code changed in:

res2002 2003-06-12 22:20

Augmented configure to accept an --enable-new-renderer option,
emitting CS_USE_NEW_RENDERER to volatile.h and setting an
USE_NEW_RENDERER makefile var.

9 lines of code changed in:

res2002 2003-06-05 02:45

Modified the engine to change to the default render loop when the world-specific settings reset.
Augmented the map loader to allow setting of a <renderloop> in a map's <settings>.
Added support for render loop loading through the <addon> mechanism.
Started working on a generic render step plugin. For now just compiles, but doesn't do anything yet.

8 lines of code changed in:

sunshine 2003-05-28 15:41

Eric Sunshine eliminated the unmaintained and broken cslua module.

0 lines of code changed in:

sunshine 2003-05-26 09:49

Eric Sunshine performed Phase One of the elimination of the monolithic
scf.cfg:

-*- Plugin modules are now self-describing. This information can be
queried at run-time without having to actually load the module.

-*- The plugin maintainer now manages the plugin's meta-information in an
external .csplugin file, rather than hard-coding the information into
the plugin's source code. The mechanism by which the meta-information
is bound to the plugin is platform-dependent. Presently, all
platforms simply lay down the meta-information in a plain text file
alongside the plugin itself; with the same basename and extension
.csplugin. This may change in the future. For example, on MacOS/X,
the meta-information will probably be encapsulated within the plugin's
bundle wrapper.

-*- Plugin meta-information is now maintained in XML format. Here is an
example:

<?xml version="1.0"?>
<!-- gl3d.csplugin -->
<plugin>
<name>gl3d</name>
<scf>
<classes>
<class>
<name>crystalspace.graphics3d.opengl</name>
<description>OpenGL 3D graphics driver</description>
<requires>
<class>crystalspace.font.server.</class>
</requires>
</class>
</classes>
</scf>
</plugin>

-*- Since meta-information is now extensible, maintainers can choose to
publish supplementary information about plugins (in addition to the
SCF information already published). For example, image loading
plugins could publish "image indendification" information which would
allow the image loading multiplexor to selectively request image
loading plugins on-demand, rather than requesting all plugins
unconditionally, even if they are not needed. Here is an example of a
possible meta-information table for the PNG loader:

<?xml version="1.0"?>
<!-- cspngimg.csplugin -->
<plugin>
<name>cspngimg</name>
<scf>...</scf>
<imageloader>
<imagetype>
<class>crystalspace.graphic.image.io.png</class>
<identify>
<mimetype>image/png</mimetype>
<extension>png</extension>
<extension>PNG</extension>
<scan length="4" bytes="\0x89PNG"/>
</identify>
</imagetype>
</imageloader>
</plugin>

In this example, the PNG loader meta-information tells the multiplexor
several different ways to identify a PNG image: by checking file
extension, if available; by checking MIME type, if available; by
checking for the magic-string "\0x89PNG" in the raw image data. If
the multiplexor identifies the image as PNG, only then will it
actually request the PNG loader.

-*- Added the --meta-file directive to msvcgen.pl to allow specification
of the meta-information file for a module. The value of this option
is interpolated into template files via the new %metafile% variable.
msvcgen.mak now utilizes this flag with the value of the new
INC.PROJECT makefile variable. Augmented the MSVC6 and MSVC7 plugin
template files (plugin.tpl) to make use of %metafile%.

-*- Changed the file extension for plugins on MacOS/X from .csplugin to
.csbundle to avoid conflict with new meta-information resource which
uses the extension .csplugin.

-*- Still To-Do:

- Augment SCF to utilize the new meta-information resources, and to
understand the new XML format. Presently, these resources are
ignored at run-time.

- Add platform-specific function to scan and locate plugins
automatically, rather than relying upon a monolithic registry such
as scf.cfg.

- Add platform-specific function to query a plugin's meta-information.

- Eliminate the monolithic scf.cfg.

- Augment static linking to work with the new facility.

- Eliminate the hard-coded SCF registration information in each
plugin's source code.

46 lines of code changed in:

res2002 2003-05-13 00:27

- added an iAnimatedImage interface to support animnated images.
- added a plugin for a proctex for animated images.
- fixed a cut'n'paste error in plugins/proctex/standard/Jamfile.

2 lines of code changed in:

sunshine 2003-05-11 21:21

Eric Sunshine removed the hack from cs.mak which was needed to clean up
the generated files from csperl5. The hack should no longer be needed
since csperl5 now presumably cleans up after itself, and only creates its
transient files if the module is actually enabled, rather than always.

1 lines of code changed in:

sunshine 2003-05-11 21:08

Eric Sunshine made the following changes:

-*- Added the new variable %name% to msvcgen.pl which can be interpolated
into any template file. The value of this variable is the name
provided by the --name option.

-*- Performed some code clean up of msvcgen.pl following the merge of
msvcgen.pl and msvc7gen.pl (which occurred some time ago).

-*- Cleaned up a bunch of errors in the documentation and added
documentation which should have been added when msvcgen.pl and
msvc7gen.pl were merged.

-*- Renamed msvcgen.pl options --projext, -px, --wsext, -wx, --projname,
and --htmlent to --project-extension, -P, --workspace-extension, -W,
--project-name, --xml-protect, respectively.

-*- Changed msvcgen.pl so that it no longer creates the unused "dummy"
fragment file. This file seems to have been an ugly artifact to
slighly simplify msvcgen.mak following the msvcgen.pl and msvc7gen.pl
merge. A slight modification of msvcgen.mak obviated the need for
this hack.

-*- Fixed bug in msvcgen.pl where it failed to use the value from --name
as the default for --project-name if --project-name was not specified.

-*- The extensions .C, .m, .mm, and .M are now recognized as source files
(in addition to .c, .cc, and .cpp) by msvcgen.pl. The extensions .hpp
and .H are now recognized as header files (in addition to .h).

-*- Added --strip-root option to msvcgen.pl which allows specification of
zero or more prefixes which should be stripped from
filenames/resources mentioned on the command-line and which are
referenced by generated project files. This is desirable because it
is a good idea to record only relative paths in project files, rather
than absolute. This switch can be employed by tools which are unable
to provide relative paths to msvcgen.pl.

-*- Revived the DSP.PROJECT.RESOURCES variable. This variable is useful
for inserting additional human-readable resources into the generated
project files. It is not clear why this variable was removed when the
$(PROJECT.EXE).WINRSRC functionality (which is completely different in
purpose) was added to msvcgen.mak.

-*- Revived the "appgui" project type which had been removed some time
back. Although the project files for GUI (appgui) and console
(appcon) applications might not differ at present, it is still useful
to be able to make this distinction (especially since it might be
needed again in the future).

-*- Cleaned up some documentation in msvcgen.mak following the merge of
msvcgen.mak and msvc7gen.mak (some time ago).

-*- Fixed problem with mergeres.sh where it failed to perform path
"fix-up" properly if the build hierarchy differed from the source
hierarchy. One manifestation of this problem was that the .rc files
generated via msvcgen.mak from a build hierarchy outside the source
hierarchy differed from those generated directly in the source
hierarchy. On a related note, win32gcc.mak and msvcgen.jam were
providing "fix-up" argument to mergeres.sh which failed to take
$(SRCDIR) into account, thus causing the fix-up to fail.

-*- Fixed bug in msvcgen.jam where it failed to specify the location of
csver.h when invoking mkverres.sh, thus it failed when generating
project files from a build hierarchy which differed from the source
hierarchy.

-*- Fixed bug in msvcgen.jam where it failed to use --xmlprotect (nee
--htmlent) when building MSVC7 project files.

-*- Fixed bug in msvcgen.jam where it was incorrectly specifying external
libraries via --depend. The correct option is --library.

-*- Fixed bug in msvcgen.jam where it was incorrectly specifying linker
flags via --library. The correct option is --lflags.

-*- Fixed bug in msvcgen.jam where it failed to normalize the source,
header, and resource paths which it passed to msvcgen.pl for mention
in the generated project files. This was a problem when the build
directory differed from the CS source directory, since the paths
recorded in the project file would be relative to the build directory
or absolute, rather than relative within the source directory.

-*- Fixed bug in msvcgen.jam where it would insert the wrong file into a
generated project if the filename was not unique between all
directories. For instance, in the generated libcsutil project,
plugins\documentsystem\xmltiny\xmltiny.cpp would incorrectly appear in
place of libs\csutil\xmltiny.cpp.

-*- msvcgen.jam is almost usable. Still to-do: Make it respect
ExternaLibs() or fix all the Jamfiles which require special Windows
libraries to invoke MsvcExternalLibrary(). Overhaul the "config" file
handling rule so that it associates configuration files with built
targets. This will allow the generated projects to reference
configuration files. Likewise, provide a generic Resources rule which
allows specification of additional textual resources for inclusion in
generated projects. Upgrade module Jamfiles to mention headers from
the CS/include/foobar directory. This will allow related headers to
appear in the generated project files. For instance, the libcsutil
project should mention headers from CS/include/csengine, in addition
to the ones from CS/libs/csengine, which it currently mentions.

-*- Renamed CS/mk/visualc to CS/mk/visualc6.

-*- Renamed CS/mk/msvcgen/template to CS/mk/msvcgen/template6.

-*- Renamed the msvcgen and msvcinst makefile targets to msvc6gen and
msvc6inst.

-*- Fixed problem in Jam build where it would attempt to invoke Bourne
scripts using C-shell if user's login shell was C-shell or compatible.

-*- Fixed csperl5/Jamefile so that it is only enabled if the Perl SDK was
detected, rather than if the Perl command is available. This is an
important distinction because the presence of the Perl command alone
does not necessarily imply the presence of a working SDK.

1 lines of code changed in:

sunshine 2003-05-08 13:42

Eric Sunshine made the following changes:

-*- Fixed bugs in the new stdpt.mak (standard procedural textures)
makefile which prevented it from working correctly when the build
directory differs from the source directory. Also fixed copy/paste
errors which caused it to fail in static-link mode.

-*- Fixed a couple $(SRCDIR)-related problems in CS/mk/template.mak.

4 lines of code changed in:

res2002 2003-05-07 18:25

- changed the proctex loader to support plugins. Specifying a
proctex the 'old' style will result in a notification.
- wrote a plugin wrapping the four built-in proctexes.
- also moved the <plugins> block in flarge since they are needed
before the textures now.

1 lines of code changed in:

sunshine 2003-05-04 12:00

Eric Sunshine made the following changes:

-*- Updated Swig test in configure.ac to utilize new optional version
number component capability of progver.m4. This is needed because
older versions of Swig emit a 2-part version number (such as 1.1),
whereas newer ones emit a 3-part number (such as 1.3.19).

-*- Fixed problem where recent change to configure.ac caused it to create
several files deep within the CS source tree. This is a problem
because the CS source tree might be on a read-only volume (such as a
CD-ROM), or might be shared (perhaps via NFS) between several builds.
Furthermore, it failed when the build directory differed from the
source directory. Instead of creating the one-line csperlxs.c file in
the plugins/cscript/csperl5 directory to include the appropriate .inc
file, it now emits the header property CS_PERL5_XSINC to volatile.h
with the value of the .inc file to include.

-*- Fixed problem where configure.ac was creating the file csperlxs.inc
during the configuration phase. It is not the responsibility of the
configure script to create output files. Instead, it is the
responsibility of config.status to see to this chore. Therefore,
configure.ac now invokes AC_CONFIG_COMMANDS() to delegate creation of
csperlxs.inc to config.status.

-*- Fixed bug where recent changes to configure.ac caused it to reference
the non-existent shell variable PERL5.EXTUTILS.DYNALOADER, thus
causing creation of csperlxs.inc to fail.

-*- The configure script no longer emits the PERL5.EXTUTILS.AVAILABLE and
PERL5.EXTUTILS.DYNALOADER build properties to config.mak and Jamconfig
since recent changes obsoleted these variables, and they are no longer
used by the csperl5 makefile and Jamfile.

-*- Fixed a number of errors in csperl5.mak where it was not respecting
$(SRCDIR), thus resulting in build failure when building outside of
the CS source tree.

-*- Fixed bugs in csperl5.mak where it used CEX.CSPERL5 and CIN.CSPERL5 in
some places but CEX.PERL5 and CIN.PERL5 in others.

1 lines of code changed in:

sunshine 2003-04-27 11:33

Eric Sunshine made the following changes:

-*- Modified configure.ac so that it emits a SRCDIR property to
config.mak. This value represents the --srcdir argument given to the
configure script (or "." if --srcdir is omitted). This points at the
directory containing the CS source code (which may differ from the
build directory, which is typically the current working directory).

-*- Modified makefiles and build scripts throughout the project so that
they respect $(SRCDIR). This allows the project to be built in a
directory other than the source directory, thus it is possible to
place the source directory on a readonly filesystem (such as a
CD-ROM), or to share a single NFS-mounted source directory among
different builds, where each build inhabits its own directory. For
example, if CS resides at /home/CS and you wish to build the project
in /home/build:

% cd /home/build
% ../CS/configure
% make -k all
% make install

(Note that the Jam-base build system already supports this build
paradigm.)

-*- Modified configure.ac so that it emits EXTENSIVE_MEMDEBUG to
config.mak since this variable is used by Makefile.in for the
`showconfig' target.

-*- Modified configure.ac so that it emits MONITOR_MAKEFILE_CACHE when the
value is either "yes" or "no", instead of emitting it only when the
value is "yes". This was necessary because CS/mk/cache.mak prints the
value of this variable as part of $(SYSMODIFIER).

88 lines of code changed in:

philwyett 2003-04-22 01:38

- Philip Wyett disabled 'csperl5' plugin from build process.

1 lines of code changed in:

(394 more)


Generated by StatCvs v0.2-dev