source: trunk/abcl/abcl.properties.in @ 15259

Last change on this file since 15259 was 15259, checked in by Mark Evenson, 3 years ago

build: support abcl.properties creation openjdk{6,7,8,11,13,14}

Additionally add test for openjdk14 to the Travis-CI build.

Improve script for creating build properties, which may be invoked
like:

bash ci/create-abcl-properties.bash openjdk8

Currently this script has baked-in "knowledge" of options for various
platforms for now, but will eventually directly transcribe from the
"facts" in <file:abcl.rdf>.

  • * *

Update RDF

  • Property svn:eol-style set to LF
  • Property svn:keywords set to Id
File size: 3.4 KB
Line 
1## Ant based build process and runtime settings
2
3## A file named 'abcl.properties' controls settings for the ABCL
4## build.  This is the prototype for its contents.
5
6# Attempt to perform incremental compilation?
7abcl.build.incremental=true
8
9## javac compiler options for ABCL build
10# generate class files for this target JVM
11abcl.javac.target=1.8
12# specify Java source compatiblity level
13abcl.javac.source=1.6
14
15## Additional site specific startup code to be merged in 'system.lisp' at build time
16#abcl.startup.file=${basedir}/startup.lisp
17
18## java.options sets the invoking JVM options in the abcl wrapper script
19
20# Base JVM settings that work on all supported platforms
21# <> java.options
22java.options=-XshowSettings:vm -Dfile.encoding=UTF-8
23
24## N.b. Ant properties can only be set once, so lines like
25##    java.options=${java.options} further options
26## will NOT work.  Instead one has to "manually" create lines
27
28#<>
29# <java/runtime> ( openjdk11, openjdk13, openjdk14 ) ;
30#
31#java.options=-XX:+UnlockExperimentalVMOptions -XX:+UseZGC -Xmx<size> -Xlog:gc
32
33#<>
34#  <java/runtime> openjdk11 ;
35#  rdfs:seeAlso <https://blog.gceasy.io/2020/03/18/7-jvm-arguments-of-highly-effective-applications/> ;
36#java.options=-XX:CompileThreshold=10
37
38#<>
39#  <java/runtime> openjdk8 ;
40#java.options=-XX:+UseG1GC -XX:+AggressiveOpts -XX:CompileThreshold=10
41
42#<>
43#  rdfs:comment "openjdk7 with 64bit optimizations" ;
44#  <java/runtime> openjdk7 ;
45#java.options=-d64 -XX:+UseG1GC
46
47#<>
48#  rdfs:comment "openjdk6 is the minimum supported runtime"
49#  <java/runtime> openjdk6 ;
50#java.options=-d64 -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=1g -XX:+UseConcMarkSweepGC
51
52# Comprehensive documentation for JVM options does not really exist:
53# per the usual entropy of long projects, the only true source of
54# truth is the source of the specific openjdk.
55#
56# As of 2020, decent online compendiums are
57# <https://chriswhocodes.com/> and <http://jvm-options.tech.xebia.fr/#>
58#
59# ORCL's documentation <http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html>
60
61## Various historical option settings
62
63# Java7 on 64bit optimizations
64#java.options=-d64 -Xmx16g -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=2g
65
66# Set the JVM to use a maximum of 1GB of RAM (only works for 64bit JVMs)
67#java.options=-d64 -Xmx1g
68
69# Use the G1 garbage collector stablized with jdk1.7.0_04, printing GC details
70#java.options=-d64 -Xmx4g -XX:+UseG1GC
71
72# Use a separate concurrent GC thread (java-1.6_14 or later)
73#java.options=-d64 -Xmx8g -XX:+UseConcMarkSweepGC
74
75# Verbose garbage collection
76#java.options=-verbos:gc -XX:+PrintGCDetails
77
78# Java 5 era (???) flag to GC class definitions
79#java.options=-XX:+CMSPermGenSweepingEnabled
80
81# The unloading of class definitions is a per jvm policy.  For
82# implementations which run out of permgen space, the following should
83# help things out.
84#java.options=-d64 -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=1g
85
86# Enable assertions specified via the JVM contract
87# TODO move all use of org.armedbear.lisp.Debug assertions to this interface.
88#java.options=-ea
89
90## ABCL Development
91
92# skips the compilation of Lisp sources in Netbeans
93# (for debugging compiler-pass1.lisp and subsequent passes)
94#abcl.compile.lisp.skip=true
95
96# JVM option to execute when debugging the Lisp compilation via 'abcl.compile.lisp.debug'
97# Debug the compilation by connecting a JVM debugger to localhost:6789 via JDWP.
98#abcl.compile.lisp.debug.jvmarg=-agentlib:jdwp=transport=dt_socket,server=y,address=6789,suspend=y
99
100
101
Note: See TracBrowser for help on using the repository browser.