Ticket UUID: | cb458261c3aa62ca83da3455dfbade1d089d3cb8 | |||
Title: | Strip comme il faut | |||
Type: | Bug | Version: | ||
Submitter: | stu | Created on: | 2020-10-18 09:05:36 | |
Subsystem: | 53. Configuration and Build Tools | Assigned To: | jan.nijtmans | |
Priority: | 5 Medium | Severity: | Minor | |
Status: | Closed | Last Modified: | 2020-11-18 16:27:26 | |
Resolution: | Fixed | Closed By: | jan.nijtmans | |
Closed on: | 2020-11-18 16:27:26 | |||
Description: |
The install-strip target hasn't been right for a long time. Library stripping was even removed in checkin [517d7010fc] due to problems. The way to do it is to set the STRIPPROG env var, similar to how the CPPROG env var is set for DIST_INSTALL_*. This way, install-sh can simply be updated from [https://git.savannah.gnu.org/cgit/automake.git/tree/lib/install-sh] without having to fiddle with it, which is wrong anyway, since passing strip options to any install probably won't work ... anywhere? Latest version of install-sh is 2020-07-26.22. I think this will still need to be tested to vis-a-vis [517d7010fc] to see what effect it has on that problem. The Makefile.in patch would look like this: -INSTALL_PROGRAM="$(INSTALL_PROGRAM) ${INSTALL_STRIP_PROGRAM}" \ -INSTALL_LIBRARY="$(INSTALL_LIBRARY) ${INSTALL_STRIP_LIBRARY}" +INSTALL_PROGRAM="STRIPPROG='strip ${INSTALL_STRIP_PROGRAM}' $(INSTALL_PROGRAM) -s" \ +INSTALL_LIBRARY="STRIPPROG='strip ${INSTALL_STRIP_LIBRARY}' $(INSTALL_LIBRARY) -s" | |||
User Comments: |
jan.nijtmans added on 2020-11-18 16:25:41:
Fixed now in e3fe3bec53, but in a different way: install-sh is upgraded (as you suggested), but the Tcl-specific tweak is re-added (for compatibility with extensions with still might use it). However in the MacOS GNUMakefile, "strip-install" is no longer used. This fixes the problem on MacOS too. I think that's the best we can do for now. stu added on 2020-11-14 18:27:07: How is this looking to you? jan.nijtmans added on 2020-10-19 12:34:42: Ok, thanks! With this additional changes it appears to work. Committed to a bug-fix branch now. Let's see if Travis agrees. stu added on 2020-10-19 12:13:29: Also maybe this change as well, since -s is the default. -INSTALL_STRIP_PROGRAM = -s +INSTALL_STRIP_PROGRAM = stu added on 2020-10-19 12:07:42: Could you please try again but also change this? -INSTALL_STRIP_LIBRARY = -S -x +INSTALL_STRIP_LIBRARY = -x jan.nijtmans added on 2020-10-19 07:48:38: Thank you for your suggestion! Well, I tried your patch with the MacOS build, and it didn't work. Whatever the problem, we cannot get rid of the '-S' option in 'install-sh' anyway, because the same 'install-sh' is used in TEA as well. External Makefile depend on it, we cannot force external packages doing an upgrade to change their Makefile.in too. Better idea would be to submit the '-S' modification to the GNU 'automake' project. I'll see what I can do (unless you want to do it ....) I upgraded 'install-sh' to the latest version now, but re-added the '-S' option. |