Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0005378OCamlfor Camlp4 use 17:412012-09-20 16:31
Assigned Toxclerc 
PlatformOSOS Version
Product Version3.12.1 
Target VersionFixed in Version 
Summary0005378: Camlp4MacroParser.cmxs not built when compiling from source on Windows (32-bit MSVC port)
DescriptionFollowing the build instructions in README.win32 results in a successful build, but Camlp4MacroParser.cmxs has not been compiled or installed. After compilation finishes, executing "cd _build/camlp4/CamlP4Parsers; ocamlbuild Camlp4MacroParser.cmxs; cp _build/Camlp4MacroParser.cmxs $PREFIX/lib/Camlp4Parsers" successfully compiles and installs.
TagsNo tags attached.
Attached Files

- Relationships

-  Notes
jjb (reporter)
2011-10-17 22:14

Further testing suggests that this is not specific to windows, I also see it with macos x.
lefessan (developer)
2012-07-11 14:06

In my experience, .cmxs are never installed for camlp4, in any architecture/version. The .cmx is installed for all the backends I have tested (mingw, msvc, msvc64, cygwin) for both 3.12.1 and 4.00.

Why would you need Camlp4MacroParser.cmxs when you can use Camlp4MacroParser.cmx instead ?
jjb (reporter)
2012-07-15 20:36

The use case for these .cmxs files is as plugins for the native version of camlp4. For instance I have an option passed to ocamlbuild:

-tag-line "<**/>: pp(camlp4o.opt Camlp4MacroParser.cmxs -no_quot #"

Perhaps this is not an intended usage, or there is a better way?
lefessan (developer)
2012-07-27 14:06

On my computer, Camlp4 files are about 98 MB, while the complete OCaml install is 250 MB, i.e. 40% of it. Generating all the cmxs for all the cmx files there would make the Camlp4 directory even bigger, too big for my taste.

Such files can be generated easily on demand when needed:

ocamlopt -shared -o Camlp4MacroParser.cmxs -I +camlp4/Camlp4Parsers Camlp4MacroParser.cmx

If nobody complains about it, I will close this feature request with "Won't fix".
Maybe Camlp4 documentation should be improved to explain how to generate such plugins on demand.
jjb (reporter)
2012-07-27 14:11

I think that your suggestion of changing just the documentation sounds like a good plan.
hongboz (developer)
2012-08-22 12:12

IMO, -parser macro should apply the module to get the side effect instead of dynamic loading. So for any platform which supports native code instead of dynamic native loading, it supports the native version
doligez (administrator)
2012-09-20 16:31

To do: improve documentation as suggested by lefessan.

- Issue History
Date Modified Username Field Change
2011-10-17 17:41 jjb New Issue
2011-10-17 22:14 jjb Note Added: 0006170
2011-11-16 14:46 xclerc Status new => assigned
2011-11-16 14:46 xclerc Assigned To => xclerc
2012-07-10 13:52 doligez Target Version => 4.00.0+dev
2012-07-11 14:06 lefessan Note Added: 0007709
2012-07-11 14:06 lefessan Status assigned => feedback
2012-07-11 14:51 lefessan Target Version 4.00.0+dev => 4.01.0+dev
2012-07-15 20:36 jjb Note Added: 0007754
2012-07-15 20:36 jjb Status feedback => assigned
2012-07-27 12:49 frisch Category OCaml general => Camlp4
2012-07-27 14:06 lefessan Note Added: 0007827
2012-07-27 14:06 lefessan Status assigned => feedback
2012-07-27 14:11 jjb Note Added: 0007828
2012-07-27 14:11 jjb Status feedback => assigned
2012-07-31 13:36 doligez Target Version 4.01.0+dev => 4.00.1+dev
2012-08-22 12:12 hongboz Note Added: 0007965
2012-09-20 16:31 doligez Note Added: 0008130
2012-09-20 16:31 doligez Severity minor => feature
2012-09-20 16:31 doligez Target Version 4.00.1+dev =>
2016-02-08 12:49 doligez Category Camlp4 => for Camlp4 use [^]
2016-02-08 12:50 doligez Category for Camlp4 use [^] => for Camlp4 use [^]

Copyright © 2000 - 2011 MantisBT Group
Powered by Mantis Bugtracker