🐛 Fixed libnode pkg build

This commit is contained in:
Edgar 2023-09-22 21:54:35 +02:00
parent 26ef11907b
commit 9015aadf26
No known key found for this signature in database
GPG key ID: 3C2E1F2C1C353131
2 changed files with 36 additions and 14 deletions

View file

@ -1,4 +1,4 @@
sources: sources:
"18.17.1": "18.17.1":
url: "https://nodejs.org/dist/v18.17.1/node-v18.17.1.tar.gz" url: "https://cdn.anotherfoxguy.com/node-v18.17.1.tar.gz"
sha256: "1157525a819c395020795ff8c49eee7472b8666cc256b45558b9cbe2e0864c35" sha256: "1157525a819c395020795ff8c49eee7472b8666cc256b45558b9cbe2e0864c35"

View file

@ -1,9 +1,8 @@
import os import os
from conan import ConanFile from conan import ConanFile
from conan.tools.files import get, copy from conan.tools.files import get, copy, collect_libs
from conan.tools.gnu import Autotools from conan.tools.gnu import Autotools
from conan.tools.env import Environment, VirtualBuildEnv from conan.tools.env import Environment, VirtualBuildEnv
from conan.tools.layout import basic_layout
from conan.tools.microsoft import ( from conan.tools.microsoft import (
VCVars, VCVars,
MSBuild, MSBuild,
@ -36,9 +35,6 @@ class libnodeConan(ConanFile):
f"--shared-{libname}-libpath={libpath}", f"--shared-{libname}-libpath={libpath}",
] ]
def layout(self):
basic_layout(self)
def build_requirements(self): def build_requirements(self):
self.tool_requires("nasm/2.15.05") self.tool_requires("nasm/2.15.05")
@ -67,7 +63,7 @@ class libnodeConan(ConanFile):
vbe = VirtualBuildEnv(self) vbe = VirtualBuildEnv(self)
vbe.generate() vbe.generate()
tc = MSBuildToolchain(self) tc = MSBuildToolchain(self)
tc.configuration = "%s" % self.settings.build_type tc.configuration = str(self.settings.build_type)
tc.generate() tc.generate()
tc = VCVars(self) tc = VCVars(self)
tc.generate() tc.generate()
@ -115,20 +111,20 @@ class libnodeConan(ConanFile):
def package(self): def package(self):
if self.settings.os == "Windows": if self.settings.os == "Windows":
self.run( self.run(
"set HEADERS_ONLY=1 && python ..\\tools\\install.py install %s include" "set HEADERS_ONLY=1 && python ./tools/install.py install %s\\ \\"
% self.package_folder % self.package_folder
) )
copy( copy(
self, self,
"libnode*.lib", "libnode.lib",
os.path.join(self.source_folder, "out"), os.path.join(self.source_folder, "out", str(self.settings.build_type)),
os.path.join(self.package_folder, "lib"), os.path.join(self.package_folder, "lib"),
keep_path=False keep_path=False
) )
copy( copy(
self, self,
"v8_libplatform*.lib", "v8_libplatform.lib",
os.path.join(self.source_folder, "out"), os.path.join(self.source_folder, "out", str(self.settings.build_type), "lib"),
os.path.join(self.package_folder, "lib"), os.path.join(self.package_folder, "lib"),
keep_path=False keep_path=False
) )
@ -140,5 +136,31 @@ class libnodeConan(ConanFile):
keep_path=False keep_path=False
) )
else: else:
autotools = Autotools(self) self.run(
autotools.install() "set HEADERS_ONLY=1 && python ./tools/install.py install %s\\ \\"
% self.package_folder
)
copy(
self,
"libnode.lib",
os.path.join(self.source_folder, "out", str(self.settings.build_type)),
os.path.join(self.package_folder, "lib"),
keep_path=False
)
copy(
self,
"v8_libplatform.lib",
os.path.join(self.source_folder, "out", str(self.settings.build_type), "lib"),
os.path.join(self.package_folder, "lib"),
keep_path=False
)
copy(
self,
"*.dll",
os.path.join(self.source_folder, "out"),
os.path.join(self.package_folder, "bin"),
keep_path=False
)
def package_info(self):
self.cpp_info.libs = collect_libs(self)