Skip to content
This repository has been archived by the owner on Oct 22, 2020. It is now read-only.

make clean deletes openj9_version_info.h #11

Closed
pdbain opened this issue Sep 15, 2017 · 2 comments
Closed

make clean deletes openj9_version_info.h #11

pdbain opened this issue Sep 15, 2017 · 2 comments
Assignees

Comments

@pdbain
Copy link

pdbain commented Sep 15, 2017

This file is created during the configure step. make clean deletes the file, so "make clean; make all" fails due to the missing file.

@davew16
Copy link
Member

davew16 commented Sep 25, 2017

The configure script creates the openj9_version_info.h file in the $OUTPUT_ROOT/vm/util directory. (Autoconf creates the file with the required contents. This step is configured near the bottom of closed/autoconf/custom-hook.m4, and when the configure script is run the task of creating the openj9_version_info.h file is added to closed/autoconf/generated-configure.sh - $OUTPUT_ROOT is build/linux-x86_64-normal-server-release in my Ubuntu machine)

Unfortunately the $OUTPUT_ROOT/vm directory is volatile, and is deleted when running make clean, so a subsequent make all will fail because the openj9_version_info.h file does not exist.

The simple workaround is to re-run the configure script after doing a make clean.

The proper fix should be to either:

  • have the configure script create the openj9_version_info.h file in a non-volatile directory, the directory needs to be in the include path for the native compiler or the directory will need to be added to the native compiler's include path, or even better...
  • have make create the openj9_version_info.h file instead of configure. (During make all the jdk/make/gensrc/GensrcMisc.gmk file creates the $(SUPPORT_OUTPUTDIR)/gensrc/java.base/java/lang/VersionProps.java file with the required contents in a similar manner to the way the configure script creates the openj9_version_info.h file. Perhaps a similar mechanism could be used to fix this issue.)

@keithc-ca
Copy link
Member

@ben-walsh I hope I haven't stepped on your toes. I only noticed your commit after I had my solution working.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants