Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/openj9
Path: blob/master/sourcetools/CMakeLists.txt
5972 views
1
################################################################################
2
# Copyright (c) 2017, 2021 IBM Corp. and others
3
#
4
# This program and the accompanying materials are made available under
5
# the terms of the Eclipse Public License 2.0 which accompanies this
6
# distribution and is available at https://www.eclipse.org/legal/epl-2.0/
7
# or the Apache License, Version 2.0 which accompanies this distribution and
8
# is available at https://www.apache.org/licenses/LICENSE-2.0.
9
#
10
# This Source Code may also be made available under the following
11
# Secondary Licenses when the conditions for such availability set
12
# forth in the Eclipse Public License, v. 2.0 are satisfied: GNU
13
# General Public License, version 2 with the GNU Classpath
14
# Exception [1] and GNU General Public License, version 2 with the
15
# OpenJDK Assembly Exception [2].
16
#
17
# [1] https://www.gnu.org/software/classpath/license.html
18
# [2] http://openjdk.java.net/legal/assembly-exception.html
19
#
20
# SPDX-License-Identifier: EPL-2.0 OR Apache-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 OR LicenseRef-GPL-2.0 WITH Assembly-exception
21
################################################################################
22
23
# set JAVA_HOME to guide FindJava
24
set(JAVA_HOME ${BOOT_JDK})
25
26
include(UseJava)
27
28
project(j9_sourcetools VERSION 1.0)
29
30
set(CMAKE_JAVA_TARGET_OUTPUT_DIR "${CMAKE_CURRENT_BINARY_DIR}")
31
32
# Due to the way cmake generates the java class path, it will generate a leading path separator.
33
# This prevents fixpath from JDKs after JDK11 from properly translating the path.
34
# To work around the issue we tack on a dummy path at the beginning of the output classpath.
35
if((WIN32 AND NOT CMAKE_HOST_WIN32) AND (JAVA_SPEC_VERSION GREATER 11))
36
set(CMAKE_JAVA_INCLUDE_PATH_FINAL "${CMAKE_CURRENT_SOURCE_DIR}")
37
endif()
38
39
# TODO this needs to be named and handled better
40
set(SPEC_LEVEL 7 CACHE STRING "")
41
set(CMAKE_JAVA_COMPILE_FLAGS -nowarn -source ${SPEC_LEVEL} -target ${SPEC_LEVEL})
42
43
# Note add_jar isn't as good at tracking target dependencies as regular cmake
44
# In particular it will not let you link against a target which will be defined later.
45
add_subdirectory(com.ibm.jpp.preprocessor)
46
add_subdirectory(objectmodel)
47
add_subdirectory(j9constantpool)
48
add_subdirectory(j9nls)
49
50