[go: up one dir, main page]

Menu

Tree [553f75] gc72a4 / winnt /
 History

HTTPS access


File Date Author Commit
 nsis 2010-02-20 Shiro Kawai Shiro Kawai [891abe] copyright year update
 Gauche.sln 2008-01-03 Shiro Kawai Shiro Kawai [280038] added project files for text.gettext and text.tr
 Makefile 2007-09-18 Shiro Kawai Shiro Kawai [535614] further windows support
 README.txt 2007-10-29 Shiro Kawai Shiro Kawai [cd362d] enable preparation for winvc from the distribut...
 configure.js 2007-09-30 Shiro Kawai Shiro Kawai [8e14c8] gauche.net windows support
 ext-auxsys.vcproj 2007-09-14 Shiro Kawai Shiro Kawai [14411b] more project files
 ext-binary.vcproj 2007-09-14 Shiro Kawai Shiro Kawai [14411b] more project files
 ext-charconv.vcproj 2007-09-14 Shiro Kawai Shiro Kawai [14411b] more project files
 ext-digest-md5.vcproj 2007-09-14 Shiro Kawai Shiro Kawai [14411b] more project files
 ext-digest-sha1.vcproj 2007-09-14 Shiro Kawai Shiro Kawai [14411b] more project files
 ext-fcntl.vcproj 2007-09-15 Shiro Kawai Shiro Kawai [7b18bb] more winvc port
 ext-file-util.vcproj 2007-09-14 Shiro Kawai Shiro Kawai [14411b] more project files
 ext-gauche-collection.vcproj 2007-09-14 Shiro Kawai Shiro Kawai [f27ba2] more project files
 ext-gauche-hook.vcproj 2007-09-14 Shiro Kawai Shiro Kawai [f27ba2] more project files
 ext-gauche-parameter.vcproj 2007-09-14 Shiro Kawai Shiro Kawai [f27ba2] more project files
 ext-gauche-sequence.vcproj 2007-09-14 Shiro Kawai Shiro Kawai [f27ba2] more project files
 ext-mt-random.vcproj 2007-09-14 Shiro Kawai Shiro Kawai [14411b] more project files
 ext-net.vcproj 2007-09-30 Shiro Kawai Shiro Kawai [8e14c8] gauche.net windows support
 ext-srfi-1.vcproj 2007-09-14 Shiro Kawai Shiro Kawai [14411b] more project files
 ext-srfi-13.vcproj 2007-09-15 Shiro Kawai Shiro Kawai [7b18bb] more winvc port
 ext-srfi-19.vcproj 2007-09-14 Shiro Kawai Shiro Kawai [14411b] more project files
 ext-srfi-43.vcproj 2007-09-14 Shiro Kawai Shiro Kawai [14411b] more project files
 ext-sxml-serializer.vcproj 2007-09-16 Shiro Kawai Shiro Kawai [a07aa7] more windows support
 ext-sxml-ssax.vcproj 2007-09-14 Shiro Kawai Shiro Kawai [14411b] more project files
 ext-sxml-sxpath.vcproj 2007-09-14 Shiro Kawai Shiro Kawai [14411b] more project files
 ext-sxml-tools.vcproj 2007-09-14 Shiro Kawai Shiro Kawai [14411b] more project files
 ext-syslog.vcproj 2007-09-14 Shiro Kawai Shiro Kawai [14411b] more project files
 ext-termios.vcproj 2007-09-14 Shiro Kawai Shiro Kawai [14411b] more project files
 ext-text-gettext.vcproj 2008-01-03 Shiro Kawai Shiro Kawai [280038] added project files for text.gettext and text.tr
 ext-text-tr.vcproj 2008-01-03 Shiro Kawai Shiro Kawai [280038] added project files for text.gettext and text.tr
 ext-threads.vcproj 2007-09-14 Shiro Kawai Shiro Kawai [14411b] more project files
 ext-util-match.vcproj 2007-09-14 Shiro Kawai Shiro Kawai [14411b] more project files
 ext-uvector.vcproj 2007-09-29 Shiro Kawai Shiro Kawai [908840] windows fix
 ext-vport.vcproj 2007-09-14 Shiro Kawai Shiro Kawai [14411b] more project files
 ext.vsprops 2007-09-14 Shiro Kawai Shiro Kawai [14411b] more project files
 gauche-config.vcproj 2007-08-25 Shiro Kawai Shiro Kawai [2b9a6c] adapted gauche-config to MSVC build
 gosh.vcproj 2007-08-24 Shiro Kawai Shiro Kawai [46b7c3] Windows/MSVC prelim support
 libgauche.vcproj 2007-09-13 Shiro Kawai Shiro Kawai [c73e28] windows/vc port, data importing problem solved
 test-arith.vcproj 2007-08-24 Shiro Kawai Shiro Kawai [46b7c3] Windows/MSVC prelim support
 test-vmstack.vcproj 2007-08-24 Shiro Kawai Shiro Kawai [46b7c3] Windows/MSVC prelim support
 winvc-prep.sh 2007-10-29 Shiro Kawai Shiro Kawai [cd362d] enable preparation for winvc from the distribut...

