ocaml/build
Wojciech Meyer 49a8d15728 build: skip $(IFLEXDIR) in mk_shell_and_ocamlbuild_config.sh.
(Patch by Adrien Nader!)

On Windows, IFLEXDIR is defined as -I"$(FLEXDIR)". The new
mk_shell_and_ocamlbuild_config script outputs:
  echo IFLEXDIR="\"$(IFLEXDIR)\""

However, becauses $(IFLEXDIR) contains quotation marks, this becomes:
  echo IFLEXDIR="\"-I"$(FLEXDIR)"\""

This unquotes $(FLEXDIR) and breaks the program.

Simply exclude IFLEXDIR from the variables that are handled by the
script. This is actually what the previous scripts were doing: the
exclude list was .*FLEXDIR and matched both IFLEXDIR and FLEXDIR while
the one I made only had \<FLEXDIR\> in it.

I've tried to handle it but there are at least three competing languages
and quoting rules: makefile (both gnu make and several bsd makes), shell
script and ocaml.
There's no human way to do string processing given the portability
constraints: both gnu make and pmake (and its descendants) have powerful
string processing functions but they're not the same.
The only sane way would be to store the configuration in a more evolved
language that is portable, has arrays and powerful string handling
routines in standard like C or awk. From there it would be possible to
output make, shell script and OCaml code easily.

One day. Maybe.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14171 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-21 10:24:34 +00:00
..
.ignore uniform .ignore system 2011-07-20 15:37:36 +00:00
boot-c-parts.sh renaming of Objective Caml to OCaml and cleanup of copyright headers 2011-07-27 14:17:02 +00:00
boot.sh use 'mark_tag_used' to solve all "unused tag" warnings in the distribution 2013-09-15 11:36:54 +00:00
buildbot Remove labltk from the distribution (will be available as a third-party library). 2013-09-09 09:32:00 +00:00
camlp4-bootstrap-recipe.txt Remove labltk from the distribution (will be available as a third-party library). 2013-09-09 09:32:00 +00:00
camlp4-bootstrap.sh Camlp4Fold/MapGenerator handle abstract type now 2013-08-05 03:24:29 +00:00
camlp4-byte-only.sh Synchronize camlp4-byte-only.sh with camlp4-native-only.sh to avoid camlp4 rebuild 2013-08-05 10:27:03 +00:00
camlp4-mkCamlp4Ast.sh remove all $Id keywords 2012-10-15 17:50:56 +00:00
camlp4-native-only.sh PR#5461: fix warnings 31 in camlp4 compilation 2013-02-18 12:09:06 +00:00
camlp4-targets.sh remove all $Id keywords 2012-10-15 17:50:56 +00:00
distclean.sh remove all $Id keywords 2012-10-15 17:50:56 +00:00
fastworld.sh build: replace build/mk{config,myocamlbuild_config}.sh. 2013-09-20 00:13:23 +00:00
install.sh Remove labltk from the distribution (will be available as a third-party library). 2013-09-09 09:32:00 +00:00
mixed-boot.sh build: replace build/mk{config,myocamlbuild_config}.sh. 2013-09-20 00:13:23 +00:00
mk_shell_and_ocamlbuild_config.sh build: skip $(IFLEXDIR) in mk_shell_and_ocamlbuild_config.sh. 2013-09-21 10:24:34 +00:00
mkruntimedef.sh remove all $Id keywords 2012-10-15 17:50:56 +00:00
myocamlbuild.sh remove all $Id keywords 2012-10-15 17:50:56 +00:00
new-build-system build: replace build/mk{config,myocamlbuild_config}.sh. 2013-09-20 00:13:23 +00:00
ocamlbuild-byte-only.sh remove all $Id keywords 2012-10-15 17:50:56 +00:00
ocamlbuild-native-only.sh remove all $Id keywords 2012-10-15 17:50:56 +00:00
ocamlbuildlib-native-only.sh remove all $Id keywords 2012-10-15 17:50:56 +00:00
otherlibs-targets.sh Remove labltk from the distribution (will be available as a third-party library). 2013-09-09 09:32:00 +00:00
partial-install.sh build: replace build/mk{config,myocamlbuild_config}.sh. 2013-09-20 00:13:23 +00:00
targets.sh PR#5547: Enable the "-use-ocamlfind" option by default 2013-07-27 00:02:13 +00:00
world.all.sh remove all $Id keywords 2012-10-15 17:50:56 +00:00
world.byte.sh remove all $Id keywords 2012-10-15 17:50:56 +00:00
world.native.sh remove all $Id keywords 2012-10-15 17:50:56 +00:00
world.sh build: replace build/mk{config,myocamlbuild_config}.sh. 2013-09-20 00:13:23 +00:00