-
Notifications
You must be signed in to change notification settings - Fork 1.1k
More information in ocamlc -config #7172
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Comment author: @mshinwell I think we may need to fix matters for 4.03 such that there is a means of discovering whether Flambda is enabled or not. Perhaps we could just fix these all at once. |
Comment author: @mshinwell Oh, so it does. Well it will probably have to wait then :p |
Comment author: @dbuenzli Grrrrr. |
Comment author: @dbuenzli Somehow I had hoped that I could fill the missing slots with: $(ocamlc -where)/Makefile.config but in fact this file seems to reflect the output of the configure process, not of what is actually installed, e.g. on a bytecode only switch like: NATDYNLINK will be true even though there no actual dynlink.cmxa. In fact reading the INSTALL file it seems there's no way to configure ocaml to be bytecode only. So I guess I'm left with discovery hacks. I'm thinking about:
Does it sound reasonable ? |
Comment author: @dbuenzli That is libasmrun.$(EXT_LIB) rather than $(EXT_DLL). |
Comment author: @gasche I needed a -no-native-compiler configure option to test the bytecode-only build of ocamlbuild, and added it to the script in #387. The relevant variables should be set to a meaningful value in this case, and the fact that this is not done for NATDYNLINK comes from an (independent) omission in the relevant logic: https://github.com/ocaml/ocaml/blob/d3d30f3/configure#L874-L878 I need to document the -no-native-compiler switch in the INSTALL file, and I think I will fix the configure script as well. |
Comment author: @dbuenzli Also it would be nice to give us ext_exe, since the logic is a little bit twisted and requires to consult both ccomp_type and os_type. There is the EXE variable in Makefile.config but I now decided I'd rely only on the output of ocamlc -config. |
Comment author: @damiendoligez @dbuenzli your "discovery hacks" look quite reasonable to me. It's not clear to me how I agree with ext_exe. |
Comment author: @dbuenzli Another bit that is useful for build systems to know an that should be reported by ocamlc -config is the value of Currently workarounds include:
|
Comment author: @dbuenzli shinwell asked me to update on the status of this bug. So in 4.04, ocamlc -config still does not report the following useful tidbits:
|
Comment author: @dra27 #970 adds ext_exe, word_size and possibly natdynlink. A suggestion for nativecomp (and really natdynlink) would to be change the logic for make install. At present, if native code has been built then it is installed, but we could instead make it that if native code has been configured then make install fails if it has not also been built (same could sensibly be done at the same time for opt.opt). At present, Windows should be configured so that opt and opt.opt are assumed. |
Comment author: @dra27 So int_size, word_size and ext_exe are merged and will be in 4.05.0 I've assigned the issue and hope to have a GPR for natdynlink and nativecomp ready for the 4.05 freeze. |
Are still missing (at least in 4.10) and would be nice to have. |
I think I can do without nativecomp. But Is |
That formulation is a bit inexact I'm confusing two things here:
I highly suspect |
This has now been fixed by #11819, which should be available in OCaml 5.1. |
Original bug ID: 7172
Reporter: @dbuenzli
Assigned to: @dra27
Status: assigned (set by @mshinwell on 2016-12-14T11:38:40Z)
Resolution: open
Priority: normal
Severity: feature
Version: 4.02.3
Target version: 4.07.0+dev/beta2/rc1/rc2
Category: configure and build/install
Monitored by: @gasche @diml @dbuenzli
Bug description
It would be nice if ocamlc -config could report whether:
The text was updated successfully, but these errors were encountered: