diff --git a/Makefile.in b/Makefile.in index c771f112abb1eb176aecd68e76de35bf940e3f33..f3fa571c8f5b85b6be97c1154133e63241bbf96e 100644 --- a/Makefile.in +++ b/Makefile.in @@ -161,18 +161,26 @@ libhogweed.a: $(hogweed_OBJS) $(COMPILE) $(CCPIC_MAYBE) -c $< \ && $(DEP_PROCESS) -# Rules building shared libraries +# Rules building shared libraries. $(LIBNETTLE_FORLINK): $(nettle_PURE_OBJS) $(LIBNETTLE_LINK) $(nettle_PURE_OBJS) -o $@ $(LIBNETTLE_LIBS) -mkdir .lib 2>/dev/null - [ -z "$(LIBNETTLE_SONAME)" ] || (cd .lib \ - && ln -sf ../$(LIBNETTLE_FORLINK) $(LIBNETTLE_SONAME)) + (cd .lib \ + && rm -f $(LIBNETTLE_FORLINK) \ + && $(LN_S) ../$(LIBNETTLE_FORLINK) $(LIBNETTLE_FORLINK) \ + && [ -n "$(LIBNETTLE_SONAME)"] \ + || { rm -f $(LIBNETTLE_SONAME) \ + && $(LN_S) $(LIBNETTLE_FORLINK) $(LIBNETTLE_SONAME) ; } ) $(LIBHOGWEED_FORLINK): $(hogweed_PURE_OBJS) $(LIBNETTLE_FORLINK) $(LIBHOGWEED_LINK) $(hogweed_PURE_OBJS) -o $@ $(LIBHOGWEED_LIBS) -mkdir .lib 2>/dev/null - [ -z "$(LIBHOGWEED_SONAME)" ] || (cd .lib \ - && ln -sf ../$(LIBHOGWEED_FORLINK) $(LIBHOGWEED_SONAME)) + (cd .lib \ + && rm -f $(LIBHOGWEED_FORLINK) \ + && $(LN_S) ../$(LIBHOGWEED_FORLINK) $(LIBHOGWEED_FORLINK) \ + && [ -n "$(LIBHOGWEED_SONAME)"] \ + || { rm -f $(LIBHOGWEED_SONAME) \ + && $(LN_S) $(LIBHOGWEED_FORLINK) $(LIBHOGWEED_SONAME) ; } ) .c.p$(OBJEXT): $(COMPILE) $(SHLIBCFLAGS) -c $< -o $@ \ @@ -295,8 +303,9 @@ install-shared-nettle: $(LIBNETTLE_FORLINK) @IF_DLL@ install-dll-nettle $(INSTALL_DATA) $(LIBNETTLE_FILE_SRC) $(DESTDIR)$(libdir)/$(LIBNETTLE_FILE) [ -z "$(LIBNETTLE_SONAME)" ] \ || (cd $(DESTDIR)$(libdir) \ - && ln -sf $(LIBNETTLE_FILE) $(LIBNETTLE_SONAME) \ - && ln -sf $(LIBNETTLE_FILE) $(LIBNETTLE_FORLINK)) + && rm -f $(LIBNETTLE_SONAME) $(LIBNETTLE_FORLINK) \ + && $(LN_S) $(LIBNETTLE_FILE) $(LIBNETTLE_SONAME) \ + && $(LN_S) $(LIBNETTLE_FILE) $(LIBNETTLE_FORLINK)) install-dll-hogweed: $(MKDIR_P) $(DESTDIR)$(bindir) @@ -307,8 +316,9 @@ install-shared-hogweed: $(LIBHOGWEED_FORLINK) @IF_DLL@ install-dll-hogweed $(INSTALL_DATA) $(LIBHOGWEED_FILE_SRC) $(DESTDIR)$(libdir)/$(LIBHOGWEED_FILE) [ -z "$(LIBHOGWEED_SONAME)" ] \ || (cd $(DESTDIR)$(libdir) \ - && ln -sf $(LIBHOGWEED_FILE) $(LIBHOGWEED_SONAME) \ - && ln -sf $(LIBHOGWEED_FILE) $(LIBHOGWEED_FORLINK)) + && rm -f $(LIBHOGWEED_SONAME) $(LIBHOGWEED_FORLINK) \ + && $(LN_S) $(LIBHOGWEED_FILE) $(LIBHOGWEED_SONAME) \ + && $(LN_S) $(LIBHOGWEED_FILE) $(LIBHOGWEED_FORLINK)) # I'd like to use makes VPATH search to locate the files to be # installed. But it seems most make programs don't set $<, $^, $? and diff --git a/config.make.in b/config.make.in index 73aecc96c2b28e0661189cb37c244900dae755e4..58ee19c19af24edd95c0162ae5f735729436216b 100644 --- a/config.make.in +++ b/config.make.in @@ -53,6 +53,7 @@ AUTOHEADER = autoheader M4 = @M4@ MAKEINFO = makeinfo RANLIB = @RANLIB@ +LN_S = @LN_S@ prefix = @prefix@ exec_prefix = @exec_prefix@ diff --git a/configure.ac b/configure.ac index 334bab0855df0e2728f20c70a9b35aa0311fdbca..9c9de1ed1a429bb708557c9820b72ac9c224977d 100644 --- a/configure.ac +++ b/configure.ac @@ -107,6 +107,8 @@ AC_PROG_INSTALL # autoconf-2.60 or automake-1.10 to avoid races. AC_PROG_MKDIR_P +AC_PROG_LN_S + LSH_DEPENDENCY_TRACKING if test x$enable_dependency_tracking = xyes ; then