Clean up 'install' Makefile target
authorXiretza <xiretza@xiretza.xyz>
Wed, 29 Jan 2020 17:07:13 +0000 (18:07 +0100)
committerXiretza <xiretza@xiretza.xyz>
Wed, 29 Jan 2020 18:10:54 +0000 (19:10 +0100)
- libyosys.so is now only installed to LIBDIR instead of LIBDIR, BINDIR
  and PYTHON_DESTDIR
- replace mkdir/cp for single files with `install`

Makefile

index 43c4d089027b01f68adfd3386612a3b64d9c1853..f147a4f472c0d709996d37637da0d34aabaa0e76 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -763,8 +763,7 @@ clean-unit-test:
        @$(MAKE) -C $(UNITESTPATH) clean
 
 install: $(TARGETS) $(EXTRA_TARGETS)
-       $(INSTALL_SUDO) mkdir -p $(DESTDIR)$(BINDIR)
-       $(INSTALL_SUDO) cp $(TARGETS) $(DESTDIR)$(BINDIR)
+       $(INSTALL_SUDO) install -D -t $(DESTDIR)$(BINDIR) $(filter-out libyosys.so,$(TARGETS))
 ifneq ($(filter yosys,$(TARGETS)),)
        $(INSTALL_SUDO) $(STRIP) -S $(DESTDIR)$(BINDIR)/yosys
 endif
@@ -777,13 +776,11 @@ endif
        $(INSTALL_SUDO) mkdir -p $(DESTDIR)$(DATDIR)
        $(INSTALL_SUDO) cp -r share/. $(DESTDIR)$(DATDIR)/.
 ifeq ($(ENABLE_LIBYOSYS),1)
-       $(INSTALL_SUDO) mkdir -p $(DESTDIR)$(LIBDIR)
-       $(INSTALL_SUDO) cp libyosys.so $(DESTDIR)$(LIBDIR)/
+       $(INSTALL_SUDO) install -D -t $(DESTDIR)$(LIBDIR) libyosys.so
        $(INSTALL_SUDO) $(STRIP) -S $(DESTDIR)$(LIBDIR)/libyosys.so
 ifeq ($(ENABLE_PYOSYS),1)
-       $(INSTALL_SUDO) mkdir -p $(PYTHON_DESTDIR)/pyosys
-       $(INSTALL_SUDO) cp libyosys.so $(PYTHON_DESTDIR)/pyosys/
-       $(INSTALL_SUDO) cp misc/__init__.py $(PYTHON_DESTDIR)/pyosys/
+       $(INSTALL_SUDO) install -Dm644 -t $(PYTHON_DESTDIR)/pyosys/ misc/__init__.py
+       $(INSTALL_SUDO) ln -s $(LIBDIR)/libyosys.so $(PYTHON_DESTDIR)/pyosys/
 endif
 endif