[bugs:#1101] make install fails if already installed to the same prefix
Status: open
Labels: buildsystem
Created: Wed Aug 07, 2013 11:09 AM UTC by Claude Heiland-Allen
Last Updated: Wed Aug 07, 2013 11:09 AM UTC
Owner: nobody
Pd fresh from git.
./autogen.sh ; ./configure --prefix=${HOME}/opt ; make ; make install ; make install
ln: failed to create symbolic link `expr.pd_linux': File exists ln: failed to create symbolic link `fexpr~.pd_linux': File exists ln: failed to create symbolic link `expr.pd_linux': File exists ln: failed to create symbolic link `expr~.pd_linux': File exists ln: failed to create symbolic link `fexpr~.pd_linux': File exists ln: failed to create symbolic link `expr-help.pd': File exists ln: failed to create symbolic link `expr~-help.pd': File exists ln: failed to create symbolic link `fexpr~-help.pd': File exists make[5]: *** [install-data-hook] Error 1 make[4]: *** [install-data-am] Error 2 make[3]: *** [install-am] Error 2 make[2]: *** [install-recursive] Error 1 make[1]: *** [install-recursive] Error 1 make: *** [install] Error 2
Pd's make install doesn't break if Pd has already been installed to the same prefix.
diff --git a/extra/expr~/GNUmakefile.am b/extra/expr~/GNUmakefile.am index ab93dd9..b976dc3 100644 --- a/extra/expr~/GNUmakefile.am +++ b/extra/expr~/GNUmakefile.am @@ -26,15 +26,15 @@ externaldir = $(pkglibdir)/extra/$(NAME) # so we install everything in the install-data-hook install-data-hook: cd $(DESTDIR)$(externaldir) && ( \ - $(LN_S) expr~.@EXTERNAL_EXTENSION@ expr.@EXTERNAL_EXTENSION@; \ - $(LN_S) expr~.@EXTERNAL_EXTENSION@ fexpr~.@EXTERNAL_EXTENSION@; \ + $(LN_S) -f expr~.@EXTERNAL_EXTENSION@ expr.@EXTERNAL_EXTENSION@; \ + $(LN_S) -f expr~.@EXTERNAL_EXTENSION@ fexpr~.@EXTERNAL_EXTENSION@; \ cd ..; \ - $(LN_S) $(NAME)/expr.@EXTERNAL_EXTENSION@ expr.@EXTERNAL_EXTENSION@; \ - $(LN_S) $(NAME)/expr~.@EXTERNAL_EXTENSION@ expr~.@EXTERNAL_EXTENSION@; \ - $(LN_S) $(NAME)/fexpr~.@EXTERNAL_EXTENSION@ fexpr~.@EXTERNAL_EXTENSION@; \ - $(LN_S) $(NAME)/expr-help.pd expr-help.pd; \ - $(LN_S) $(NAME)/expr-help.pd expr~-help.pd; \ - $(LN_S) $(NAME)/expr-help.pd fexpr~-help.pd; \ + $(LN_S) -f $(NAME)/expr.@EXTERNAL_EXTENSION@ expr.@EXTERNAL_EXTENSION@; \ + $(LN_S) -f $(NAME)/expr~.@EXTERNAL_EXTENSION@ expr~.@EXTERNAL_EXTENSION@; \ + $(LN_S) -f $(NAME)/fexpr~.@EXTERNAL_EXTENSION@ fexpr~.@EXTERNAL_EXTENSION@; \ + $(LN_S) -f $(NAME)/expr-help.pd expr-help.pd; \ + $(LN_S) -f $(NAME)/expr-help.pd expr~-help.pd; \ + $(LN_S) -f $(NAME)/expr-help.pd fexpr~-help.pd; \ ) uninstall-hook:
The -f flag for ln is specified by POSIX, but I could only test on Debian Wheezy with ln (GNU coreutils) 8.13
Probably would be better to get the configure script to check the best way to force symlink update...
Sent from sourceforge.net because pd-dev@lists.iem.at is subscribed to https://sourceforge.net/p/pure-data/bugs/
To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/pure-data/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list.