Jelajahi Sumber

update configure

ruki 2 tahun lalu
induk
melakukan
e0b3b7e5ed
1 mengubah file dengan 16 tambahan dan 3 penghapusan
  1. 16 3
      configure

+ 16 - 3
configure

@@ -110,11 +110,17 @@ string_split() {
             1) _ret="$1";;
             2) _ret="$2";;
             3) _ret="$3";;
+            4) _ret="$4";;
+            5) _ret="$5";;
+            6) _ret="$6";;
         esac
     else
         _ret="$1"
         _ret2="$2"
         _ret3="$3"
+        _ret4="$4"
+        _ret5="$5"
+        _ret6="$6"
     fi
     IFS="${oldifs}"
 }
@@ -1735,6 +1741,7 @@ _add_target_installpaths() {
     local key="$1"
     local filepattern="${2}"
     local prefixdir="${3}"
+    local filename=${4}
 
     # get root directory, e.g. "src/foo/(*.h)" -> "src/foo"
     local rootdir=""
@@ -1770,7 +1777,7 @@ _add_target_installpaths() {
     fi
     for file in ${files}; do
         path_relative "${xmake_sh_projectdir}" "${file}"; file="${_ret}"
-        _add_target_item "${_xmake_sh_target_current}" "${key}" "${file}:${rootdir}:${prefixdir}"
+        _add_target_item "${_xmake_sh_target_current}" "${key}" "${file}:${rootdir}:${prefixdir}:${filename}"
     done
 }
 
@@ -3756,7 +3763,10 @@ _gmake_add_install_target() {
             local srcheaderfile="${_ret}"
             local rootdir="${_ret2}"
             local prefixdir="${_ret3}"
-            path_filename "${srcheaderfile}"; local filename="${_ret}"
+            local filename="${_ret4}"
+            if test_z "${filename}"; then
+                path_filename "${srcheaderfile}"; filename="${_ret}"
+            fi
             local dstheaderdir="${includedir}"
             if test_nz "${prefixdir}"; then
                 dstheaderdir="${dstheaderdir}/${prefixdir}"
@@ -3780,7 +3790,10 @@ _gmake_add_install_target() {
             local srcinstallfile="${_ret}"
             local rootdir="${_ret2}"
             local prefixdir="${_ret3}"
-            path_filename "${srcinstallfile}"; local filename="${_ret}"
+            local filename="${_ret4}"
+            if test_z "${filename}"; then
+                path_filename "${srcinstallfile}"; filename="${_ret}"
+            fi
             local dstinstalldir="${installdir}"
             if test_nz "${prefixdir}"; then
                 dstinstalldir="${dstinstalldir}/${prefixdir}"