package/swig: create a legacy symlink for swig3.0
authorYegor Yefremov <yegorslists@googlemail.com>
Mon, 24 Feb 2020 10:12:52 +0000 (11:12 +0100)
committerPeter Korsgaard <peter@korsgaard.com>
Thu, 27 Feb 2020 21:02:04 +0000 (22:02 +0100)
The host-swig package installs the swig binary as 'swig' and adds a
swig<major> symlink (E.G.  swig4.0).  This causes issues for older software
which may not know about the 4.0 version of swig, E.G.  CMake 3.10.x
contains the following swig detection logic:

find_program(SWIG_EXECUTABLE NAMES swig3.0 swig2.0 swig)

If the host has a 3.x or 2.x variant of swig installed, then that will be
used instead of our host-swig.

As a workaround, also add a swig3.0 symlink so our host-swig will be used.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
[Peter: reworded]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
package/swig/swig.mk

index 3dba3425cf6d6fb8f4dbb7b4f648c219473db434..5881a0e42302696ec076178d778d4f55d50ad147 100644 (file)
@@ -27,6 +27,7 @@ SWIG_LICENSE_FILES = LICENSE LICENSE-GPL LICENSE-UNIVERSITIES
 
 define HOST_SWIG_INSTALL_SYMLINK
        ln -fs swig $(HOST_DIR)/bin/swig$(SWIG_VERSION_MAJOR)
+       ln -fs swig $(HOST_DIR)/bin/swig3.0
 endef
 
 HOST_SWIG_POST_INSTALL_HOOKS += HOST_SWIG_INSTALL_SYMLINK