diff options
| author | ruki <[email protected]> | 2025-02-25 23:03:48 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2025-02-25 23:03:48 +0800 |
| commit | c1fac4f233b9c33b897ec3348d908d9560eff385 (patch) | |
| tree | 237f440aacf39d0eb59c59c832749dab51f1bd1e | |
| parent | ca1b4ed22e3f9aeebce728459960d9238dba39c3 (diff) | |
fix find kotlin libs
| -rw-r--r-- | xmake/modules/package/manager/kotlin-native/find_package.lua | 15 | ||||
| -rw-r--r-- | xmake/modules/package/manager/kotlin-native/install_package.lua | 19 |
2 files changed, 16 insertions, 18 deletions
diff --git a/xmake/modules/package/manager/kotlin-native/find_package.lua b/xmake/modules/package/manager/kotlin-native/find_package.lua index 6a8134ec6..da2768306 100644 --- a/xmake/modules/package/manager/kotlin-native/find_package.lua +++ b/xmake/modules/package/manager/kotlin-native/find_package.lua @@ -35,17 +35,8 @@ function main(name, opt) opt = opt or {} local result = {} local installdir = assert(opt.installdir, "installdir not found!") - local libraries = os.files(path.join(installdir, "lib", "*.klib")) - for _, libraryfile in ipairs(libraries) do - result.libfiles = result.libfiles or {} - result.links = result.links or {} - result.linkdirs = result.linkdirs or {} - table.insert(result.links, path.basename(libraryfile)) - table.insert(result.linkdirs, path.directory(libraryfile)) - table.insert(result.libfiles, libraryfile) - end - if result.links then - print(result) - return result + local manifest_file = path.join(installdir, "installed_manifest.txt") + if os.isfile(manifest_file) then + return io.load(manifest_file) end end diff --git a/xmake/modules/package/manager/kotlin-native/install_package.lua b/xmake/modules/package/manager/kotlin-native/install_package.lua index d8598def3..aaac0fd33 100644 --- a/xmake/modules/package/manager/kotlin-native/install_package.lua +++ b/xmake/modules/package/manager/kotlin-native/install_package.lua @@ -33,20 +33,20 @@ import("core.base.semver") function _select_package_version(name, opt) local installdir = opt.installdir local require_version = opt.require_version - local manifest_file = path.join(installdir, "maven-metadata.xml") + local metadata_file = path.join(installdir, "maven-metadata.xml") for _, repository in ipairs(opt.repositories) do - local manifest_url = ("%s/%s-%s/maven-metadata.xml"):format(repository, (name:gsub("%.", "/"):gsub(":", "/")), opt.triplet) + local metadata_url = ("%s/%s-%s/maven-metadata.xml"):format(repository, (name:gsub("%.", "/"):gsub(":", "/")), opt.triplet) local ok = try { function() - http.download(manifest_url, manifest_file, { + http.download(metadata_url, metadata_file, { insecure = global.get("insecure-ssl")}) return true end } - if ok and os.isfile(manifest_file) then - local manifest = io.readfile(manifest_file) + if ok and os.isfile(metadata_file) then + local metadata = io.readfile(metadata_file) local versions = {} - for _, line in ipairs(manifest:split("\n")) do + for _, line in ipairs(metadata:split("\n")) do local v = line:match("<version>(.*)</version>") if v then table.insert(versions, v) @@ -69,6 +69,13 @@ function _install_package(name, opt) local library_url = ("%s/%s-%s/%s-%s.klib"):format(opt.repository, (name:gsub("%.", "/"):gsub(":", "/")), opt.triplet, basename, opt.version) http.download(library_url, library_file, { insecure = global.get("insecure-ssl")}) + + local manifest_file = path.join(installdir, "installed_manifest.txt") + io.save(manifest_file, { + links = basename, + linkdirs = path.directory(library_file), + libfiles = library_file, + version = opt.version}) end -- install package |
