Changes To Cookbook
Not logged in

Changes to "Cookbook" between 2010-01-08 22:56:38 and 2010-03-31 18:01:08

     8      8         <li><a href="#CGI">Using <cite>Fossil</cite>'s Built-In CGI</a>
     9      9       </ul>
    10     10     </li>
    11     11     <li><a href="#env">Using Environment variables</a></li>
    12     12     <li><a href="#css">Example CSS</a></li>
    13     13     <li><a href="#source-hilight">Source highlighting</a></li>
    14     14     <li><a href="#win32dev">Fossil Win32 Development Machine setup</a></li>
           15  +  <li><a href="#MingW">Compiling for windows</a></li>
    15     16     <li><a href="#wysiwig">Javascript HTML WYSIWYG editor control</a>
    16     17       <ul>
    17     18         <li><a href="#tinymce">TinyMCE</a></li>
    18     19         <li><a href="#markitup">markitup!</a></li>
    19     20       </ul>
    20     21     </li>
    21     22     <li><a href="#ticket-checkin-links">Link tickets to checkins</a></li>
................................................................................
   529    530   
   530    531   <h4>Visual Studio Express 2008+WiX</h4>
   531    532   <h5>Setup TCL</h5>
   532    533   <h5>Setup VS2008</h5>
   533    534   <h5>Getting WiX Windows MSI tool </h5>
   534    535   <h5>Getting Fossil source code</h5>
   535    536   <h5>Build the code with Makefile.win32</h5>
          537  +
          538  +<a name="MingW"><h2>Compiling for windows (xp, vista, win2k?, 7?)</h2></a>
          539  +<small>Windows versions with a ? after the version haven't been build by me and I cannot say if it works on those versions.</small>
          540  +
          541  +In order to produce windows executable, and more specific fossil we can follow, at least, 2 strategies.
          542  +  *  Compiling under windows with MingW.
          543  +  *  Compiling under Linux with crosscompiler MingW.
          544  +
          545  +
          546  +<h3>Compiling under windows with Mingw</h3>
          547  +<h4>Installing the tools.</h4>
          548  +  *  download [http://sourceforge.net/projects/mingw/files/|mingw-xx.exe] version 5.1.6 or later. Install it. I assume it will be installed in <strong>c:\MingW</strong>
          549  +  *  download [http://sourceforge.net/projects/mingw/files/|msys-xx.exe] version 1.0.10 or later. Install it. I assume it will be installed in <strong>c:\msys</strong>
          550  +  *  download [http://gnuwin32.sourceforge.net/packages/zlib.htm|zlib] the binary and developer files. Extract to <strong>c:\MingW</strong>
          551  +  *  If you want <strong>https</strong> support download [http://gnuwin32.sourceforge.net/packages/openssl.htm|openssl] the binary and developer files. Extract to <strong>c:\MingW</strong>
          552  +  *  download [http://www.fossil-scm.org/download.html|fossil] and copy fossil.exe to <strong>c:\MingW\bin</strong>
          553  +
          554  +<h4>Getting fossil source code</h4>
          555  +  *  start msys. This will start a bash shell. 
          556  +  *  mkdir fossil; cd fossil
          557  +  *  clone fossil repository. e.g. fossil clone http://www.fossil-scm.org/ myclone.fossil
          558  +  *  mkdir src; cd src
          559  +  *  fossil  open ../myclone.fossil
          560  +
          561  +<h4>Compiling fossil source code</h4>
          562  +  *  If you want <strong>https</strong> supports
          563  +     <ul><li>Change Makefile.win32. Change the line "LIB += -lcrypto -lssl" to "LIB = -lssl -lcrypto -lgdi32 -lmingwex -lz -lws2_32".</li>
          564  +     <li>make -f Makefile.w32 FOSSIL_ENABLE_SSL=1</li> </ul>
          565  +  *  else do make -f Makefile.w32 
          566  +
          567  + 
          568  +<h3>Compiling under linux for windows with Mingw</h3>
          569  +This is called cross compiling. I'm using [http://www.archlinux.org/|Arch linux] distribution which
          570  +uses the package manager pacman to install packages. If you have a differen linux distribution the packages might be called different. I assume a login name of renez substitute yours were apropiate.
          571  +
          572  +<h4>Installing the tools.</h4>
          573  +  *  Install mingw32-gccs. With Arch linux you do Pacman -S mingw32-gcc (As root!). This wile be installed in <strong>/usr/i486-mingw32</strong>
          574  +  *  download [http://gnuwin32.sourceforge.net/packages/zlib.htm|zlib] the binary and developer files.
          575  +  *  If you want <strong>https</strong> support download [http://gnuwin32.sourceforge.net/packages/openssl.htm|openssl] the binary and developer files.
          576  +  *  Extract to <strong>/usr/i486-mingw32</strong> by: su to root
          577  +  *  cd <strong>/usr/i486-mingw32</strong>
          578  +  *  unzip  ~renez/Downloads/zlib-1.2.3-bin.zip
          579  +  *  unzip  ~renez/Downloads/zlib-1.2.3-lib.zip
          580  +  *  unzip  ~renez/Downloads/openssl-0.9.8h-1-bin.zip
          581  +  *  unzip  ~renez/Downloads/openssl-0.9.8h-1-lib.zip
          582  +  *  exit root
          583  +  *  download [http://www.fossil-scm.org/download.html|fossil] for linux, and copy fossil to some where in your PATH directories maybe $HOME/bin.
          584  +
          585  +<h4>Getting fossil source code</h4>
          586  +  *  cd ; mkdir fossil; cd fossil
          587  +  *  clone fossil repository. e.g. fossil clone http://www.fossil-scm.org/ myclone.fossil
          588  +  *  mkdir src; cd src
          589  +  *  fossil  open ../myclone.fossil
          590  +
          591  +<h4>Compiling fossil source code</h4>
          592  +  *  If you want <strong>https</strong> supports
          593  +     <ul><li>Change Makefile.win32. Change the line "LIB += -lcrypto -lssl" to "LIB = -lssl -lcrypto -lgdi32 -lmingwex -lz -lws2_32".</li>
          594  +     <li>make -f Makefile.w32 TCC="i486-mingw32-gcc -Os -Wall  -DFOSSIL_I18N=0  -L/usr/i486-mingw32/lib -I/usr/i486-mingw32/include -DFOSSIL_ENABLE_SSL=1" FOSSIL_ENABLE_SSL=1</li> </ul>
          595  +  *   else make -f Makefile.w32 TCC="i486-mingw32-gcc -Os -Wall  -DFOSSIL_I18N=0  -L/usr/i486-mingw32/lib -I/usr/i486-mingw32/include "
          596  +
          597  +<h4>Distribution the cross compiled fossil.exe</h4>
          598  +Because you have linked against zlib and maybe ssl you need to include from <strong>/usr/i486-mingw32/bin</strong> zlib1.dll and, optional, libssl32.dll (and maybe also libeay32.dll)
          599  +
          600  +<h4>testing the cross compiled fossil.exe</h4>
          601  +  *  copy fossil.exe and the dll's to a windows system. For testing purpose all in one directory. For production use a directory in your PATH
          602  +  *  fossil clone http://www.fossil-scm.org/ http.fossil
          603  +  *  If it has <strong>https</strong> support then fossil clone https://www.fossil-scm.org/ https.fossil
          604  +
          605  +
          606  +
          607  +
          608  +
          609  +
          610  +
          611  +
          612  +
   536    613   
   537    614   <a name="wysiwig"><h2>Javascript HTML WYSIWYG editor control</h2></a>
   538    615   <h3>Motivation</h3>
   539    616     *  You want to edit the wiki pages with a nice editor component, instead of using plain HTML.
   540    617   
   541    618   <h3>Problem</h3>
   542    619   Fossil by itself doesn't support it.
................................................................................
   815    892   
   816    893     <ul compact='compact'>
   817    894       <li>puts "[hello hello]" doesn't work because [ triggers the
   818    895       interpeter, use puts "&amp;#91hello hello]'</li>
   819    896     </ul>
   820    897   </nowiki>
   821    898   </div>
   822         -