We consider the bsd changes in five groups of files:
1. agent files
2. make files
3. os dependent files
4. os_cpu dependent files
5. shared files
While the first four file groups introduce a significant number of new files to hotspot, and while the contents of these files make up a large percentage of the bsd changes under submission, most of the contents of these files are identical to the linux files from which they were derived. Thus, these changes are best understood by examining a diff between the original linux file and the derivitive bsd file in the jdk7 builds. We present these diffs below.
In addition, there are also a few places where the bsd port has made changes to the files of other os ports (in groups 1-4), and in the shared files of group 5. We call attention to these changes below.
- agent files
Unknown macro: {BSDPort jdk7 hotspot changes from linux, agent}
- make files
- os dependent files
- os_cpu dependent files
- shared files
The shared file changes fall into three categories:- The addition of os and os_cpu includes for bsd.
- Modification of print format strings or types. Note that apple's compilers require a long int to be printed with "%ld" regardless of whether this long int is 32 or 64-bits wide. The assumption made by the hotspot code that "%lld" will print all 64-bit integers is not valid.
- Miscellaneous changes
- a mac dynamic linking issue in src/share/vm/prims/forte.cpp
- open bsd dynamic loading issue in src/share/vm/runtime/os.cpp
- os naming in src/share/vm/runtime/vm_version.cpp
- inclusion of src/share/vm/utilities/elf.hpp (with lglp licensing)
- additions to src/share/vm/utilities/elfFile.hpp
- dynamic library additions to src/share/vm/utilities/vmError.cpp