mirror of
https://github.com/Mercury-Language/mercury.git
synced 2026-04-25 14:24:11 +00:00
Mmake: Change the `uninstall' rule so that rather than using `rm -f', it uses plain `rm' but then ignores the exit status. If we encounter permission errors when doing a `mmake uninstall', the user should know about them.
86 lines
2.6 KiB
Plaintext
86 lines
2.6 KiB
Plaintext
#-----------------------------------------------------------------------------#
|
|
#-----------------------------------------------------------------------------#
|
|
# Copyright (C) 1995 University of Melbourne.
|
|
# This file may only be copied under the terms of the GNU General
|
|
# Public License - see the file COPYING in the Mercury distribution.
|
|
#-----------------------------------------------------------------------------#
|
|
|
|
# Mmake - Mmake file for the Mercury scripts
|
|
|
|
MAIN_TARGET=all
|
|
|
|
MERCURY_DIR=..
|
|
include $(MERCURY_DIR)/Mmake.common
|
|
|
|
#-----------------------------------------------------------------------------#
|
|
|
|
SCRIPTS = mmake mc mod2c c2init mgnuc ml mprof mint \
|
|
sicstus_conv mtags vpath_find mercury_update_interface \
|
|
mkfifo_using_mknod
|
|
NUPROLOG_SCRIPTS = mnc mnl mnp
|
|
SICSTUS_SCRIPTS = msc msl msp
|
|
|
|
#-----------------------------------------------------------------------------#
|
|
|
|
.SUFFIXES: .in
|
|
|
|
.in:
|
|
CONFIG_FILES=$@ CONFIG_HEADERS= $(MERCURY_DIR)/config.status
|
|
|
|
#-----------------------------------------------------------------------------#
|
|
|
|
.PHONY: all
|
|
all: $(SCRIPTS) $(NUPROLOG_SCRIPTS) $(SICSTUS_SCRIPTS)
|
|
|
|
#-----------------------------------------------------------------------------#
|
|
|
|
.PHONY: install
|
|
install: install_mmake install_scripts $(INSTALL_NUPROLOG) $(INSTALL_SICSTUS)
|
|
|
|
.PHONY: install_mmake
|
|
install_mmake: Mmake.vars Mmake.rules
|
|
[ -d $(INSTALL_LIBDIR)/mmake ] || mkdir -p $(INSTALL_LIBDIR)/mmake
|
|
cp `vpath_find Mmake.vars Mmake.rules` $(INSTALL_LIBDIR)/mmake
|
|
|
|
.PHONY: install_scripts
|
|
install_scripts: $(SCRIPTS)
|
|
[ -d $(INSTALL_BINDIR) ] || mkdir -p $(INSTALL_BINDIR)
|
|
cp $(SCRIPTS) $(INSTALL_BINDIR)
|
|
for file in $(SCRIPTS); do \
|
|
chmod +w $(INSTALL_BINDIR)/$$file ;\
|
|
done
|
|
|
|
.PHONY: install_nuprolog
|
|
install_nuprolog: $(NUPROLOG_SCRIPTS)
|
|
[ -d $(INSTALL_BINDIR) ] || mkdir -p $(INSTALL_BINDIR)
|
|
cp $(NUPROLOG_SCRIPTS) $(INSTALL_BINDIR)
|
|
for file in $(NUPROLOG_SCRIPTS); do \
|
|
chmod +w $(INSTALL_BINDIR)/$$file ;\
|
|
done
|
|
|
|
.PHONY: install_sicstus
|
|
install_sicstus: $(SICSTUS_SCRIPTS)
|
|
[ -d $(INSTALL_BINDIR) ] || mkdir -p $(INSTALL_BINDIR)
|
|
cp $(SICSTUS_SCRIPTS) $(INSTALL_BINDIR)
|
|
for file in $(SICSTUS_SCRIPTS); do \
|
|
chmod +w $(INSTALL_BINDIR)/$$file ;\
|
|
done
|
|
|
|
#-----------------------------------------------------------------------------#
|
|
|
|
.PHONY: uninstall
|
|
uninstall:
|
|
-rm -r $(INSTALL_LIBDIR)/mmake
|
|
-cd $(INSTALL_BINDIR) && \
|
|
rm $(SCRIPTS) $(SICSTUS_SCRIPTS) $(NUPROLOG_SCRIPTS)
|
|
|
|
#-----------------------------------------------------------------------------#
|
|
|
|
realclean: clean_scripts
|
|
|
|
.PHONY: clean_scripts
|
|
clean_scripts:
|
|
for file in *.in; do rm -f `basename $$file .in`; done
|
|
|
|
#-----------------------------------------------------------------------------#
|