(linenum→info "unix/slp.c:2238")

gauche/0.8.12/winnt/README.txt

    1: This directory contains files to compile Gauche with VisualC++ on Windows.
    2: As of 0.8.12, the core and several modules work, though we still need to
    3: tweak a few major modules (notably, gauche.net).
    4: 
    5: If you get the source tree from the standard tarball (Gauche-x.x.x.tgz)
    6: or from CVS, you have to preprocess the source tree.  You need a unix-
    7: compatible environment (such as cygwin) to do that.
    8: 
    9: If you build from CVS, run this command at the toplevel dir:
   10: 
   11: $ ./DIST winvc
   12: 
   13: If you build from tarball, run this command at the toplevel dir:
   14: 
   15: $ sh winnt/winvc-prep.sh
   16: 
   17: 
   18: [HOW TO BUILD]
   19: 
   20: Open Gauche.sln and run "build solution".
   21: 
   22: [HOW TO TEST]
   23: 
   24: 
   25: [HOW TO INSTALL]
   26: 
   27: 
   28: 
   29: [HOW TO ADD NEW EXTENSION PROJECT]
   30: 
   31: We need to have separate project files per each extension dll.  If the
   32: main distribution added new extensions in its bundle, corresponding 
   33: vcproj file(s) should be added.
   34: 
   35: The project file name should be ext-something, where "something"
   36: is the extension directory name (i.e. the source is under ext/something).
   37: If the extension generates more than one dll, we need separate project
   38: files for each.  Each project file should be named like ext-something-xxx.
   39: The examples are ext-digest-md5 and ext-digest-sha1.
   40: 
   41: Here's the procedure.
   42: 
   43: First, open the solution file Gauche.sln and add a new project.  Select
   44: Win32 project and put the appropriate name.  We put the project file
   45: ext-something.vcproj in winnt/, the same directory as Gauche.sln.
   46: 
   47: In Win32 Application Wizard, choose DLL as application type and
   48: check Empty project.  Then finish the wizard.
   49: At this moment, Visual Studio creates a project file as
   50: ext-something/ext-something.vcproj.  We don't want the extra ext-something
   51: directory, though.  We quit VS and move ext-something.vcproj under
   52: winnt manually, and adjust pathname in Gauche.sln.  If anybody knows
   53: a better way, let us know.
   54: 
   55: Open VS again.  We don't use the default folders (Header Files etc.)
   56: Just delete them.  Then add the necessary source.  (Make sure to do
   57: this after vcproj path adjustment, or all the relative pathnames will
   58: be messed up).
   59: 
   60: A project property sheet is created to keep the common settings.
   61: Open property manager, select ext-something project, and choose
   62: "Add Existing Property Sheet" from right-click menu.  Open ext.vsprops
   63: file (it's under winnt directory).
   64: 
   65: The open the property of ext-something project.  At least you have to
   66: change the following part:
   67: 
   68: - Add reference to libgauche (and ext-uvector if necessary).
   69: - In Configuration Properties - General,
   70: -- Output Directory: Choose <inherit from parent or project defaults>
   71: -- Intermediate Directory: Choose <inherit from parent or project defaults>
   72: - In Configuration Properties - Linker - General,
   73: -- Set output file to $(OutDir)\something.dll  (substitute "something" 
   74:    to the desirable dll name).  The default of this field is 
   75:    $(OutDir)\$(ProjectName).dll, but we surely don't want ext-something.dll.
   76: 
   77: It should now compile.
   78: 
   79: 
   80: 
   81: 
   82: 
   83: 
Syntax (Markdown)