Home | History | Annotate | only in /external/bison/djgpp
Up to higher level directory
NameDateSize
config.bat15-Nov-201118.9K
config.sed15-Nov-20116.4K
config.site15-Nov-20112.7K
config_h.sed15-Nov-20111K
djunpack.bat15-Nov-20113.2K
fnchange.lst15-Nov-201190
Makefile.maint15-Nov-20111.5K
README.in15-Nov-20118.3K
subpipe.c15-Nov-20117.8K
subpipe.h15-Nov-20111.1K

README.in

      1 This is a port of GNU Bison @VERSION@ to MSDOS/DJGPP.
      2 
      3 Copyright (C) 2005, 2006 Free Software Foundation, Inc.
      4 
      5 This program is free software; you can redistribute it and/or modify
      6 it under the terms of the GNU General Public License as published by
      7 the Free Software Foundation; either version 2, or (at your option)
      8 any later version.
      9 
     10 This program is distributed in the hope that it will be useful,
     11 but WITHOUT ANY WARRANTY; without even the implied warranty of
     12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     13 GNU General Public License for more details.
     14 
     15 You should have received a copy of the GNU General Public License
     16 along with this program; if not, write to the Free Software Foundation,
     17 Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
     18 
     19 
     20 1.:     DJGPP specific changes.
     21 	=======================
     22 
     23 	The DJGPP port of Bison offers LFN and SFN support depending on which
     24 	OS it is running. If LFN support is available or not is determinated at
     25 	run time.  If LFN support is available (DOS session under Win9X, Win2K,
     26 	WinXP, etc.) the standard posix file name extensions will be used.
     27 	These are: y.tab.c, y.tab.c++, y.tab.h, y.output, etc.  If only SFN
     28 	support is available (plain DOS), then the standard MSDOS short file
     29 	names will be used. These are: y_tab.c, y_tab.h, y.out, etc.
     30 	It should be noticed that this bison version needs the m4 program as
     31 	back end to generate the parser file (y.tab.c etc.) from the skeleton
     32 	files.  This implies that m4 must always be installed to get bison
     33 	working.  m4 will use a couple of m4 scripts that will be installed in
     34 	/dev/env/DJDIR/share/bison and shall not be removed.
     35 	It should also be noticed that the skeleton files bison.simple and
     36 	bison.hairy are no longer supported.  This applies also to the environ-
     37 	ment variables BISON_HAIRY and BISON_SIMPLE.  Those variables are *no*
     38 	longer honored at all.
     39 	The kind of skeleton file bison.hairy is no longer supported at all.
     40 	The skeleton file bison.simple is now called yacc.c and is an m4 script.
     41 	The other two skeleton files supported by this bison version are glr.c
     42 	and lalr1.cc.  The first one is a generalized LR C parser based on
     43 	Bison's LALR(1) tables and the second one is a experimental C++ parser
     44 	class.
     45 	As has been told before, bison uses m4 to generate the parser file.
     46 	This is done by forking and using pipes for the IPC.  MSDOS does not
     47 	support this functionality so this has been reproduced in the usual
     48 	way by redirecting stdin and stdout of bison and m4 to temporary files
     49 	and processing these files in sequence.  All the changes to the sources
     50 	are documented in the djgpp/diffs file.
     51 
     52 	Please **read** the docs.
     53 
     54 
     55 2.:     Installing the binary package.
     56 	==============================
     57 
     58 2.1.:   Copy the binary distribution into the top DJGPP installation directory,
     59 	just unzip it preserving the directory structure running *ONE* of the
     60 	following commands:
     61 	  unzip32 bsn@PACKAGE_VERSION (a] b.zip      or
     62 	  djtarx bsn@PACKAGE_VERSION (a] b.zip       or
     63 	  pkunzip -d bsn@PACKAGE_VERSION (a] b.zip
     64 
     65 
     66 
     67 3.:     Building the binaries from sources.
     68 	===================================
     69 
     70 3.1.:   Create a temporary directory and copy the source package into the
     71 	directory.  If you download the source distribution from one of the
     72 	DJGPP sites, just unzip it preserving the directory structure
     73 	running *ONE* of the following commands:
     74 	  unzip32 bsn@PACKAGE_VERSION (a] s.zip      or
     75 	  djtarx bsn@PACKAGE_VERSION (a] s.zip       or
     76 	  pkunzip -d bsn@PACKAGE_VERSION (a] s.zip
     77 	and proceed to the paragraph 3.3, below.
     78 
     79 3.2.:   Source distributions downloaded from one of the GNU FTP sites need
     80 	some more work to unpack, if LFN support is not available.  If LFN is
     81 	available then you can extract the source files from the archive with
     82 	any unzip program and proceed to the paragraph 3.3, below.  Any file
     83 	name issue will be handled by the the DJGPP configuration files.
     84 	To unpack the source distribution on SFN systems, first, you MUST use
     85 	the `djunpack' batch file to unzip the package.  That is because some
     86 	file names in the official distributions need to be changed to avoid
     87 	problems on the various platforms supported by DJGPP.
     88 	`djunpack' invokes the `djtar' program (that is part of the basic DJGPP
     89 	development kit) to rename these files on the fly given a file with
     90 	name mappings; the distribution includes a file `djgpp/fnchange.lst'
     91 	with the necessary mappings.  So you need first to retrieve that batch
     92 	file, and then invoke it to unpack the distribution.  Here's how:
     93 
     94 	  djtar -x -p -o bison-@VERSION@/djgpp/djunpack.bat bison-@VERSION (a] .tar.gz > djunpack.bat
     95 	  djunpack bison-@VERSION (a] .tar.gz
     96 
     97 	(The name of the distribution archive and the leading directory of the
     98 	path to `djunpack.bat' in the distribution will be different for
     99 	versions of Bison other than @VERSION@.)
    100 
    101 	If the argument to `djunpack.bat' include leading directories, it MUST
    102 	be given with the DOS-style backslashes; Unix-style forward slashes
    103 	will NOT work.
    104 
    105 	If the distribution comes as a .tar.bz2 archive, and your version of
    106 	`djtar' doesn't support bzip2 decompression, you need to unpack it as
    107 	follows:
    108 
    109 	  bnzip2 bison-@VERSION (a] .tar.bz2
    110 	  djtar -x -p -o bison-@VERSION@/djgpp/djunpack.bat bison-@VERSION@.tar > djunpack.bat
    111 	  djunpack bison-@VERSION@.tar
    112 
    113 3.3.:   To build the binaries you will need the following binary packages:
    114 	  djdev203.zip (or a later but NOT a prior version)
    115 	  bsh204b.zip  (or a later but NOT a prior version)
    116 	  gcc410b.zip, gpp410b.zip, bnu2161b.zip, mak3791b.zip,
    117 	  fil40b.zip, shl20jb.zip, txt20b.zip,
    118 	  txi48b.zip, grep24b.zip, sed415b.zip,
    119 	  m4-144b.zip.
    120 
    121 	If you want to run the check you will need also:
    122 	  dif287b.zip
    123 
    124 	All this packages can be found in the v2gnu directory of any
    125 	ftp.delorie.com mirror.
    126 	You will need bsh204b.zip or later and *NOT* a prior version or
    127 	the build will fail.  The same applies to djdev203.zip.  Please note
    128 	that Bison requires m4-144b.zip or later to work properly.  All the
    129 	other packages are the ones I have used to build the binaries
    130 	from this source.  Previuos versions of this packages may do the
    131 	job as well but I have not tested this.
    132 
    133 3.4.:   If for some reason you want to reconfigure the package cd into the top
    134 	srcdir (bison-@TREE_VERSION@) and run the following commands:
    135 	  del djgpp\config.cache
    136 	  make clean
    137 	  djgpp\config
    138 
    139 	Please note that you *MUST* delete the config.cache file in the djgpp
    140 	subdir or you will not really reconfigure the sources because the
    141 	configuration informations will be read from the cache file instead
    142 	of being newly computed.
    143 	To build the programs in a directory other than where the sources are,
    144 	you must add the parameter that specifies the source directory,
    145 	e.g:
    146 	  x:\src\gnu\bison-@TREE_VERSION@\djgpp\config x:/src/gnu/bison-@TREE_VERSION@
    147 
    148 	Lets assume you want to build the binaries in a directory placed on a
    149 	different drive (z:\build in this case) from where the sources are,
    150 	then you will run the following commands:
    151 	  z:
    152 	  md \build
    153 	  cd \build
    154 	  x:\src\gnu\bison-@TREE_VERSION@\djgpp\config x:/src/gnu/bison-@TREE_VERSION@
    155 
    156 	The order of the options and the srcdir option does not matter.  You
    157 	*MUST* use forward slashes to specify the source directory.
    158 
    159 	The batch file will set same environment variables, make MSDOS specific
    160 	modifications to the Makefile.in's and supply all other needed options
    161 	to the configure script.
    162 
    163 3.5.:   To compile the package run from the top srcdir the command:
    164 	  make
    165 
    166 3.6.:   Now you can run the tests if you like.  From the top srcdir run the
    167 	command:
    168 	  make check
    169 
    170 	No test should fail but the tests #131 (Doxygen Public Documentation)
    171 	and #132 (Doxygen Private Documentation) will be skipped.  Please note
    172 	that the testsuite only works with LFN available.  On plain DOS, most
    173 	of the tests will fail due to invalid DOS names.
    174 
    175 3.7.:   To install the binaries, header, library, catalogs, and info docs
    176 	run the following command from the top srcdir:
    177 	  make install
    178 
    179 	This will install the products into your DJGPP installation tree given
    180 	by the default prefix "/dev/env/DJDIR".  If you prefer to install them
    181 	into some other directory you will have to set prefix to the appropiate
    182 	value:
    183 	  make install prefix=z:/some/other/place
    184 
    185 
    186 
    187 	Send GNU bison specific bug reports to <bug-bison (a] gnu.org>.
    188 	Send suggestions and bug reports concerning the DJGPP port to
    189 	comp.os.msdos.djgpp or <djgpp (a] delorie.com>.
    190 
    191 
    192 Enjoy.
    193 
    194 	Guerrero, Juan Manuel <juan.guerrero (a] gmx.de>
    195