OSDN Git Service

Add Docs about compiling with Mingw, BCC, watcom and VCC command line compiler in...
authorKeishi Suenaga <s_keishi@mutt.freemail.ne.jp>
Fri, 28 May 2004 23:34:22 +0000 (23:34 +0000)
committerKeishi Suenaga <s_keishi@mutt.freemail.ne.jp>
Fri, 28 May 2004 23:34:22 +0000 (23:34 +0000)
Modified Files:
   ChangeLog configure configure.in doc/C/Makefile.am
   doc/C/Makefile.in doc/ja_JP.eucJP/Makefile.am
   doc/ja_JP.eucJP/Makefile.in script/Makefile.am
   script/Makefile.in script/readme.txt
Added Files:
   doc/C/README.w32 doc/ja_JP.eucJP/README.w32 script/wcc386_w.sh

13 files changed:
ChangeLog
configure
configure.in
doc/C/Makefile.am
doc/C/Makefile.in
doc/C/README.w32 [new file with mode: 0644]
doc/ja_JP.eucJP/Makefile.am
doc/ja_JP.eucJP/Makefile.in
doc/ja_JP.eucJP/README.w32 [new file with mode: 0644]
script/Makefile.am
script/Makefile.in
script/readme.txt
script/wcc386_w.sh [new file with mode: 0755]

index 3e71afa..9a5129a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,29 @@
+2004-05-30  Keishi Suenaga <s_keishi@mutt.freemail.ne.jp>
+
+       * configure.in 
+         interface.h.in 
+         interface/Makefile.am 
+         interface/vt100_c.c
+         libarc/Makefile.am 
+         libunimod/Makefile.am 
+         libunimod/unimod_priv.h
+         timidity/Makefile.am 
+         timidity/common.c 
+         timidity/gogo_a.c
+         timidity/sysdep.h 
+         timidity/timidity.c
+         timidity/version.c
+         utils/Makefile.am 
+         utils/support.h 
+         utils/tmdy_getopt.h
+         interface/ncurs_c.c
+       Can compile OpenWatcom in Msys or Cygwin environment.
+       added file
+         doc/README.win32
+         doc/ja_jp.eucJP/README-win32
+         scripts/wcc386_w.sh
+       Compile instructions for Mingw, Borland C, Watcom C and  Visual C
+
 2004-05-24  Eric A. Welsh <ewelsh@ccb.wustl.edu>
 
        * libunimod/load_mod.c (ConvertNote): Bug fix
index 7416c0d..e187c84 100755 (executable)
--- a/configure
+++ b/configure
@@ -3893,7 +3893,7 @@ case "$target" in
         CFLAGS="$CFLAGS  -tWM -VM"
         EXTRADEFS="$EXTRADEFS -D_WINDOWS -DWIN32"
         ;;
-      "xwcc386_w "*)
+      "xwcc386_w.sh "*)
          WATCOM=yes
          CFLAGS="$CFLAGS -5s -zk0 -bm -zp=16 -w=4 -D_MSC_VER -D_WINDOWS -DWIN32 -DINCLUDE_WINDOWS_H"
          WATCOM_LDFLAGS=
@@ -3926,7 +3926,7 @@ case "$target" in
         CFLAGS="$CFLAGS  -tWM -VM"
         EXTRADEFS="$EXTRADEFS -D_WINDOWS -DWIN32"
         ;;
-      "xwcc386_w "*)
+      "xwcc386_w.sh "*)
          WATCOM=yes
          CFLAGS="$CFLAGS -5s -zk0 -bm -zp=16 -w=4 -D_MSC_VER -D_WINDOWS -DWIN32 -DINCLUDE_WINDOWS_H"
          WATCOM_LDFLAGS=
index b5e9b09..33700ad 100644 (file)
@@ -228,7 +228,7 @@ case "$target" in
         CFLAGS="$CFLAGS  -tWM -VM"
         EXTRADEFS="$EXTRADEFS -D_WINDOWS -DWIN32"
         ;;
-      "xwcc386_w "*)
+      "xwcc386_w.sh "*)
          WATCOM=yes
          CFLAGS="$CFLAGS -5s -zk0 -bm -zp=16 -w=4 -D_MSC_VER -D_WINDOWS -DWIN32 -DINCLUDE_WINDOWS_H"
          WATCOM_LDFLAGS=
@@ -261,7 +261,7 @@ case "$target" in
         CFLAGS="$CFLAGS  -tWM -VM"
         EXTRADEFS="$EXTRADEFS -D_WINDOWS -DWIN32"
         ;;
-      "xwcc386_w "*)
+      "xwcc386_w.sh "*)
          WATCOM=yes
          CFLAGS="$CFLAGS -5s -zk0 -bm -zp=16 -w=4 -D_MSC_VER -D_WINDOWS -DWIN32 -DINCLUDE_WINDOWS_H"
          WATCOM_LDFLAGS=
index b4b45a5..bf4a466 100644 (file)
@@ -30,4 +30,5 @@ EXTRA_DIST = \
        README.xaw \
        README.alsaseq \
        README.m2m \
-       README.mts
+       README.mts \
+       README.w32
index fde0dac..fcc2ba5 100644 (file)
@@ -271,7 +271,8 @@ EXTRA_DIST = \
        README.xaw \
        README.alsaseq \
        README.m2m \