Read Me

This directory contains files to compile Gauche with VisualC++ on Windows.
As of 0.8.12, the core and several modules work, though we still need to
tweak a few major modules (notably, gauche.net).

If you get the source tree from the standard tarball (Gauche-x.x.x.tgz)
or from CVS, you have to preprocess the source tree.  You need a unix-
compatible environment (such as cygwin) to do that.

If you build from CVS, run this command at the toplevel dir:

$ ./DIST winvc

If you build from tarball, run this command at the toplevel dir:

$ sh winnt/winvc-prep.sh


[HOW TO BUILD]

Open Gauche.sln and run "build solution".

[HOW TO TEST]


[HOW TO INSTALL]



[HOW TO ADD NEW EXTENSION PROJECT]

We need to have separate project files per each extension dll.  If the
main distribution added new extensions in its bundle, corresponding 
vcproj file(s) should be added.

The project file name should be ext-something, where "something"
is the extension directory name (i.e. the source is under ext/something).
If the extension generates more than one dll, we need separate project
files for each.  Each project file should be named like ext-something-xxx.
The examples are ext-digest-md5 and ext-digest-sha1.

Here's the procedure.

First, open the solution file Gauche.sln and add a new project.  Select
Win32 project and put the appropriate name.  We put the project file
ext-something.vcproj in winnt/, the same directory as Gauche.sln.

In Win32 Application Wizard, choose DLL as application type and
check Empty project.  Then finish the wizard.
At this moment, Visual Studio creates a project file as
ext-something/ext-something.vcproj.  We don't want the extra ext-something
directory, though.  We quit VS and move ext-something.vcproj under
winnt manually, and adjust pathname in Gauche.sln.  If anybody knows
a better way, let us know.

Open VS again.  We don't use the default folders (Header Files etc.)
Just delete them.  Then add the necessary source.  (Make sure to do
this after vcproj path adjustment, or all the relative pathnames will
be messed up).

A project property sheet is created to keep the common settings.
Open property manager, select ext-something project, and choose
"Add Existing Property Sheet" from right-click menu.  Open ext.vsprops
file (it's under winnt directory).

The open the property of ext-something project.  At least you have to
change the following part:

- Add reference to libgauche (and ext-uvector if necessary).
- In Configuration Properties - General,
-- Output Directory: Choose <inherit from parent or project defaults>
-- Intermediate Directory: Choose <inherit from parent or project defaults>
- In Configuration Properties - Linker - General,
-- Set output file to $(OutDir)\something.dll  (substitute "something" 
   to the desirable dll name).  The default of this field is 
   $(OutDir)\$(ProjectName).dll, but we surely don't want ext-something.dll.

It should now compile.