# HG changeset patch # User Andrew John Hughes # Date 1457123890 0 # Node ID 6c9c43c172bb77ae5673c186515b65e7d0946581 # Parent e5d122ba61c0a21392312dd7820f2596e5539d2c PR2865: Handle uninstallation. 2016-03-04 Andrew John Hughes PR2865: Handle uninstallation. * Makefile.am: (uninstall-local): Implemented. Deletes files installed by install-exec-local and install-data-local, then removes directories created by those targets. * NEWS: Updated. * acinclude.m4: (IT_CHECK_FOR_RMDIR): Check that rmdir is installed and see if it supports the --ignore-fail-on-empty option. * configure.ac: Invoke IT_CHECK_FOR_RMDIR. diff -r e5d122ba61c0 -r 6c9c43c172bb ChangeLog --- a/ChangeLog Wed Mar 02 17:03:51 2016 +0000 +++ b/ChangeLog Fri Mar 04 20:38:10 2016 +0000 @@ -1,3 +1,17 @@ +2016-03-04 Andrew John Hughes + + PR2865: Handle uninstallation. + * Makefile.am: + (uninstall-local): Implemented. Deletes files + installed by install-exec-local and install-data-local, + then removes directories created by those targets. + * NEWS: Updated. + * acinclude.m4: + (IT_CHECK_FOR_RMDIR): Check that rmdir is installed + and see if it supports the --ignore-fail-on-empty option. + * configure.ac: + Invoke IT_CHECK_FOR_RMDIR. + 2014-06-11 Andrew John Hughes PR1741: Break PulseAudio provider out into IcedTea-Sound diff -r e5d122ba61c0 -r 6c9c43c172bb Makefile.am --- a/Makefile.am Wed Mar 02 17:03:51 2016 +0000 +++ b/Makefile.am Fri Mar 04 20:38:10 2016 +0000 @@ -2434,6 +2434,150 @@ $(DESTDIR)${prefix}/jre/lib/$(INSTALL_ARCH_DIR)/$${vms} ; \ fi ; \ done + +uninstall-local: + for files in $(BUILD_SDK_DIR)/bin/*; do \ + rm -vf $(DESTDIR)$(bindir)/$$(basename $${files}); \ + done + for files in $(BUILD_SDK_DIR)/include/*.h; do \ + rm -vf $(DESTDIR)$(includedir)/$$(basename $${files}); \ + done + for files in $(BUILD_SDK_DIR)/include/$(BUILD_OS_DIR)/*.h; do \ + rm -vf $(DESTDIR)$(includedir)/$(BUILD_OS_DIR)/$$(basename $${files}); \ + done + for files in $(BUILD_SDK_DIR)/lib/*.jar; do \ + rm -vf $(DESTDIR)${exec_prefix}/lib/$$(basename $${files}); \ + done + for files in $(BUILD_SDK_DIR)/lib/*.idl; do \ + rm -vf $(DESTDIR)${exec_prefix}/lib/$$(basename $${files}); \ + done + rm -vf $(DESTDIR)${exec_prefix}/lib/jexec + for files in $(BUILD_SDK_DIR)/lib/$(INSTALL_ARCH_DIR)/*.so; do \ + rm -vf $(DESTDIR)${exec_prefix}/lib/$(INSTALL_ARCH_DIR)/$$(basename $${files}); \ + done + for files in $(BUILD_SDK_DIR)/lib/$(INSTALL_ARCH_DIR)/jli/*.so; do \ + rm -vf $(DESTDIR)${exec_prefix}/lib/$(INSTALL_ARCH_DIR)/jli/$$(basename $${files}); \ + done + for files in $(BUILD_SDK_DIR)/jre/bin/*; do \ + rm -vf $(DESTDIR)${prefix}/jre/bin/$$(basename $${files}); \ + done + for files in $(BUILD_SDK_DIR)/jre/lib/*.jar; do \ + rm -vf $(DESTDIR)${prefix}/jre/lib/$$(basename $${files}); \ + done + rm -vf $(DESTDIR)${prefix}/jre/lib/jexec + for files in $(BUILD_SDK_DIR)/jre/lib/$(INSTALL_ARCH_DIR)/*.so; do \ + rm -vf $(DESTDIR)${prefix}/jre/lib/$(INSTALL_ARCH_DIR)/$$(basename $${files}); \ + done + for files in $(BUILD_SDK_DIR)/jre/lib/$(INSTALL_ARCH_DIR)/jli/*.so; do \ + rm -vf $(DESTDIR)${prefix}/jre/lib/$(INSTALL_ARCH_DIR)/jli/$$(basename $${files}); \ + done + for vms in client server ; do \ + for files in $(BUILD_SDK_DIR)/jre/lib/$(INSTALL_ARCH_DIR)/$${vms}/*.so; do \ + rm -vf $(DESTDIR)${prefix}/jre/lib/$(INSTALL_ARCH_DIR)/$${vms}/$$(basename $${files}); \ + done ; \ + done + for files in $(BUILD_SDK_DIR)/jre/lib/ext/*.jar; do \ + rm -vf $(DESTDIR)${prefix}/jre/lib/ext/$$(basename $${files}); \ + done + for files in $(BUILD_SDK_DIR)/tapset/*.stp; do \ + rm -vf $(DESTDIR)${prefix}/tapset/$$(basename $${files}); \ + done + for files in $(BUILD_SDK_DIR)/jre/lib/*.properties; do \ + rm -vf $(DESTDIR)${prefix}/jre/lib/$$(basename $${files}); \ + done + rm -vf $(DESTDIR)${prefix}/release + rm -vf $(DESTDIR)${prefix}/src.zip + rm -vf $(DESTDIR)${prefix}/jre/lib/classlist + rm -vf $(DESTDIR)${prefix}/jre/lib/currency.data + rm -vf $(DESTDIR)${prefix}/jre/lib/jvm.hprof.txt + rm -vf $(DESTDIR)${prefix}/jre/lib/meta-index + rm -vf $(DESTDIR)${prefix}/jre/lib/psfont.properties.ja + rm -vf $(DESTDIR)${prefix}/jre/lib/tzdb.dat + rm -vf $(DESTDIR)${prefix}/jre/lib/$(INSTALL_ARCH_DIR)/jvm.cfg + for vms in client server ; do \ + rm -vf $(DESTDIR)${prefix}/jre/lib/$(INSTALL_ARCH_DIR)/$${vms}/Xusage.txt; \ + done + for files in $(BUILD_SDK_DIR)/jre/lib/cmm/*.pf; do \ + rm -vf $(DESTDIR)/${prefix}/jre/lib/cmm/$$(basename $${files}); \ + done + rm -vf $(DESTDIR)${prefix}/jre/lib/ext/meta-index + for files in $(BUILD_SDK_DIR)/jre/lib/images/cursors/*.gif; do \ + rm -vf $(DESTDIR)${prefix}/jre/lib/images/cursors/$$(basename $${files}); \ + done + rm -vf $(DESTDIR)${prefix}/jre/lib/images/cursors/cursors.properties + rm -vf $(DESTDIR)${prefix}/jre/lib/management/jmxremote.access + rm -vf $(DESTDIR)${prefix}/jre/lib/management/management.properties + for files in $(BUILD_SDK_DIR)/jre/lib/management/*.template; do \ + rm -vf $(DESTDIR)${prefix}/jre/lib/management/$$(basename $${files}); \ + done + rm -vf $(DESTDIR)${prefix}/jre/lib/security/java.policy + rm -vf $(DESTDIR)${prefix}/jre/lib/security/java.security + rm -vf $(DESTDIR)${prefix}/jre/lib/security/nss.cfg + rm -vf $(DESTDIR)${prefix}/jre/lib/security/blacklisted.certs + for files in $(BUILD_SDK_DIR)/jre/lib/security/*.jar; do \ + rm -vf $(DESTDIR)${prefix}/jre/lib/security/$$(basename $${files}); \ + done + for files in $(BUILD_SDK_DIR)/man/man1/*.1; do \ + rm -vf $(DESTDIR)$(mandir)/man1/$$(basename $${files}); \ + done + for files in $(BUILD_SDK_DIR)/man/ja_JP.UTF-8/man1/*.1; do \ + rm -vf $(DESTDIR)$(mandir)/ja_JP.UTF-8/man1/$$(basename $${files}); \ + done + for items in $(BUILD_SDK_DIR)/demo/*; do \ + rm -rvf $(DESTDIR)${prefix}/demo/$$(basename $${items}); \ + done + for items in $(BUILD_SDK_DIR)/sample/*; do \ + rm -rvf $(DESTDIR)${prefix}/sample/$$(basename $${items}); \ + done + rm -rf $(DESTDIR)$(docdir)/README + rm -rf $(DESTDIR)$(docdir)/NEWS + rm -rf $(DESTDIR)$(docdir)/AUTHORS + rm -rf $(DESTDIR)$(docdir)/HACKING + rm -rf $(DESTDIR)$(docdir)/COPYING + rm -rf $(DESTDIR)$(docdir)/ChangeLog + rm -rf $(DESTDIR)$(docdir)/ASSEMBLY_EXCEPTION + rm -rf $(DESTDIR)$(docdir)/LICENSE + rm -rf $(DESTDIR)$(docdir)/THIRD_PARTY_README + rm -rf $(DESTDIR)$(docdir)/TRADEMARK + for sizes in 16 24 32 48 ; do \ + rm -vf $(DESTDIR)$(datadir)/icons/hicolor/$${sizes}x$${sizes}/apps/java-1.8.0.png; \ + done + for files in $(DESKTOP_FILES) ; do \ + rm -vf $(DESTDIR)$(datadir)/applications/$$(basename $${files}); \ + done + rm -vf $(DESTDIR)${prefix}/jre/.systemPrefs/.system.lock + rm -vf $(DESTDIR)${prefix}/jre/.systemPrefs/.systemRootModFile +if ENABLE_DOCS + rm -rvf $(BUILD_OUTPUT_DIR)/docs/* $(DESTDIR)$(htmldir) + $(RMDIR) $(DESTDIR)$(htmldir) +endif + for vms in client server ; do \ + rm -vf $(DESTDIR)${prefix}/jre/lib/$(INSTALL_ARCH_DIR)/$${vms}/classes.jsa; \ + if [ -e $(DESTDIR)${prefix}/jre/lib/$(INSTALL_ARCH_DIR)/$${vms} ] ; then \ + $(RMDIR) $(DESTDIR)${prefix}/jre/lib/$(INSTALL_ARCH_DIR)/$${vms} ; \ + fi ; \ + done + $(RMDIR) $(DESTDIR)${exec_prefix}/lib/$(INSTALL_ARCH_DIR)/jli + $(RMDIR) $(DESTDIR)$(includedir)/$(BUILD_OS_DIR) $(DESTDIR)${exec_prefix}/lib/$(INSTALL_ARCH_DIR) + $(RMDIR) $(DESTDIR)$(bindir) $(DESTDIR)$(includedir) $(DESTDIR)${exec_prefix}/lib + $(RMDIR) $(DESTDIR)${prefix}/jre/lib/$(INSTALL_ARCH_DIR)/jli + $(RMDIR) $(DESTDIR)${prefix}/jre/lib/$(INSTALL_ARCH_DIR) + $(RMDIR) $(DESTDIR)${prefix}/jre/lib/{cmm,ext,images/cursors,management,security} + $(RMDIR) $(DESTDIR)${prefix}/jre/lib/images + $(RMDIR) $(DESTDIR)${prefix}/jre/bin $(DESTDIR)${prefix}/jre/lib + $(RMDIR) $(DESTDIR)${prefix}/jre/.systemPrefs + $(RMDIR) $(DESTDIR)${prefix}/jre + $(RMDIR) $(DESTDIR)${prefix}/tapset + $(RMDIR) $(DESTDIR)${prefix}/demo + $(RMDIR) $(DESTDIR)${prefix}/sample + $(RMDIR) $(DESTDIR)$(docdir) + $(RMDIR) $(DESTDIR)$(datadir)/applications + $(RMDIR) $(DESTDIR)$(sysconfdir)/.java/.systemPrefs + $(RMDIR) $(DESTDIR)$(mandir)/{man1,ja_JP.UTF-8/man1} + for sizes in 16 24 32 48 ; do \ + $(RMDIR) $(DESTDIR)$(datadir)/icons/hicolor/$${sizes}x$${sizes}/apps ; \ + done + # Target Aliases # =============== diff -r e5d122ba61c0 -r 6c9c43c172bb NEWS --- a/NEWS Wed Mar 02 17:03:51 2016 +0000 +++ b/NEWS Fri Mar 04 20:38:10 2016 +0000 @@ -144,6 +144,7 @@ - PR2853: Remove some unnecessary divergences from jdk8u. - PR2853: Revert AArch64 jvm.cfg divergence - PR2853: Revert changes to libpng source code now 8078245 is in place. + - PR2865: Handle uninstallation. - Don't substitute 'j' for '-j' inside -I directives - Extend 8041658 to all files in the HotSpot build. - Remove jcheck diff -r e5d122ba61c0 -r 6c9c43c172bb acinclude.m4 --- a/acinclude.m4 Wed Mar 02 17:03:51 2016 +0000 +++ b/acinclude.m4 Fri Mar 04 20:38:10 2016 +0000 @@ -1980,3 +1980,20 @@ AC_SUBST(SUNEC_LIBS) fi ]) + +AC_DEFUN_ONCE([IT_CHECK_FOR_RMDIR], +[ + IT_FIND_TOOL([RMDIR],[rmdir]) + AC_CACHE_CHECK([if ${RMDIR} supports --ignore-fail-on-non-empty], it_cv_RMDIR, [ + mkdir tmp.$$ + touch tmp.$$/t + if ${RMDIR} --ignore-fail-on-non-empty tmp.$$ >&AS_MESSAGE_LOG_FD 2>&1; then + it_cv_RMDIR=yes; + RMDIR="${RMDIR} --ignore-fail-on-non-empty" + else + it_cv_RMDIR=no; + fi + ]) + rm -f tmp.$$/t + ${RMDIR} tmp.$$ +]) diff -r e5d122ba61c0 -r 6c9c43c172bb configure.ac --- a/configure.ac Wed Mar 02 17:03:51 2016 +0000 +++ b/configure.ac Fri Mar 04 20:38:10 2016 +0000 @@ -47,6 +47,7 @@ IT_CHECK_FOR_MERCURIAL IT_OBTAIN_HG_REVISIONS AC_PATH_TOOL([LSB_RELEASE],[lsb_release]) +IT_CHECK_FOR_RMDIR IT_WITH_GCJ IT_WITH_HOTSPOT_BUILD AC_PATH_TOOL([LINUX32],[linux32])