Files
bullet3/mk/msvcgen/project6.tlib
2006-05-25 19:18:29 +00:00

130 lines
4.9 KiB
Plaintext

[% FILTER null;
#==============================================================================
# TemplateToolkit2 template for MSVC6 project (dsp) file.
# Copyright (C) 2004 by Eric Sunshine <sunshine@sunshineco.com>
#
# This library is free software; you can redistribute it and/or modify it
# under the terms of the GNU Library General Public License as published by
# the Free Software Foundation; either version 2 of the License, or (at your
# option) any later version.
#
# This library is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
# License for more details.
#
# You should have received a copy of the GNU Library General Public License
# along with this library; if not, write to the Free Software Foundation,
# Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
#
#==============================================================================
PROCESS macros.tlib;
PROCESS control.tlib;
PROCESS projectx6.tlib;
MACRO composedefs(defs) GET compose('defines', defs, ' ', '/D "', '"');
MACRO composedirs(tag, seed, directive) BLOCK;
prefix = directive _ '"';
GET composepaths(${"build.${tag}key"}, seed, ' ', prefix, '"');
END;
my = {};
load(respfile, 'doc');
FOREACH f IN my.doc.customize; PROCESS $f | null; END;
files = striproots(filter(my.doc.file).split('\|')).split('\|').sort;
builds = builds.nsort('priority');
END -%]
# Microsoft Developer Studio Project File - Name="[% my.doc.project.0 %]" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) [% projtypes.${my.doc.projtype.0}.type %]" [% projtypes.${my.doc.projtype.0}.typecode %]
CFG=[% my.doc.project.0 %] - Win32 [% builds.0.name %]
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "[% my.doc.project.0 %].mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "[% my.doc.project.0 %].mak" CFG="[% my.doc.project.0 %] - Win32 [% builds.0.name %]"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
[% # MSVC6 uses the last listed build mode as default, so we reverse the list.
FOREACH build IN builds.reverse -%]
!MESSAGE "[% my.doc.project.0 %] - Win32 [% build.name %]" (based on "Win32 (x86) [% projtypes.${my.doc.projtype.0}.type %]")
[% END -%]
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
MTL=midl.exe
RSC=rc.exe
[% FOREACH build IN builds -%]
![% IF loop.first; 'IF'; ELSE; 'ELSEIF'; END %] "$(CFG)" == "[% my.doc.project.0 %] - Win32 [% build.name %]"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries [% interpolate('usedebuglibs') %]
# PROP BASE Output_Dir "[% build.tag %]"
# PROP BASE Intermediate_Dir "[% build.tag %]"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries [% interpolate('usedebuglibs') %]
# PROP Output_Dir "[% workbuild([]) %]"
# PROP Intermediate_Dir "[% workbuild([]) %]"
[% interpolate('ignoreexportlib') -%]
# PROP Target_Dir ""
# ADD BASE CPP /nologo /vmb /vms /W3 /Gm /G5 /D "WIN32" /FD /c
# ADD CPP /nologo /vmb /vms /W3 /Gm /GX /G5 /FD /c [% interpolate('addcpp', ' ') %] /D "_MT" /D "_MBCS" [% composedefs(['WIN32']) %] [% flags(compose('cflags', [], ' ')) %] [% composedirs('incdirs', ['.'], '/I ') %]
# ADD BASE MTL /nologo /mktyplib203 /o "NUL" /win32
# ADD MTL /nologo /mktyplib203 /o "NUL" /win32 [% composedefs([]) %]
# ADD BASE RSC /l 0x409
# ADD RSC /l 0x409 /fo".\[% workbuild([my.doc.project.0,'.res']) %]" [% composedirs('incdirs', ['.'], '/i ') %]
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LIB32=link.exe -lib
# ADD BASE LIB32 /nologo
# ADD LIB32 /nologo [% interpolate('addlib32') %]
LINK32=link.exe
# ADD BASE LINK32 user32.lib gdi32.lib advapi32.lib /nologo /machine:I386
# ADD LINK32 shell32.lib user32.lib gdi32.lib advapi32.lib [% compose('libs', [], ' ') %] [% interpolate('delaylibs', ' ') %] /nologo /version:4.0 /machine:I386 [% interpolate('linkeropts', ' ') %] [% interpolate('addlink32') %] [% composedirs('libdirs', [], '/libpath:') %] [% flags(compose('lflags', [], ' ')) %]
# Begin Special Build Tool
SOURCE="$(InputPath)"
[% interpolate('postbuild') -%]
# End Special Build Tool
[% END -%]
!ENDIF
# Begin Target
[% FOREACH build IN builds -%]
# Name "[% my.doc.project.0 %] - Win32 [% build.name %]"
[% END -%]
[% FOREACH group IN groups -%]
[% items = files.grep(group.types) -%]
[% IF items.size > 0 -%]
# Begin Group "[% group.name %]"
# PROP Default_Filter ""
[% FOREACH file IN items -%]
# Begin Source File
SOURCE=[% path([my.doc.sourceroot.0, file]) %]
# End Source File
[% END -%]
# End Group
[% END -%]
[% END -%]
# End Target
# End Project