-       README.mts
+       README.mts \
+       README.w32
 
 subdir = doc/C
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
diff --git a/doc/C/README.w32 b/doc/C/README.w32
new file mode 100644 (file)
index 0000000..7ab2f7c
--- /dev/null
@@ -0,0 +1,448 @@
+How to compile TiMidity++ for Windows
+
+This file contains fllowing instructions.
+
+1.Mingw in Msys environment
+2.Borland C++ in Msys environment
+3.OpenWatcom C++ in Msys environment
+4.Visual C++ in Msys environment
+
+
+1.Mingw in Msys environment
+
+(1)Setup Mingw and MSYS
+    1)Setup Mingw(http://sourceforge.net/projects/mingw/) 
+      and MSYS (See MingwWiki(http://mingw.sourceforge.net/MinGWiki/))
+        If want to build Japanese version of TiMidity++,
+            you can use Mingw-JP(http://sourceforge.jp/projects/mingw-jp),
+            at least windres.exe  from Mingw-JP is needed,
+            and to set windows(not msys) environment valiable CLANG=C-SJIS is recomended.
+(2)Setup needed libraries
+        2-0)get pexports from Mingw
+            "pexports" is included in mingw-utils-0.3.tar.gz, get it and extract it.
+        2-1)pdcurses
+            Get pdcurses-2.6.0-2003.07.21-1.exe from Mingw. and extract them.
+            Move curses.h to include path and libcurses.a libarary path.
+        2-2)oggvorbis(http://www.vorbis.com/)
+            get OggVorbis-win32sdk-1.0.1.zip and extract it.
+            make export libraries
+                pexports xxxx.dll >xxxx.def
+                dlltool --dllname xxxx.dll --input-def xxxx.def --output-lib libxxxx.a
+            Change include\ogg\os_type.h line 29 as following
+                (os_types.h)
+                29 #  if !defined(__GNUC__) || defined(__MINGW32__)
+            set environment variables in batch file like this.
+                REM OggVorbis
+                set PATH=\usr\local\oggvorbis-win32sdk-1.0.1\bin;\usr\local\oggvorbis-win32sdk-1.0.1\lib;%PATH%
+                set C_INCLUDE_PATH=/usr/local/oggvorbis-win32sdk-1.0.1/include:%C_INCLUDE_PATH
+                set LD_LIBRARY_PATH=/usr/local/oggvorbis-win32sdk-1.0.1/lib:%LD_LIBRARY_PATH%
+
+        2-3)gogo no coder(http://www.marinecat.net/mct_top.htm)
+            get gogo.dll from Gogo no Coder(http://www.marinecat.net/cgi/lcount/count.cgi?page=3112&name=wing311.exe&downex=wing311a.exe)
+            get gogo.h files from Gogo noCoder source(http://www.marinecat.net/cgi/lcount/count.cgi?page=3111&name=petit311-src.lzh&downex=petit311.lzh)
+            move gogo.h gogo\include\gogo
+            move gogo.dll gogo\lib
+            make export libraries
+                pexports gogo.dll >gogo.def
+                dlltool --dllname gogo.dll --input-def gogo.def --output-lib libgogo.a
+            set environment variables in batch file like this.
+                REM GOGO
+                set PATH=\usr\local\gogo\bin;\usr\local\gogo\lib;%PATH%
+                set C_INCLUDE_PATH=/usr/local/gogo/include:%C_INCLUDE_PATH%
+                set LD_LIBRARY_PATH=/usr/local/gogo/lib:%LD_LIBRARY_PATH%
+        2-4)flac(http://flac.sourceforge.net/)
+            get flac-1.1.0-win.zip and extract it.
+            Change include\*\export.h line 23 as following
+                (export.h)
+                23 #if defined(FLAC__NO_DLL) || !defined(_MSC_VER) \
+                    || !defined(__BORLANDC__) || !defined(__CYGWIN32__) || !defined(__MINGW32__)
+            set environment variables in batch file like this.
+                REM FLAC
+                set PATH=\usr\local\flac-1.1.0-win\bin;;%PATH%
+                set C_INCLUDE_PATH=/usr/local/flac-1.1.0-win/include:%C_INCLUDE_PATH%
+                set LD_LIBRARY_PATH=/usr/local/flac-1.1.0-win/bin:%LD_LIBRARY_PATH%
+
+        2-5)portaudio(http://www.portaudio.com/)
+            Download and make portaudio v1.18.
+            (see callasio http://www.audiomulch.com/~rossb/code/calliasio/)
+            Each portaudio.dll must be renamed  pa_asio.dll\81Apa_win_ds.dll\81Apa_win_wmme.dll.
+            Only portaudo.h is needed for compiling TiMidity++.
+
+        2-6)portmidi(http://www-2.cs.cmu.edu/~music/portmusic/)
+            Download portmidi18jun03.zip, extract it and compile it.
+            Copy porttime.h libporttime.a portmidi.h libportmidi.a to appropriate directories.
+
+(3)Make TiMidity++ binaries
+        3-1)timw32g.exe
+            (configure)
+             CFLAGS="-O2" configure --enable-network --enable-w32gui \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+            (make)
+             make
+             strip timidity.exe
+             mv timidity.exe timw32g.exe
+        3-2)twsyng.exe
+            (configure)
+             CFLAGS="-O2" configure --enable-network --enable-winsyng \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+            (make)
+             make
+             strip timidity.exe
+             mv timidity.exe twsyng.exe
+
+        3-3)twsynsrv.exe
+            (configure)
+              CFLAGS="-O2" configure --enable-network --enable-winsyng \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+             add config.h following line
+                #define TWSYNSRV 1
+           (make)
+             make
+             strip timidity.exe
+             mv timidity.exe twsynsrv.exe
+
+        3-4)timidity.exe
+            (configure)
+             CFLAGS="-O2" configure --enable-interface=ncurses,vt100,winsyn --enable-network \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+            (make)
+             make
+             strip timidity.exe
+
+
+2.Borland C++ in Msys environment
+
+(1)Setup BorlandC and MSYS
+    1)Setup BorlandC
+        Downlod C++Buldercompiler(http://www.borland.com/products/downloads/download_cbuilder.html#)
+         , read readme.txt and make bcc32.cfg and ilink 32.cfg.
+        (bcc32.cfg)
+          -I"C:\Borland\Bcc55\include"
+          -L"C:\Borland\Bcc55\lib;C:\Borland\Bcc55\lib\PSDK"
+          -DWINVER=0x0400
+          -D_WIN32_WINNT=0x0400
+        (ilink32.cfg )
+            -L"C:\Borland\Bcc55\lib;C:\Borland\Bcc55\lib\PSDK"
+    2)Setup  MSYS (See MingwWiki(http://mingw.sourceforge.net/MinGWiki/))
+        Remove mingw path from /etc/fstab.
+        Add fllowing line at the top of Msys.bat and create bcc_env.bat.
+              call c:\borland\bcc55\bin\bcc_env.bat
+        bcc_env.bat is like follow ing
+            @echo off
+            set PATH=c:\borland\bcc55\bin;%PATH%
+
+            Set INCLUDE=c:\usr\local\pdcurses_bcc\include;%INCLUDE%
+                  ----
+               ( setteing of various env. val. s )
+                  ----
+(2)Setup needed libraries
+        2-0-1)implib.exe(to make import library from dll)
+           implib -a -c xxx.lib xxx.dll
+        2-0-2)coff2omf.exe(VCC library to BCC library)
+           coff2omf  xxxx.lib xxx_bcpp.lib.
+        
+        2-1)pdcurses
+           pdcurses-2.6.0-src.tar.bz2 from Mingw(http://sourceforge.net/project/showfiles.php?group_id=2435)
+           and make them.
+           rename pdcurses.lib libpdcurses.lib
+           Move  curses.h to include path.
+           Add library path in ilink32.cfg
+      2-2)oggvorbis(http://www.vorbis.com/)
+           get OggVorbis-win32sdk-1.0.1.zip and extract it.
+           set environment variables in batch file like this.
+                REM OggVorbis
+                set PATH=\usr\local\oggvorbis-win32sdk-1.0.1\bin;\usr\local\oggvorbis-win32sdk-1.0.1\lib;%PATH%
+                set C_INCLUDE_PATH=/usr/local/oggvorbis-win32sdk-1.0.1/include:%C_INCLUDE_PATH
+            Add library path in ilink32.cfg
+            Only hederfiles are need for compiling TiMidity++
+        2-3)gogo no coder(http://www.marinecat.net/mct_top.htm)
+            get gogo.dll from Gogo no Coder(http://www.marinecat.net/cgi/lcount/count.cgi?page=3112&name=wing311.exe&downex=wing311a.exe)
+            get gogo.h files from Gogo no Coder source(http://www.marinecat.net/cgi/lcount/count.cgi?page=3111&name=petit311-src.lzh&downex=petit311.lzh)
+            move gogo.h gogo\include\gogo
+            (for timidity gogo.lib is not necessary)
+           set environment variables in batch file like this.
+                REM GOGO
+                set PATH=\usr\local\gogo\bin;\usr\local\gogo\lib;%PATH%
+                set C_INCLUDE_PATH=/usr/local/gogo/include:%C_INCLUDE_PATH%
+            Add library path in ilink32.cfg
+            Only hederfiles are need for TiMidity++
+        2-5)flac(http://flac.sourceforge.net/)
+          get flac-1.1.0-win.zip and extract it.
+            Change include\*\export.h line 23 as following
+                (export.h)
+                23 #if defined(FLAC__NO_DLL) || !defined(_MSC_VER) \
+                    || !defined(__BORLANDC__) || !defined(__CYGWIN32__) || !defined(__MINGW32__)
+            Change include\FLAC\ordinals.h line 39 as following
+                39 #if defined(_MSC_VER) || defined(__BORLANDC__)
+            set environment variables in batch file like this.
+                REM FLAC
+                set PATH=\usr\local\flac-1.1.0-win\bin;;%PATH%
+                set C_INCLUDE_PATH=/usr/local/flac-1.1.0-win/include:%C_INCLUDE_PATH%
+             Add library path in ilink32.cfg
+        2-6)portaudio(http://www.portaudio.com/)
+             I don't know how to comple portaudio with bcc commandline tools.
+             Only portaudio.h is needed for compiling TiMidity++.
+        2-7)portmidi(http://www-2.cs.cmu.edu/~music/portmusic/)
+             I don't know how to comple portaudio with bcc commandline tools.
+
+(3)Make TiMidity++ binaries
+        3-0-1) sed -e s/-o\ /-o/ configure >configure_bc
+                ( -o xxxx options are not wor with BCC -oxxxx is good.)
+        3-0-2)Invoke sh rm_float.sh in timidity/timidity directory.
+                This removes f , F, l and L after sonst float valude( ex. 123.45f )
+<rmfloat.sh>
+-------------------- from here -----------------------
+#!/bin/sh
+
+for foo in `ls *.c` `ls *.h`;do
+perl -pe 's/(%[0-9]*\.[0-9]+f)/$1f/g' $foo|perl -pe 's/(\.[0-9]+)f/$1/g' - |perl -pe 's/(\.[0-9]+)F/$1/g' - |perl -pe 's/(\.[0-9]+)l/$1/g' - |perl -pe 's/(\.[0-9]+)L/$1/g' - |perl -pe 's/(0x[0-9a-f]+)l/$1/g' - |perl -pe 's/(0x[0-9a-f]+)L/$1/g' - >$foo.rm
+mv $foo.rm $foo
+done
+-------------------- to here -------------------------
+                
+        3-1)timw32g.exe
+            (configure)
+             CC="bcc32" CPP="cpp32" CFLAGS="" ./configure_bc  --enable-w32gui \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+            (make)
+             make
+             mv timidity.exe timw32g.exe
+        3-2)twsyng.exe
+            (configure)
+            CC="bcc32" CPP="cpp32" CFLAGS="" \
+            ./configure_bc --enable-network --enable-winsyng \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+            (make)
+             make
+             mv timidity.exe twsyng.exe
+        3-3)twsynsrv.exe
+            (configure)
+             CC="bcc32" CPP="cpp32" CFLAGS=""\
+             ./configure_bc --enable-network --enable-winsyng \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+             add config.h following line
+                #define TWSYNSRV 1
+             (make)
+             make
+             mv timidity.exe twsynsrv.exe
+       3-4)timidity.exe
+            (configure)
+            CC="bcc32" CPP="cpp32" CFLAGS="" \
+             ./configure_bc --enable-interface=vt100,winsyn,ncurses --enable-network \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+            (make)
+             make
+
+
+3.OpenWatcom C++ in Msys environment
+
+(1)OpenWatcom and MSYS
+    1)Set OpenWatcom(http://www.openwatcom.org)
+       1-1)Download OpenWatcom, install and configure them
+       1-2)Download Microsoft Platform SDK install and configure them.
+            Replace rc.exe of OpenWatom with the one of Platform SDK's one.
+            (OpenWatcom's rc.exe can't use).
+  2)Setup Mngw and MSYS (See MingwWiki(http://mingw.sourceforge.net/MinGWiki/))
+        Remove mingw path from /etc/fstab.
+        Add fllowing line at the top of Msys.bat and create wcc_env.bat.
+              call wcc_env.bat
+        wcc_env.bat is like follow ing
+            @echo off
+            set LIB=
+            set INCLUDE=
+            call i:\watcom\setvars.bat
+                 ----
+               ( setteing of various env. val. s )
+                  ----
+(2)Setup needed libraries(The wcc386 option -5s is recomended !! Because of TiMidity++ compatibility.!!)
+        2-0) make import Libray from dll
+           mlib -n -b out.lib in.dll
+        2-1)pdcurses
+           Get  pdcurses-2.5.0  from GnuWin32(http://sourceforge.net/projects/gnuwin32/)
+           and make import Libraries from dlls.
+           "libpdcurses.lib"  is needed (not pdcurses.lib).
+           Move curses.h to include path and libpdcurses.lib libarary path.
+        2-2)oggvorbis(http://www.vorbis.com/)
+           Get OggVorbis-win32sdk-1.0.1.zip and extract it.
+           Make inport Libraries from dll
+           Set environment variables in batch file like this.
+                REM OggVorbis
+                set PATH=\usr\local\oggvorbis-win32sdk-1.0.1_wcc\bin;\usr\local\oggvorbis-win32sdk-1.0.1_wcc\lib;%PATH%
+                set C_INCLUDE_PATH=/usr/local/oggvorbis-win32sdk-1.0.1_wcc/include:%C_INCLUDE_PATH
+                set LIB=\usr\local\oggvorbis-win32sdk-1.0.1_wcc\lib:%LIB%
+           Only *.h files are needed for TiMidity++.
+        2-3)gogo no coder(http://www.marinecat.net/mct_top.htm)
+           Get gogo.dll from Gogo no Coder(http://www.marinecat.net/cgi/lcount/count.cgi?page=3112&name=wing311.exe&downex=wing311a.exe)
+            Get gogo.h files from Gogo noCoder source(http://www.marinecat.net/cgi/lcount/count.cgi?page=3111&name=petit311-src.lzh&downex=petit311.lzh)
+            Move gogo.h gogo\include\gogo
+            (for timidity gogo.lib not necessary)
+           Set environment variables in batch file like this.
+                REM GOGO
+                set PATH=\usr\local\gogo_wcc\bin;\usr\local\gogo_wcc\lib;%PATH%
+                set C_INCLUDE_PATH=/usr/local/gogo_wcc/include:%C_INCLUDE_PATH%
+                set LIB=\usr\local\gogo_wcc\lib:%LIB%
+           Only *.h files are needed for compiling TiMidity++.
+        2-5)flac(http://flac.sourceforge.net/)
+            get flac-1.1.0-win.zip and extract it.
+            make inport Libraries from dll
+            set environment variables in batch file like this.
+                REM FLAC
+                set PATH=\usr\local\flac-1.1.0-win_wcc\bin;%PATH%
+                set C_INCLUDE_PATH=/usr/local/flac-1.1.0-win_wcc/include:%C_INCLUDE_PATH%
+                set LIB=\usr\local\flac-1.1.0-win_wcc\bin:%LIB%
+           Only *.h files are needed for compiling TiMidity++.
+        2-6)portaudio(http://www.portaudio.com/)
+            I don't know how to comple portaudio with OpenWatcom commandline tools.
+            Only port audio.h is needed for compling TiMidity++.
+        2-7)portmidi(http://www-2.cs.cmu.edu/~music/portmusic/)
+            I don't know how to comple portmidi with OpenWatcom commandline tools..
+
+(3)Make TiMidity++ binaries
+        3-0-1)wcc386_w.sh ( it is in scripts/directory )
+            Wcc386 is not familier to GNU autoconf tools,
+            Use my wrapper wcc386_w.sh, instead of wcc386.exe
+        3-1)timw32g.exe
+            (configure)
+            CC="wcc386_w.sh" CPP="wcc386_w.sh -p"  CFLAGS="-d0 -obll+riemcht" \
+           ./configure --enable-network --enable-w32gui \
+            --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio \
+            --disable-oggtest --disable-vorbistest --disable-libFLACtest --disable-libOggFLACtest
+            ( cl386(except cl)  is need for watcom detection in configure script. )
+            (make)
+             make
+             mv timidity.exe timw32g.exe
+        3-2)twsyng.exe
+            (configure)
+            CC="wcc386_w.sh" CPP="wcc386_w.sh -p"  CFLAGS="-d0 -obll+riemcht" \
+            ./configure --enable-network --enable-winsyng \
+            --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio \
+            --disable-oggtest --disable-vorbistest --disable-libFLACtest --disable-libOggFLACtest
+            ( cl386(except cl)  is need for watcom detection in configure script. )
+             (make)
+             make
+             mv timidity.exe twsyng.exe
+        3-3)twsynsrv.exe
+            (configure)
+            CC="wcc386_w.sh" CPP="wcc386_w.sh -p"  CFLAGS="-d0 -obll+riemcht" \
+            ./configure --enable-network --enable-winsyng \
+            --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio \
+            --disable-oggtest --disable-vorbistest --disable-libFLACtest --disable-libOggFLACtest
+            ( cl386(except cl)  is need for watcom detection in configure script. )
+            add config.h following line
+                #define TWSYNSRV 1
+             (make)
+             make
+             mv timidity.exe twsynsrv.exe
+
+        3-4)timidity.exe
+            (configure)
+            CC="wcc386_w.sh" CPP="wcc386_w.sh -p"  CFLAGS="-d0 -obll+riemcht" \
+            ./configure --enable-interface=ncurses,vt100,winsyn --enable-network \
+            --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio \
+            --disable-oggtest --disable-vorbistest --disable-libFLACtest --disable-libOggFLACtest
+            (make)
+            make
+
+
+4.Visual C++ in Msys environment
+
+(1)Setup VisualC++ and MSYS
+    1)Setup Visual C++
+        Download
+            Microsoft Visual C++ Toolkit 2003
+            Microsoft.NET SDK
+            Microsoft Platform SDK
+        install and configure them.
+======= CAUTION !! ===========
+If you plan to distribute TiMidity++ binary, use "Visual C++" or "Visual Studio" not "Microsoft Visual C++ Toolkit 2003". because of LICENCE issue.
+==============================
+
+   2)Setup Mngw and MSYS (See MingwWiki(http://mingw.sourceforge.net/MinGWiki/))
+        Remove mingw path from /etc/fstab.
+        Add fllowing line at the top of Msys.bat and create bcc_env.bat.
+              call vc_msys_env.bat
+        vc_msys_env.bat is like follow ing
+            @echo off
+            call i:\"Program Files\Microsoft Visual C++ Toolkit 2003"\vcvars32.bat
+            call i:\"Program Files\Microsoft SDK"\SetEnv.Bat /RETAIL
+            call i:\"Program Files\Microsoft.NET\SDK\v1.1\bin"\sdkvars.bat
+
+            Set INCLUDE=c:\DXSDK\include;%INCLUDE%
+            Set LIB=c:\DXSDK\lib;%LIB%
+                  ----
+               ( setteing of various env. val. s )
+                  ----
+(2)Setup needed libraries
+        2-1)pdcurses
+           pdcurses-2.6.0-src.tar.bz2 from Mingw(http://sourceforge.net/project/showfiles.php?group_id=2435)
+           and make them.
+           rename pdcurses.lib libpdcurses.lib
+           move curses.h to include path and libpdcurses.lib libarary path.
+        2-2)oggvorbis(http://www.vorbis.com/)
+           get OggVorbis-win32sdk-1.0.1.zip and extract it.
+           set environment variables in batch file like this.
+                REM OggVorbis
+                set PATH=\usr\local\oggvorbis-win32sdk-1.0.1\bin;\usr\local\oggvorbis-win32sdk-1.0.1\lib;%PATH%
+                set C_INCLUDE_PATH=/usr/local/oggvorbis-win32sdk-1.0.1/include:%C_INCLUDE_PATH
+                set LIB=\usr\local\oggvorbis-win32sdk-1.0.1\lib:%LIB%
+
+        2-3)gogo no coder(http://www.marinecat.net/mct_top.htm)
+           Get gogo.dll from Gogo no Coder(http://www.marinecat.net/cgi/lcount/count.cgi?page=3112&name=wing311.exe&downex=wing311a.exe)
+           Get gogo.h files from Gogo noCoder source(http://www.marinecat.net/cgi/lcount/count.cgi?page=3111&name=petit311-src.lzh&downex=petit311.lzh)
+           Move gogo.h gogo\include\gogo
+            (for timidity gogo.lib not necessary)
+           Set environment variables in batch file like this.
+                REM GOGO
+                set PATH=\usr\local\gogo\bin;\usr\local\gogo\lib;%PATH%
+                set C_INCLUDE_PATH=/usr/local/gogo/include:%C_INCLUDE_PATH%
+                set LIB=\usr\local\gogo\lib:%LIB%
+        2-5)flac(http://flac.sourceforge.net/)
+            Set flac-1.1.0-win.zip and extract it.
+            Set environment variables in batch file like this.
+                REM FLAC
+                set PATH=\usr\local\flac-1.1.0-win\bin;;%PATH%
+                set C_INCLUDE_PATH=/usr/local/flac-1.1.0-win/include:%C_INCLUDE_PATH%
+                set LIB=\usr\local\flac-1.1.0-win\bin:%LIB%
+        2-6)portaudio(http://www.portaudio.com/).
+             I don't know how to comple portaudio with vc commandline tools.
+            But for compling TiMidity++ only port audio.h is needed.
+        2-7)portmidi(http://www-2.cs.cmu.edu/~music/portmusic/)
+            I don't know how to comple portmidi with vc commandline tools..
+
+(3)Make TiMidity++ binaries
+        3-1)timw32g.exe
+            (configure)
+             CC="cl" CPP="cl.exe -EP"  CFLAGS="-O2" \
+            ./configure --enable-network --enable-w32gui \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+            (make)
+            make
+             mv timidity.exe timw32g.exe
+        3-2)twsyng.exe
+            (configure)
+            CC="cl" CPP="cl.exe -EP"  CFLAGS="-O2" \
+            ./configure --enable-network --enable-winsyng \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+            (make)
+             make
+             mv timidity.exe twsyng.exe
+        3-3)twsynsrv.exe
+            (configure)
+             CC="cl" CPP="cl.exe -EP"  CFLAGS="-O2"\
+             ./configure --enable-network --enable-winsyng \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+             add config.h following line
+                #define TWSYNSRV 1
+             (make)
+             make
+             mv timidity.exe twsynsrv.exe
+        3-4)timidity.exe
+            (configure)
+            CC="cl" CPP="cl.exe -EP"  CFLAGS="-O2" \
+             ./configure --enable-interface=ncurses,vt100,winsyn --enable-network \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+            (make)
+             make
+
+
+2004.5.28 Keishi Suenaga(skeishi@mutt.freemail.ne.jp)
index c7cbb4a..f72122f 100644 (file)
@@ -28,4 +28,5 @@ EXTRA_DIST = \
        README.xaw \
        README.alsaseq \
        README.m2m \
