File: Fix segfault
authorVolker Christian <me@vchrist.at>
Sat, 8 Jul 2023 14:04:27 +0000 (16:04 +0200)
committerMarko Ratkaj <markoratkaj@gmail.com>
Mon, 10 Jul 2023 12:20:00 +0000 (14:20 +0200)
Executables depending on binary package libmagic segfault in case
package file is not installed. Libmagic needs file
/usr/share/misc/magic to not segfault. Thus, install
/usr/share/misc/magic along with libmagic and not with file.

Signed-off-by: Volker Christian <me@vchrist.at>
libs/file/Makefile

index 7b502bfab6175ad3ceff38e4f24a60a888ad6849..25941eccec54752321037540a6fad7f2ddf04f6e 100644 (file)
@@ -82,20 +82,22 @@ define Build/InstallDev
        $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/magic.h $(1)/usr/include/
        $(INSTALL_DIR) $(1)/usr/lib
        $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/libmagic.{a,so*} $(1)/usr/lib/
+       ${INSTALL_DIR} $(1)/usr/lib/pkgconfig
+       $(INSTALL_DATA) $(PKG_BUILD_DIR)/libmagic.pc $(1)/usr/lib/pkgconfig/
 endef
 
 define Package/file/install
        $(INSTALL_DIR) $(1)/usr/bin
        $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/file $(1)/usr/bin/
-       $(INSTALL_DIR) $(1)/usr/share/misc
-       $(SED) "/^#/d" $(PKG_INSTALL_DIR)/usr/share/file/magic
-       $(SED) "/^$$$$/d" $(PKG_INSTALL_DIR)/usr/share/file/magic
-       $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/file/magic $(1)/usr/share/misc/
 endef
 
 define Package/libmagic/install
        $(INSTALL_DIR) $(1)/usr/lib
        $(CP) $(PKG_INSTALL_DIR)/usr/lib/libmagic.so.* $(1)/usr/lib/
+       $(INSTALL_DIR) $(1)/usr/share/misc
+       $(SED) "/^#/d" $(PKG_INSTALL_DIR)/usr/share/file/magic
+       $(SED) "/^$$$$/d" $(PKG_INSTALL_DIR)/usr/share/file/magic
+       $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/file/magic $(1)/usr/share/misc/
 endef
 
 $(eval $(call BuildPackage,file))