diff -Nru jdk22u-jdk-22-33.orig/make/autoconf/spec.gmk.in jdk22u-jdk-22-33/make/autoconf/spec.gmk.in
--- jdk22u-jdk-22-33.orig/make/autoconf/spec.gmk.template	2024-01-22 17:02:33.000000000 +0100
+++ jdk22u-jdk-22-33/make/autoconf/spec.gmk.template	2024-01-27 15:45:38.510790947 +0100
@@ -826,6 +826,57 @@
 
 ####################################################
 #
+# INSTALLATION
+#
+
+# Common prefix for all installed files. Defaults to /usr/local,
+# but /opt/myjdk is another common version.
+INSTALL_PREFIX = @prefix@
+
+# Directories containing architecture-dependent files should be relative to exec_prefix
+INSTALL_EXECPREFIX = @exec_prefix@
+
+# java,javac,javap etc are installed here.
+INSTALL_BINDIR = @bindir@
+
+# Read only architecture-independent data
+INSTALL_DATADIR = @datadir@
+
+# Root of above.
+INSTALL_DATAROOTDIR = @datarootdir@
+
+# Doc files, other than info and man.
+INSTALL_DOCDIR = @docdir@
+
+# Html documentation
+INSTALL_HTMLDIR = @htmldir@
+
+# Installing C header files, JNI headers for example.
+INSTALL_INCLUDEDIR = @includedir@
+
+# Installing library files....
+INSTALL_INCLUDEDIR = @libdir@
+
+# Executables that other programs run.
+INSTALL_LIBEXECDIR = @libexecdir@
+
+# Locale-dependent but architecture-independent data, such as message catalogs.
+INSTALL_LOCALEDIR = @localedir@
+
+# Modifiable single-machine data
+INSTALL_LOCALSTATEDIR = @localstatedir@
+
+# Man pages
+INSTALL_MANDIR = @mandir@
+
+# Modifiable architecture-independent data.
+INSTALL_SHAREDSTATEDIR = @sharedstatedir@
+
+# Read-only single-machine data
+INSTALL_SYSCONFDIR = @sysconfdir@
+
+####################################################
+#
 # Libraries
 #
 
diff -Nru jdk22u-jdk-22-33.orig/make/Global.gmk jdk22u-jdk-22-33/make/Global.gmk
--- jdk22u-jdk-22-33.orig/make/Global.gmk	2024-01-22 17:02:33.000000000 +0100
+++ jdk22u-jdk-22-33/make/Global.gmk	2024-01-27 15:45:38.509506235 +0100
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2012, 2023, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2012, 2022, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -52,6 +52,7 @@
 	$(info $(_) make docs              # Create all docs)
 	$(info $(_) make docs-jdk-api      # Create just JDK javadocs)
 	$(info $(_) make bootcycle-images  # Build images twice, second time with newly built JDK)
+	$(info $(_) make install           # Install the generated images locally)
 	$(info $(_) make check             # Run basic testing (currently tier1))
 	$(info $(_) make test-<test>       # Run test, e.g. test-tier1)
 	$(info $(_) make test TEST=<t>     # Run test(s) given by TEST specification)
diff -Nru jdk22u-jdk-22-33.orig/make/Install.gmk jdk22u-jdk-22-33/make/Install.gmk
--- jdk22u-jdk-22-33.orig/make/Install.gmk	1970-01-01 01:00:00.000000000 +0100
+++ jdk22u-jdk-22-33/make/Install.gmk	2024-01-27 15:45:38.509708752 +0100
@@ -0,0 +1,43 @@
+#
+# Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle in the LICENSE file that accompanied this code.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+default: install
+
+include $(SPEC)
+
+BINARIES := $(notdir $(wildcard $(JDK_IMAGE_DIR)/bin/*))
+INSTALLDIR := openjdk-$(VERSION_SHORT)
+
+# Install the jdk image, in a very crude way. Not taking into
+# account, how to install properly on macosx or windows etc.
+install:
+	echo Installing jdk image into $(INSTALL_PREFIX)/jvm/$(INSTALLDIR)
+	echo and creating $(words $(BINARIES)) links from $(INSTALL_PREFIX)/bin into the jdk.
+	$(MKDIR) -p $(INSTALL_PREFIX)/jvm/$(INSTALLDIR)
+	$(RM) -r $(INSTALL_PREFIX)/jvm/$(INSTALLDIR)/*
+	$(CP) -rp $(JDK_IMAGE_DIR)/* $(INSTALL_PREFIX)/jvm/$(INSTALLDIR)
+	$(MKDIR) -p $(INSTALL_PREFIX)/bin
+	$(RM) $(addprefix $(INSTALL_PREFIX)/bin/, $(BINARIES))
+	$(foreach b, $(BINARIES), $(LN) -s $(INSTALL_PREFIX)/jvm/$(INSTALLDIR)/bin/$b $(INSTALL_PREFIX)/bin/$b &&) true
diff -Nru jdk22u-jdk-22-33.orig/make/Main.gmk jdk22u-jdk-22-33/make/Main.gmk
--- jdk22u-jdk-22-33.orig/make/Main.gmk	2024-01-22 17:02:33.000000000 +0100
+++ jdk22u-jdk-22-33/make/Main.gmk	2024-01-27 15:45:38.510344411 +0100
@@ -867,6 +867,14 @@
 endif
 
 ################################################################################
+# Install targets
+
+$(eval $(call SetupTarget, install, \
+    MAKEFILE := Install, \
+    DEPS := product-images, \
+))
+
+################################################################################
 #
 # Dependency declarations between targets.
 #