-       README.mts
+       README.mts \
+       README.w32
index fc882f4..0ebcaf7 100644 (file)
@@ -269,7 +269,8 @@ EXTRA_DIST = \
        README.xaw \
        README.alsaseq \
        README.m2m \
-       README.mts
+       README.mts \
+       README.w32
 
 subdir = doc/ja_JP.eucJP
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
diff --git a/doc/ja_JP.eucJP/README.w32 b/doc/ja_JP.eucJP/README.w32
new file mode 100644 (file)
index 0000000..2b7191e
--- /dev/null
@@ -0,0 +1,400 @@
+TiMidity++ ¤òWindowsÍѤ˥³¥ó¥Ñ¥¤¥ë¤¹¤ëÊýË¡
+
+£±¡¥Msys´Ä¶­²¼¤ÇMingw¤Ç¥³¥ó¥Ñ¥¤¥ë
+£²¡¥Msys´Ä¶­²¼¤ÇBoraland C++¤Ç¥³¥ó¥Ñ¥¤¥ë
+£³¡¥Msys´Ä¶­²¼¤ÇOpenWatcom¤Ç¥³¥ó¥Ñ¥¤¥ë
+£´¡¥Msys´Ä¶­²¼¤ÇVisual C++¤Ç¥³¥ó¥Ñ¥¤¥ë
+
+
+£±¡¥Msys´Ä¶­²¼¤ÇMingw¤Ç¥³¥ó¥Ñ¥¤¥ë
+¡Ê£±¡ËMingw¤ÈMSYS¤Î¥»¥Ã¥È¥¢¥Ã¥×
+       £±¡ËMingw¤ÈMSYS¤Î¥»¥Ã¥È¥¢¥Ã¥×(http://sourceforge.net/projects/mingw/¡¡http://mingw.sourceforge.net/MinGWiki/))
+       ÆüËܸìÈǤΥ¤¥ó¥¹¥È¡¼¥ë¤Ë¤ÏMingw-jp(http://sourceforge.jp/projects/mingw-jp)¤ò»È¤¦¤È¤è¤¤¡£
+       ¾¯¤Ê¤¯¤È¤â¥ê¥½¡¼¥¹¥³¥ó¥Ñ¥¤¥é¤ÏMingw-jp¤Î¤â¤Î¤Ç¤Ê¤¤¤È¤¤¤±¤Ê¤¤¡£
+       ¤³¤Î¥ê¥½¡¼¥¹¥³¥ó¥Ñ¥¤¥é¤ò»È¤¦¤Ë¤ÏWindows¤Î´Ä¶­ÊÑ¿ô¤Ç¡¡CLANG=C-SJIS¡¡¤ÈÀßÄꤷ¤Ê¤¤¤È¤¤¤±¤Ê¤¤¡£¡ÊMSYS¤Î´Ä¶­ÊÑ¿ô¤Ç¤Ï¤À¤á¡Ë
+¡Ê£²¡Ë»ÈÍѤµ¤ì¤ë¥é¥¤¥Ö¥é¥êã¤Î¥»¥Ã¥È¥¢¥Ã¥×
+       £²¡Ý£°¡Ëdll¥Õ¥¡¥¤¥ë¤«¤é¥¤¥ó¥Ý¡¼¥È¥é¥¤¥Ö¥é¥ê¤òºî¤ëÊýË¡
+               ¡Êpexports¤Ïmingw-utils-0.3.tar.gz¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¡Ë
+               pexports xxxx.dll >xxxx.def
+               dlltool --dllname xxxx.dll --input-def xxxx.def --output-lib libxxxx.a
+       £²¡Ý£±¡Ëpcurses
+               "pdcurses-2.6.0-2003.07.21-1.exe"¤òMingw¤Î¥µ¥¤¥È¤«¤é¤È¤Ã¤Æ¤­¤ÆÀßÄꤹ¤ë¡£
+    £²¡Ý£²¡Ëoggvorbis(http://www.vorbis.com/)
+       "OggVorbis-win32sdk-1.0.1.zip¡É¤ò¤È¤Ã¤Æ¤¯¤ë
+               dll¥Õ¥¡¥¤¥ë¤«¤é¥¤¥ó¥Ý¡¼¥È¥é¥¤¥Ö¥é¥ê¤ò¤Ä¤¯¤ë
+       include\ogg\os_type.h¤Î£²£¹¹ÔÌܤò½ñ¤­´¹¤¨¤ë
+                       (os_types.h)
+                       29 #  if !defined(__GNUC__) || defined(__MINGW32__)
+               µ¯Æ°ÍѥХåÁ¥Õ¥¡¥¤¥ë¤Ë¥¨¥ó¥È¥ê¤ò¤Ä¤±¤¿¤¹
+                       REM OggVorbis
+                       set PATH=\usr\local\oggvorbis-win32sdk-1.0.1\bin;\usr\local\oggvorbis-win32sdk-1.0.1\lib;%PATH%
+                       set C_INCLUDE_PATH=/usr/local/oggvorbis-win32sdk-1.0.1/include:%C_INCLUDE_PATH
+                       set LD_LIBRARY_PATH=/usr/local/oggvorbis-win32sdk-1.0.1/lib:%LD_LIBRARY_PATH%
+    £²¡Ý£³¡Ë¸á¸å¤Î¥³¡¼¥À¡¼(http://www.marinecat.net/mct_top.htm)
+       Gogo.dll ¤ò¸á¸å¤Î¥³¡¼¥À¡¼¤«¤égogo.h¤ò¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤«¤é¤È¤ê¤À¤¹¡£
+       dll¥Õ¥¡¥¤¥ë¤«¤é¥¤¥ó¥Ý¡¼¥È¥é¥¤¥Ö¥é¥ê¤òºî¤ë¡£
+               move gogo.h gogo\include\gogo
+               move gogo.dll libgogo.a gogo\lib
+       µ¯Æ°ÍѥХåÁ¥Õ¥¡¥¤¥ë¤Ë¥¨¥ó¥È¥ê¤ò¤Ä¤±¤¿¤¹
+                       REM GOGO
+                       set PATH=\usr\local\gogo\bin;\usr\local\gogo\lib;%PATH%
+                       set C_INCLUDE_PATH=/usr/local/gogo/include:%C_INCLUDE_PATH%
+                       set LD_LIBRARY_PATH=/usr/local/gogo/lib:%LD_LIBRARY_PATH%
+       £²¡Ý4¡Ëflac(http://flac.sourceforge.net/)
+               flac-1.1.0-win.zip¤ò¤È¤Ã¤Æ¤¯¤ë¡£
+               Change include\*\export.h¤Î£²£³¹ÔÌܤò¤¹¤Ù¤Æ°Ê²¼¤Î¤è¤¦¤ËÊѹ¹
+                       (export.h)
+                       23 #if defined(FLAC__NO_DLL) || !defined(_MSC_VER) \
+                               || !defined(__BORLANDC__) || !defined(__CYGWIN32__) || !defined(__MINGW32__)
+               µ¯Æ°ÍѥХåÁ¥Õ¥¡¥¤¥ë¤Ë¥¨¥ó¥È¥ê¤ò¤Ä¤±¤¿¤¹
+                       REM FLAC
+                       set PATH=\usr\local\flac-1.1.0-win\bin;;%PATH%
+                       set C_INCLUDE_PATH=/usr/local/flac-1.1.0-win/include:%C_INCLUDE_PATH%
+                       set LD_LIBRARY_PATH=/usr/local/flac-1.1.0-win/bin:%LD_LIBRARY_PATH%     
+       £²¡Ý£µ¡Ëportaudio(http://www.portaudio.com/)
+               portaudio v1.18¤ò¤È¤Ã¤Æ¤­¤Æ¥³¥ó¥Ñ¥¤¥ë¤¹¤ë
+               asio¤Ë¤Ä¤¤¤Æ¤Ïcallasio¡Êhttp://www.audiomulch.com/~rossb/code/calliasio/)¤ÎHP¤Ë¾ðÊ󤬤¢¤ë¡£
+               portaudio.dll¤ò¤½¤ì¤¾¤ìpa_asio.dll¡¢pa_win_ds.dll¡¢pa_win_wmme.dll¤Î¤è¤¦¤Ë̾Á°¤ò¤«¤¨¤È¤¯¡£
+               portaudio.h¤µ¤¨¤¢¤ì¤ÐTiMidity++¤Ï¥³¥ó¥Ñ¥¤¥ë¤Ç¤­¤ë¡£
+       £²¡Ý£¶¡Ëportmidi(http://www-2.cs.cmu.edu/~music/portmusic/)
+               ¡Ê¤³¤³¤Ç¤Ï»È¤ï¤Ê¤¤¡Ë
+¡Ê£³¡ËTiMIdity++¤Î¥³¥ó¥Ñ¥¤¥ë
+        3-1)timw32g.exe
+            (configure)
+             CFLAGS="-O2" configure --enable-network --enable-w32gui \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+            (make)
+             make
+             strip timidity.exe
+             mv timidity.exe timw32g.exe
+        3-2)twsyng.exe
+            (configure)
+             CFLAGS="-O2" configure --enable-network --enable-winsyng \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+            (make)
+             make
+             strip timidity.exe
+             mv timidity.exe twsyng.exe
+
+        3-3)twsynsrv.exe
+            (configure)
+              CFLAGS="-O2" configure --enable-network --enable-winsyng \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+             add config.h following line
+                #define TWSYNSRV 1
+           (make)
+             make
+             strip timidity.exe
+             mv timidity.exe twsynsrv.exe
+
+        3-4)timidity.exe
+            (configure)
+             CFLAGS="-O2" configure --enable-interface=ncurses,vt100,winsyn --enable-network \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+            (make)
+             make
+             strip timidity.exe
+             
+             
+£²¡¥Msys´Ä¶­²¼¤ÇBoraland C++¤Ç¥³¥ó¥Ñ¥¤¥ë
+¡Ê£±¡ËBorland C¤ÈMSYS¤Î¥»¥Ã¥È¥¢¥Ã¥×
+       £±¡ËBorlandC¤Î¥»¥Ã¥È¥¢¥Ã¥×
+               C++Buldercompiler(http://www.borland.com/products/downloads/download_cbuilder.html#)¤ò¥À¥¦¥ó¥í¡¼¥É¤·¤Æ¤¯¤ë¡£
+               readme.tet¤Ë¤·¤¿¤¬¤Ã¤Æbcc32.cfg ¤Èilink 32.cfg¤ò¤Ä¤¯¤ë
+               (bcc32.cfg)
+                       -I"C:\Borland\Bcc55\include"
+                       -L"C:\Borland\Bcc55\lib;C:\Borland\Bcc55\lib\PSDK"
+                       -DWINVER=0x0400
+                       -D_WIN32_WINNT=0x0400
+               (ilink32.cfg )
+                       -L"C:\Borland\Bcc55\lib;C:\Borland\Bcc55\lib\PSDK"
+       £²¡ËMSYS¤Î¥»¥Ã¥È¥¢¥Ã¥×(http://sourceforge.net/projects/mingw/¡¡http://mingw.sourceforge.net/MinGWiki/))
+               "/etc/fstab"¤«¤éMINGW¤Î¥Ñ¥¹¤ÎÀßÄê¤Î¹Ô¤ò¾Ã¤¹
+               "msys.bat"¤«¤é"bcc_env.bat"¤ò¸Æ¤Ö¤è¤¦¤Ë¤¹¤ë¡£
+               (msys.bat¤ÎÀèƬ¹Ô¡Ë
+                       call c:\borland\bcc55\bin\bcc_env.bat
+               (bcc_env.bat¤ÎÆâÍÆ¡Ë
+                       @echo off
+                       set PATH=c:\borland\bcc55\bin;%PATH%
+                       
+                       Set INCLUDE=c:\usr\local\pdcurses_bcc\include;%INCLUDE%
+                               ¡Ê³¤¯¡Ë
+                                ----
+
+¡Ê£²¡Ë»ÈÍѤµ¤ì¤ë¥é¥¤¥Ö¥é¥êã¤Î¥»¥Ã¥È¥¢¥Ã¥×
+       £²¡Ý£°¡Ý£±¡Ëdll¥Õ¥¡¥¤¥ë¤«¤é¥¤¥ó¥Ý¡¼¥È¥é¥¤¥Ö¥é¥ê¤òºî¤ëÊýË¡
+               implib -a -c xxx.lib xxx.dll
+       £²¡Ý£°¡Ý£²¡ËVC¤ÎLIB¥Õ¥¡¥¤¥ë¤«¤éBC¤ÎLIB¥Õ¥¡¥¤¥ë¤òºî¤ëÊýË¡
+               coff2omf  xxxx.lib xxx_bcpp.lib
+
+       £²¡Ý£±¡Ëpcurses
+               "pdcurses-2.6.0-src.tar.bz2"¤òMingw¤Î¥µ¥¤¥È¤«¤é¤È¤Ã¤Æ¤­¤Æ¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¡£
+               pccurses.lib¤Ïlibpdcuses.lib¤Ë̾Á°¤òÊѤ¨¤Ê¤¤¤È¤¤¤±¤Ê¤¤¡£
+               µ¯Æ°¥Ð¥Ã¥Á¥Õ¥¡¥¤¥ë¤Èilink32.cfg¤Ë¥¨¥ó¥È¥ê¤ò½ñ¤­¹þ¤à             
+    £²¡Ý£²¡Ëoggvorbis(http://www.vorbis.com/)
+       "OggVorbis-win32sdk-1.0.1.zip¡É¤ò¤È¤Ã¤Æ¤¯¤ë
+               dll¥Õ¥¡¥¤¥ë¤«¤é¥¤¥ó¥Ý¡¼¥È¥é¥¤¥Ö¥é¥ê¤ò¤Ä¤¯¤ë
+               µ¯Æ°¥Ð¥Ã¥Á¥Õ¥¡¥¤¥ë¤Èilink32.cfg¤Ë¥¨¥ó¥È¥ê¤ò½ñ¤­¹þ¤à             
+    £²¡Ý£³¡Ë¸á¸å¤Î¥³¡¼¥À¡¼(http://www.marinecat.net/mct_top.htm)
+       Gogo.dll ¤ò¸á¸å¤Î¥³¡¼¥À¡¼¤«¤égogo.h¤ò¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤«¤é¤È¤ê¤À¤¹¡£
+       dll¥Õ¥¡¥¤¥ë¤«¤é¥¤¥ó¥Ý¡¼¥È¥é¥¤¥Ö¥é¥ê¤òºî¤ë¡£
+               move gogo.h gogo\include\gogo
+               move gogo.dll libgogo.a gogo\lib
+               µ¯Æ°¥Ð¥Ã¥Á¥Õ¥¡¥¤¥ë¤Èilink32.cfg¤Ë¥¨¥ó¥È¥ê¤ò½ñ¤­¹þ¤à             
+       £²¡Ý4¡Ëflac(http://flac.sourceforge.net/)
+               flac-1.1.0-win.zip¤ò¤È¤Ã¤Æ¤¯¤ë¡£
+               Change include\*\export.h¤Î£²£³¹ÔÌܤò¤¹¤Ù¤Æ°Ê²¼¤Î¤è¤¦¤ËÊѹ¹
+                       (export.h)
+                       23 #if defined(FLAC__NO_DLL) || !defined(_MSC_VER) \
+                               || !defined(__BORLANDC__) || !defined(__CYGWIN32__) || !defined(__MINGW32__)
+               include\FLAC\ordinals.h¤Î£³£¹¹ÔÌܤòÊѹ¹
+                       39 #if defined(_MSC_VER) || defined(__BORLANDC__)
+               µ¯Æ°¥Ð¥Ã¥Á¥Õ¥¡¥¤¥ë¤Èilink32.cfg¤Ë¥¨¥ó¥È¥ê¤ò½ñ¤­¹þ¤à
+       £²¡Ý£µ¡Ëportaudio(http://www.portaudio.com/)
+               ¥³¥ó¥Ñ¥¤¥ë¤Î»ÅÊý¤Ï¤ï¤«¤é¤Ê¤¤¤¬
+               portaudio.h¤µ¤¨¤¢¤ì¤ÐTiMidity++¤Ï¥³¥ó¥Ñ¥¤¥ë¤Ç¤­¤ë¡£
+       £²¡Ý£¶¡Ëportmidi(http://www-2.cs.cmu.edu/~music/portmusic/)
+               ¡Ê¤³¤³¤Ç¤Ï»È¤ï¤Ê¤¤¡Ë
+¡Ê£³¡ËTiMIdity++¤Î¥³¥ó¥Ñ¥¤¥ë
+        3-0-1) sed -e s/-o\ /-o/ configure >configure_bc
+                (configureÃæ¤Î -o xxxx ¤Ï£Â£Ã£Ã¤¬¼õ¤±ÉÕ¤±¤º -oxxxx ¤Ê¤é¼õ¤±ÉÕ¤±¤ë¤¿¤á)
+        3-0-2)rm_float.sh ¤ò timidity/timidity ¥Ç¥£¥ì¥¯¥È¥ê¤ÎÃæ¤Çµ¯Æ°¤¹¤ë¡£
+                ¿ôÃÍÄê¿ô¤Î¤¢¤È¤Î f , F, l and L ¤ò¼è¤ê½ü¤¯¥¹¥¯¥ê¥×¥È(  123.45f -> 123.45 )
+<rmfloat.sh>
+-------------------- from here -----------------------
+#!/bin/sh
+
+for foo in `ls *.c` `ls *.h`;do
+perl -pe 's/(%[0-9]*\.[0-9]+f)/$1f/g' $foo|perl -pe 's/(\.[0-9]+)f/$1/g' - |perl -pe 's/(\.[0-9]+)F/$1/g' - |perl -pe 's/(\.[0-9]+)l/$1/g' - |perl -pe 's/(\.[0-9]+)L/$1/g' - |perl -pe 's/(0x[0-9a-f]+)l/$1/g' - |perl -pe 's/(0x[0-9a-f]+)L/$1/g' - >$foo.rm
+mv $foo.rm $foo
+done
+-------------------- to here -------------------------
+                
+        3-1)timw32g.exe
+            (configure)
+             CC="bcc32" CPP="cpp32" CFLAGS="" ./configure_bc  --enable-w32gui \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+            (make)
+             make
+             mv timidity.exe timw32g.exe
+        3-2)twsyng.exe
+            (configure)
+            CC="bcc32" CPP="cpp32" CFLAGS="" \
+            ./configure_bc --enable-network --enable-winsyng \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+            (make)
+             make
+             mv timidity.exe twsyng.exe
+        3-3)twsynsrv.exe
+            (configure)
+             CC="bcc32" CPP="cpp32" CFLAGS=""\
+             ./configure_bc --enable-network --enable-winsyng \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+             add config.h following line
+                #define TWSYNSRV 1
+             (make)
+             make
+             mv timidity.exe twsynsrv.exe
+       3-4)timidity.exe
+            (configure)
+            CC="bcc32" CPP="cpp32" CFLAGS="" \
+             ./configure_bc --enable-interface=vt100,winsyn,ncurses --enable-network \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+            (make)
+             make
+
+
+£³¡¥Msys´Ä¶­²¼¤ÇOpenWatcom¤Ç¥³¥ó¥Ñ¥¤¥ë
+¡Ê£±¡ËOpenWatcom¤ÈMSYS¤Î¥»¥Ã¥È¥¢¥Ã¥×
+       £±¡ËOpenWatcom¤Î¥»¥Ã¥È¥¢¥Ã¥×(http://www.openwatcom.org)
+               £±¡Ý£±¡ËOpenWatcom¤ò¥À¥¦¥ó¥í¡¼¥É¤·¤Æ¤¯¤ë¡£
+               £²¡Ý£±¡ËMicrosoft Platform SDK¤«¤érc.exe¤ò¼è¤Ã¤Æ¤­¤Æ¤µ¤·¤«¤¨¤ë¡£
+               ¡ÊOpenWatom¤Îrc.exe¤Ï»È¤¨¤Ê¤¤¡Ë
+       £²¡ËMSYS¤Î¥»¥Ã¥È¥¢¥Ã¥×(http://sourceforge.net/projects/mingw/¡¡http://mingw.sourceforge.net/MinGWiki/))
+               "/etc/fstab"¤«¤éMINGW¤Î¥Ñ¥¹¤ÎÀßÄê¤Î¹Ô¤ò¾Ã¤¹
+               "msys.bat"¤«¤é"wcc_env.bat"¤ò¸Æ¤Ö¤è¤¦¤Ë¤¹¤ë¡£
+               (msys.bat¤ÎÀèƬ¹Ô¡Ë
+                       call wcc_env.bat
+               (wcc_env.bat¤ÎÆâÍÆ¡Ë
+                       @echo off
+                       set LIB=
+                       set INCLUDE=
+                       call i:\watcom\setvars.bat
+                       
+                       REM OggVorbis
+                       set PATH=\usr\local\oggvorbis-win32sdk-1.0.1_wcc\bin;\usr\local\oggvorbis-win32sdk-1.0.1_wcc\lib;%PATH%
+                       set C_INCLUDE_PATH=/usr/local/oggvorbis-win32sdk-1.0.1_wcc/include:%C_INCLUDE_PATH
+                       set LIB=\usr\local\oggvorbis-win32sdk-1.0.1_wcc\lib:%LIB%
+                               ¡Ê³¤¯¡Ë
+                                ----
+¡Ê£²¡Ë»ÈÍѤµ¤ì¤ë¥é¥¤¥Ö¥é¥êã¤Î¥»¥Ã¥È¥¢¥Ã¥×
+       £²¡Ý£°¡Ëdll¥Õ¥¡¥¤¥ë¤«¤é¥¤¥ó¥Ý¡¼¥È¥é¥¤¥Ö¥é¥ê¤òºî¤ëÊýË¡
+               mlib -n -b out.lib in.dll
+       £²¡Ý£±¡Ëpcurses
+               "pdcurses-2.5.0"¤òGnuWin32(http://sourceforge.net/projects/gnuwin32/)¤Î¥µ¥¤¥È¤«¤é¤È¤Ã¤Æ¤¯¤ë
+               dll¥Õ¥¡¥¤¥ë¤«¤é¥¤¥ó¥Ý¡¼¥È¥é¥¤¥Ö¥é¥ê¤òºî¤ë¡£
+               pccurses.lib¤Ïlibpdcuses.lib¤Ë̾Á°¤òÊѤ¨¤Ê¤¤¤È¤¤¤±¤Ê¤¤¡£
+               µ¯Æ°¥Ð¥Ã¥Á¥Õ¥¡¥¤¥ë¤Ë¥¨¥ó¥È¥ê¤ò½ñ¤­¹þ¤à          
+    £²¡Ý£²¡Ëoggvorbis(http://www.vorbis.com/)
+       "OggVorbis-win32sdk-1.0.1.zip¡É¤ò¤È¤Ã¤Æ¤¯¤ë
+               dll¥Õ¥¡¥¤¥ë¤«¤é¥¤¥ó¥Ý¡¼¥È¥é¥¤¥Ö¥é¥ê¤ò¤Ä¤¯¤ë
+               µ¯Æ°¥Ð¥Ã¥Á¥Õ¥¡¥¤¥ë¤Ë¥¨¥ó¥È¥ê¤ò½ñ¤­¹þ¤à          
+    £²¡Ý£³¡Ë¸á¸å¤Î¥³¡¼¥À¡¼(http://www.marinecat.net/mct_top.htm)
+       Gogo.dll ¤ò¸á¸å¤Î¥³¡¼¥À¡¼¤«¤égogo.h¤ò¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤«¤é¤È¤ê¤À¤¹¡£
+       dll¥Õ¥¡¥¤¥ë¤«¤é¥¤¥ó¥Ý¡¼¥È¥é¥¤¥Ö¥é¥ê¤òºî¤ë¡£
+               move gogo.h gogo\include\gogo
+               move gogo.dll libgogo.a gogo\lib
+               µ¯Æ°¥Ð¥Ã¥Á¥Õ¥¡¥¤¥ë¤Ë¥¨¥ó¥È¥ê¤ò½ñ¤­¹þ¤à          
+       £²¡Ý4¡Ëflac(http://flac.sourceforge.net/)
+               flac-1.1.0-win.zip¤ò¤È¤Ã¤Æ¤¯¤ë¡£
+               Change include\*\export.h¤Î£²£³¹ÔÌܤò¤¹¤Ù¤Æ°Ê²¼¤Î¤è¤¦¤ËÊѹ¹
+                       (export.h)
+                       23 #if defined(FLAC__NO_DLL) || !defined(_MSC_VER) \
+                               || !defined(__BORLANDC__) || !defined(__CYGWIN32__) || !defined(__MINGW32__)
+               include\FLAC\ordinals.h¤Î£³£¹¹ÔÌܤòÊѹ¹
+                       39 #if defined(_MSC_VER) || defined(__BORLANDC__)
+               dll¥Õ¥¡¥¤¥ë¤«¤é¥¤¥ó¥Ý¡¼¥È¥é¥¤¥Ö¥é¥ê¤ò¤Ä¤¯¤ë
+               µ¯Æ°¥Ð¥Ã¥Á¥Õ¥¡¥¤¥ë¤Ë¥¨¥ó¥È¥ê¤ò½ñ¤­¹þ¤à
+       £²¡Ý£µ¡Ëportaudio(http://www.portaudio.com/)
+               ¥³¥ó¥Ñ¥¤¥ë¤Î»ÅÊý¤Ï¤ï¤«¤é¤Ê¤¤¤¬
+               portaudio.h¤µ¤¨¤¢¤ì¤ÐTiMidity++¤Ï¥³¥ó¥Ñ¥¤¥ë¤Ç¤­¤ë¡£
+       £²¡Ý£¶¡Ëportmidi(http://www-2.cs.cmu.edu/~music/portmusic/)
+               ¡Ê¤³¤³¤Ç¤Ï»È¤ï¤Ê¤¤¡Ë
+¡Ê£³¡ËTiMIdity++¤Î¥³¥ó¥Ñ¥¤¥ë
+        3-0)wcc386_w.sh ( scripts/¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ë )
+            Wcc386 ¤ÏGNU¤Îauto Tool¤ÈÃ礬°­¤¤¤Î¤Ç¥é¥Ã¥Ñ¡¼¤ò¤Ä¤¯¤Ã¤¿¡£
+            ¥Ñ¥¹¤ÎÄ̤俥ǥ£¥ì¥¯¥È¥ê¤Ë°ÜÆ°¤µ¤»¤Æ¤ª¤¤¤Æ¡£
+            wcc386.exe¤Î¤«¤ï¤ê¤Ëwcc386_w.sh¤ò¸Æ¤Ó½Ð¤·¤Æ»È¤¦¡£
+        3-1)timw32g.exe
+            (configure)
+            CC="wcc386_w.sh" CPP="wcc386_w.sh -p"  CFLAGS="-d0 -obll+riemcht" \
+           ./configure --enable-network --enable-w32gui \
+            --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio \
+            --disable-oggtest --disable-vorbistest --disable-libFLACtest --disable-libOggFLACtest
+            ( cl386(except cl)  is need for watcom detection in configure script. )
+            (make)
+             make
+             mv timidity.exe timw32g.exe
+        3-2)twsyng.exe
+            (configure)
+            CC="wcc386_w.sh" CPP="wcc386_w.sh -p"  CFLAGS="-d0 -obll+riemcht" \
+            ./configure --enable-network --enable-winsyng \
+            --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio \
+            --disable-oggtest --disable-vorbistest --disable-libFLACtest --disable-libOggFLACtest
+            ( cl386(except cl)  is need for watcom detection in configure script. )
+             (make)
+             make
+             mv timidity.exe twsyng.exe
+        3-3)twsynsrv.exe
+            (configure)
+            CC="wcc386_w.sh" CPP="wcc386_w.sh -p"  CFLAGS="-d0 -obll+riemcht" \
+            ./configure --enable-network --enable-winsyng \
+            --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio \
+            --disable-oggtest --disable-vorbistest --disable-libFLACtest --disable-libOggFLACtest
+            ( cl386(except cl)  is need for watcom detection in configure script. )
+            add config.h following line
+                #define TWSYNSRV 1
+             (make)
+             make
+             mv timidity.exe twsynsrv.exe
+        3-4)timidity.exe
+            (configure)
+            CC="wcc386_w.sh" CPP="wcc386_w.sh -p"  CFLAGS="-d0 -obll+riemcht" \
+            ./configure --enable-interface=ncurses,vt100,winsyn --enable-network \
+            --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio \
+            --disable-oggtest --disable-vorbistest --disable-libFLACtest --disable-libOggFLACtest
+            (make)
+            make
+
+
+£´¡¥Msys´Ä¶­²¼¤ÇVisual C++¤Ç¥³¥ó¥Ñ¥¤¥ë
+¡Ê£±¡ËVisual C++¤ÈMSYS¤Î¥»¥Ã¥È¥¢¥Ã¥×
+       £±¡ËVisualC++¤Î¥»¥Ã¥È¥¢¥Ã¥×
+               Microsoft Visual C++ Toolkit 2003
+               Microsoft.NET SDK
+               Microsoft Platform SDK
+               ¤ò¥À¥¦¥ó¥í¡¼¥É¤·¤Æ¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¡£
+======= CAUTION !! ===========
+Microsoft Visual C++ Toolkit 2003¤Ç¥³¥ó¥Ñ¥¤¥ë¤·¤¿¥é¥¤¥Ö¥é¥ê¤Ï¥é¥¤¥»¥ó¥¹¾åÇÛÉۤǤ­¤Ê¤¤¡£
+ÇÛÉÛ¤¹¤ë¥Ð¥¤¥Ê¥ê¤Ï¡¢"Visual C++" ¤« "Visual Studio"¤Çºî¤ëɬÍפ¬¤¢¤ë¡£
+============================== 
+               
+       £²¡ËMSYS¤Î¥»¥Ã¥È¥¢¥Ã¥×(http://sourceforge.net/projects/mingw/¡¡http://mingw.sourceforge.net/MinGWiki/))
+               "/etc/fstab"¤«¤éMINGW¤Î¥Ñ¥¹¤ÎÀßÄê¤Î¹Ô¤ò¾Ã¤¹
+               "msys.bat"¤«¤é"vcc_env.bat"¤ò¸Æ¤Ö¤è¤¦¤Ë¤¹¤ë¡£
+               (msys.bat¤ÎÀèƬ¹Ô¡Ë
+                       call vcc_env.bat
+               (vcc_env.bat¤ÎÆâÍÆ¡Ë
+                       @echo off
+                       call i:\"Program Files\Microsoft Visual C++ Toolkit 2003"\vcvars32.bat
+                       call i:\"Program Files\Microsoft SDK"\SetEnv.Bat /RETAIL
+                       call i:\"Program Files\Microsoft.NET\SDK\v1.1\bin"\sdkvars.bat
+
+                       Set INCLUDE=c:\DXSDK\include;%INCLUDE%
+                       Set LIB=c:\DXSDK\lib;%LIB%
+                               ¡Ê³¤¯¡Ë
+                                ----
+¡Ê£²¡Ë»ÈÍѤµ¤ì¤ë¥é¥¤¥Ö¥é¥êã¤Î¥»¥Ã¥È¥¢¥Ã¥×
+       £²¡Ý£±¡Ëpcurses
+               "pdcurses-2.6.0-src.tar.bz2"¤òMingw¤Î¥µ¥¤¥È¤«¤é¤È¤Ã¤Æ¤­¤Æ¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¡£
+               pccurses.lib¤Ïlibpdcuses.lib¤Ë̾Á°¤òÊѤ¨¤Ê¤¤¤È¤¤¤±¤Ê¤¤¡£
+               µ¯Æ°¥Ð¥Ã¥Á¥Õ¥¡¥¤¥ë¤Ë¥¨¥ó¥È¥ê¤ò½ñ¤­¹þ¤à          
+    £²¡Ý£²¡Ëoggvorbis(http://www.vorbis.com/)
+       "OggVorbis-win32sdk-1.0.1.zip¡É¤ò¤È¤Ã¤Æ¤¯¤ë
+               µ¯Æ°¥Ð¥Ã¥Á¥Õ¥¡¥¤¥ë¤Ë¥¨¥ó¥È¥ê¤ò½ñ¤­¹þ¤à          
+    £²¡Ý£³¡Ë¸á¸å¤Î¥³¡¼¥À¡¼(http://www.marinecat.net/mct_top.htm)
+       Gogo.dll ¤ò¸á¸å¤Î¥³¡¼¥À¡¼¤«¤égogo.h¤ò¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤«¤é¤È¤ê¤À¤¹¡£
+               move gogo.h gogo\include\gogo
+               move gogo.dll libgogo.a gogo\lib
+               µ¯Æ°¥Ð¥Ã¥Á¥Õ¥¡¥¤¥ë¤Ë¥¨¥ó¥È¥ê¤ò½ñ¤­¹þ¤à          
+       £²¡Ý4¡Ëflac(http://flac.sourceforge.net/)
+               flac-1.1.0-win.zip¤ò¤È¤Ã¤Æ¤¯¤ë¡£
+               Change include\*\export.h¤Î£²£³¹ÔÌܤò¤¹¤Ù¤Æ°Ê²¼¤Î¤è¤¦¤ËÊѹ¹
+                       (export.h)
+                       23 #if defined(FLAC__NO_DLL) || !defined(_MSC_VER) \
+                               || !defined(__BORLANDC__) || !defined(__CYGWIN32__) || !defined(__MINGW32__)
+               include\FLAC\ordinals.h¤Î£³£¹¹ÔÌܤòÊѹ¹
+                       39 #if defined(_MSC_VER) || defined(__BORLANDC__)
+               µ¯Æ°¥Ð¥Ã¥Á¥Õ¥¡¥¤¥ë¤Ë¥¨¥ó¥È¥ê¤ò½ñ¤­¹þ¤à
+       £²¡Ý£µ¡Ëportaudio(http://www.portaudio.com/)
+               ¥³¥ó¥Ñ¥¤¥ë¤Î»ÅÊý¤Ï¤ï¤«¤é¤Ê¤¤¤¬
+               portaudio.h¤µ¤¨¤¢¤ì¤ÐTiMidity++¤Ï¥³¥ó¥Ñ¥¤¥ë¤Ç¤­¤ë¡£
+       £²¡Ý£¶¡Ëportmidi(http://www-2.cs.cmu.edu/~music/portmusic/)
+               ¡Ê¤³¤³¤Ç¤Ï»È¤ï¤Ê¤¤¡Ë
+¡Ê£³¡ËTiMIdity++¤Î¥³¥ó¥Ñ¥¤¥ë
+        3-1)timw32g.exe
+            (configure)
+             CC="cl" CPP="cl.exe -EP"  CFLAGS="-O2" \
+            ./configure --enable-network --enable-w32gui \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+            (make)
+            make
+             mv timidity.exe timw32g.exe
+        3-2)twsyng.exe
+            (configure)
+            CC="cl" CPP="cl.exe -EP"  CFLAGS="-O2" \
+            ./configure --enable-network --enable-winsyng \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+            (make)
+             make
+             mv timidity.exe twsyng.exe
+        3-3)twsynsrv.exe
+            (configure)
+             CC="cl" CPP="cl.exe -EP"  CFLAGS="-O2"\
+             ./configure --enable-network --enable-winsyng \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+             add config.h following line
+                #define TWSYNSRV 1
+             (make)
+             make
+             mv timidity.exe twsynsrv.exe
+        3-4)timidity.exe
+            (configure)
+            CC="cl" CPP="cl.exe -EP"  CFLAGS="-O2" \
+             ./configure --enable-interface=ncurses,vt100,winsyn --enable-network \
+             --enable-audio=w32,vorbis,gogo,ogg,flac,portaudio
+            (make)
+             make
+
+
+2004.5.28 Ëö±Ê¡¡·½»Ê(skeishi@mutt.freemail.ne.jp)
index 537f893..ba96d67 100644 (file)
@@ -19,4 +19,5 @@
 EXTRA_DIST = \
        dllutl.rb \
        lspatch.pl \
-       readme.txt
+       readme.txt \
+       wcc386_w.sh 
index e4aee72..2257c64 100644 (file)
@@ -262,7 +262,8 @@ w_so_libs = @w_so_libs@
 EXTRA_DIST = \
        dllutl.rb \
        lspatch.pl \
-       readme.txt
+       readme.txt \
+       wcc386_w.sh 
 
 subdir = script
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
index 844463d..486afa4 100644 (file)
@@ -1,3 +1,3 @@
 dllutl.rb: dynamic import source generator for dll (vorbis, gogo).
 lspatch.pl: List the entire instrument configuration
-
+wcc386_w.sh: "OpenWatcom C" wrapper for AutoTools(see doc/*/README.w32)
diff --git a/script/wcc386_w.sh b/script/wcc386_w.sh
new file mode 100755 (executable)
index 0000000..722cd51
--- /dev/null
@@ -0,0 +1,167 @@
+#\r
+#    "wcc386.exe" wrapper\r
+#    Copyright (C) 2004 Keishi Suenaga <s_kesihi@mutt.freemail.ne.jp>\r
+#\r
+#    This program is free software; you can redistribute it and/or modify\r
+#    it under the terms of the GNU General Public License as published by\r
+#    the Free Software Foundation; either version 2 of the License, or\r
+#    (at your option) any later version.\r
+#\r
+#    This program is distributed in the hope that it will be useful,\r
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of\r
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
+#    GNU General Public License for more details.\r
+#\r
+#    You should have received a copy of the GNU General Public License Version 2\r
+#    along with this program; if not, write to the Free Software\r
+#    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\r
+#\r
+#    wcc386_w.sh:
+#       wcc386 wrapper script.
+#       Make wcc386 to accespt GNU autotools like calls.
+#
+
+#!/bin/sh
+
+foo0=`echo $@|perl -pe 's/($s)(-O.)($s)/$1 $3/'|perl -pe 's/($s)(-D)($S)/$1-d$3/g' -|perl -pe 's/($s)(-I)($S)/$1-i=$3/g' -|perl -pe 's/\\//\\\\/g' -`
+\r
+###############################################################################\r
+#                                                                             #\r
+# compilelink()  parameters     foo0  the list of command line                #\r
+#                               fname filename of exe file                    #\r
+#                               compileonly  do not invoke wlink              #\r
+#                                                                             #\r
+###############################################################################\r
+
+compilelink(){
+     complist=" "
+     clist=" "
+     liblist=" "
+     objlist=" "
+     rmobjlist=" "
+     for foo in $foo0 ;do
+       case $foo in
+       *.c)
+         if test "x$fname" = "x " ;then
+           fname=`echo $foo|perl -pe 's/(.*)\.c/$1/' -`
+         fi
+         clist="$clist $foo"
+         ;;
+       *.cpp)
+         if test "x$fname" = "x " ;then
+           fname=`echo $foo|perl -pe 's/(.*)\.cpp/$1/' -`
+         fi
+         clist="$clist $foo"
+         ;;
+       *.obj)
+         objlist="$objlist file $foo"
+         rmobjlist="$rmobjlist $foo"
+         ;;
+       *.lib)
+         liblist="$liblist Library $foo"
+         ;;
+       *)
+       complist="$complist $foo"
+       esac
+    done
+    if test "x$clist" != "x "; then
+      for foo in $clist ; do
+        if ! wcc386 -zq $foo $complist; then exit -1; fi
+        bar=`echo $foo|perl -pe 's/(.*)\.c.*/$1/' -`.obj
+        objlist="$objlist file $bar"
+        rmobjlist="$rmobjlist $bar"
+      done
+    fi
+    if test "x$compileonly" != xyes; then
+      if ! wlink  op q $objlist $liblist  Name "$fname".exe; then exit -1; fi
+      rm $rmobjlist
+    fi
+}
+
+case $foo0 in
+"")
+  wcc386
+  ;;
+*"-p "*|*" -p"*)
+  if ! wcc386 -zq $foo0; then exit -1; fi
+  ;;
+*"-c "*|*" -c"*)
+  foo=`echo $foo0|perl -pe 's/-c / /' -|perl -pe 's/ -c$/ /' -`  
+  case $foo0 in
+  *"-o "*)
+    bar=`echo $foo|perl -pe 's/-o /-fo=/' -`
+    if ! wcc386 -zq $bar; then exit -1; fi
+    ;;
+  *)
+    foo0=$foo
+    compileonly=yes
+    compilelink
+    ;;
+  esac
+  ;;
+*)
+  case $foo0 in
+  *"-o "*)
+    echo $foo0
+     bar=" "
+     found=" "
+     for foo in $foo0 ;do
+       case $foo in
+       -o)
+            found=yes 
+         ;;
+       *)
+         if test "x$found" = xyes; then
+           fname=`echo $foo|perl -pe 's/(.*)\.exe/$1/' -`
+              found=no
+            else
+              bar="$complist $foo"
+         fi
+         ;;
+       esac
+    done
+    foo0=$bar
+    if test "x$fname" = x; then
+      echo "wcc386_w Error"
+      exit -1;
+    fi
+    compilelink
+    ;;
+  *)
+     fname=" "
+     objfname=" "
+     for foo in $foo0 ;do
+       case $foo in
+       *.c)
+         if test "x$fname" = "x " ;then
+           fname=`echo $foo|perl -pe 's/(.*)\.c/$1/' -`
+         fi
+         ;;
+       *.cpp)
+         if test "x$fname" = "x " ;then
+           fname=`echo $foo|perl -pe 's/(.*)\.cpp/$1/' -`
+         fi
+         ;;
+       *.obj)
+         if test "x$objfname" = "x " ;then
+           objfname=`echo $foo|perl -pe 's/(.*)\.obj/$1/' -`
+         fi
+         ;;
+
+       *)
+       esac
+    done
+    if test "x$fname" = "x " && test "x$objfname" = "x "; then
+      echo "wcc386_w Error"
+      exit -1;
+    fi
+    if test "x$fname" = "x "; then
+      fname=$objfname
+    fi
+    compilelink
+    ;;
+ esac
+ ;;
+esac
+
+exit 0;