builderVersion=v200909171515

eclipse.builder=org.eclipse.releng.basebuilder
eclipse.builder.version=R35_RC4
# uncomment if its desired to 'force' fetch of eclipse builder
# (if not already defined from elsewhere)
eclipse.builder.fetch=true

# WTP specific builder
wtpBuildTools.url=http://download.eclipse.org/webtools/wtpBuildTools/drops/R3.0/T-T20090531062807-20090531062807/updateSite/plugins
wtpBuildTools.file=org.eclipse.wtp.releng.tools_1.1.0.v200905310626.jar

#   This parameter is specific to the compiler
#   being used (JDT Compiler, in our case).
#   'showversion' causes the version of JDT Compiler to be
#   printed to the compiler log file.
#compilerArg=-showversion -encoding ISO-8859-1 -warn:-discouraged,serial,raw
compilerArg=-showversion -encoding ISO-8859-1 -warn:-serial,raw,typeHiding,unchecked

#############################################################
# Other inline resolved properties
pde.builder.path=${env.BASE_BUILDERS}/${eclipse.builder.version}/${eclipse.builder}
# Beginning with 33M5, the startup.jar was removed. Currently, in basebuilder,
# this launcher is provided without version number. If we ever move to use plain
# eclipse, we'll need a bit of script find and rename (or set the variable).
# to ever "go backwards" this one variable could be ${pde.builder.path}/startup.jar
eclipse.launcher=${pde.builder.path}/plugins/org.eclipse.equinox.launcher.jar
#eclipse.launcher=${pde.builder.path}/startup.jar

# in 3.2 based builds, pde's directory no longer has version number
# well, now M7_34 does :)
eclipse.base.version=3.5.0.v20090527-1800
pde.build.scripts=${pde.builder.path}/plugins/org.eclipse.pde.build_${eclipse.base.version}/scripts
#pde.build.scripts=${pde.builder.path}/plugins/org.eclipse.pde.build/scripts
buildDirectory=${env.PROJECT_PROJECTS}/${projectname}/workdir

# new in 3.4 based build, have the source files for sdk builds bundled as individual jars.
individualSourceBundles=true

# dropins folder is either empty string, or /eclipse/dropins (no trailing spaces)
dropinsFolder=/eclipse/dropins

# should be set for 3.1+ build. should be unset (not exist, or commented out) for earlier builds
doCreateFprojZips=yes


# arguments for relent tests (that vary by stream)
qualifierArgValue=-countQualifierIncreaseOnlyAsError
#qualifierArgValue=
referenceIDArgValue=M-3.1.1M-20090917225226
referenceURLArgValue=http://download.eclipse.org/webtools/downloads/drops/R3.1/M-3.1.1M-20090917225226/versioningReference_M-3.1.1M-20090917225226.xml
# omit to not test
testToReferenceArgValue=-testToReference
# omit to not list
listToReferenceFileArgValue=-listToReferenceFile
