浏览代码

Script updates for openimageio-opencolorio-2.3.17 on Linux aarch64 (ARM64) (#161)

Signed-off-by: Steve Pham <[email protected]>
Steve Pham 2 年之前
父节点
当前提交
3e230b0eaa

+ 13 - 3
package-system/openimageio-opencolorio/build_openimageio.py

@@ -104,6 +104,16 @@ dependencies = {
             'libpng' :   ('png-1.6.37-rev2-linux',             '5c82945a1648905a5c4c5cee30dfb53a01618da1bf58d489610636c7ade5adf5'),
             'libpng' :   ('png-1.6.37-rev2-linux',             '5c82945a1648905a5c4c5cee30dfb53a01618da1bf58d489610636c7ade5adf5'),
             'expat' :    ('expat-2.4.2-rev2-linux',            '755369a919e744b9b3f835d1acc684f02e43987832ad4a1c0b6bbf884e6cd45b'),
             'expat' :    ('expat-2.4.2-rev2-linux',            '755369a919e744b9b3f835d1acc684f02e43987832ad4a1c0b6bbf884e6cd45b'),
             'freetype' : ('freetype-2.11.1-rev1-linux',        '28bbb850590507eff85154604787881ead6780e6eeee9e71ed09cd1d48d85983')
             'freetype' : ('freetype-2.11.1-rev1-linux',        '28bbb850590507eff85154604787881ead6780e6eeee9e71ed09cd1d48d85983')
+        },
+    'linux-aarch64' :
+        {
+            'zlib' :     ('zlib-1.2.11-rev5-linux-aarch64',     'ce9d1ed2883d77ffc69c7982c078595c1f89ca55ec19d89fe7e6beb05f774775'),
+            'openexr' :  ('OpenEXR-3.1.3-rev4-linux-aarch64',  'c9a81050f0d550ab03d2f5801e2f67f9f02747c26f4b39647e9919278585ad6a'),
+            'python' :   ('python-3.10.5-rev2-linux-aarch64',  'a02bfb612005af364872aac96e569cef1ad84ba65632d88d04b34a99d45b077c'),
+            'tiff' :     ('tiff-4.2.0.15-rev3-linux-aarch64',  '429461014b21a530dcad597c2d91072ae39d937a04b7bbbf5c34491c41767f7f'),
+            'libpng' :   ('png-1.6.37-rev2-linux-aarch64',     'fcf646c1b1b4163000efdb56d7c8f086b6ce0a520da5c8d3ffce4e1329ae798a'),
+            'expat' :    ('expat-2.4.2-rev2-linux-aarch64',    '934a535c1492d11906789d7ddf105b1a530cf8d8fb126063ffde16c5caeb0179'),
+            'freetype' : ('freetype-2.11.1-rev1-linux-aarch64','b4e3069acdcdae2f977108679d0986fb57371b9a7d4a3a496ab16909feabcba6')
         }
         }
 }
 }
 
 
@@ -213,7 +223,7 @@ if result != 0:
     print("Missing nasm install on system")
     print("Missing nasm install on system")
     if args.platform == "darwin":
     if args.platform == "darwin":
         print("Please run: 'brew install nasm' and then run the build again")
         print("Please run: 'brew install nasm' and then run the build again")
-    elif args.platform == "linux":
+    elif args.platform in ("linux", "linux-aarch64"):
         print("Please use your linux package manager to install the nasm package and then run the build again")
         print("Please use your linux package manager to install the nasm package and then run the build again")
     else: # windows
     else: # windows
         print("Please run: 'winget install nasm' or install from https://www.nasm.us/")
         print("Please run: 'winget install nasm' or install from https://www.nasm.us/")
@@ -620,7 +630,7 @@ def BuildOpenImageIO(release=True):
             f'-DCMAKE_TOOLCHAIN_FILE={repo_root_path / "Scripts/cmake/Platform/Mac/Toolchain_mac.cmake"}',
             f'-DCMAKE_TOOLCHAIN_FILE={repo_root_path / "Scripts/cmake/Platform/Mac/Toolchain_mac.cmake"}',
             f'-DCMAKE_INSTALL_RPATH=@loader_path;@loader_path/../..;@loader_path/lib',
             f'-DCMAKE_INSTALL_RPATH=@loader_path;@loader_path/../..;@loader_path/lib',
         ]
         ]
-    elif args.platform == "linux":
+    elif args.platform in ("linux", "linux-aarch64"):
         # We need to set the RPATH to use relative $ORIGIN, or
         # We need to set the RPATH to use relative $ORIGIN, or
         # else the RPATH will contain absolute paths
         # else the RPATH will contain absolute paths
         openimageio_configure_command += [
         openimageio_configure_command += [
@@ -719,7 +729,7 @@ if not SKIP_OPENIMAGEIO:
         exec_and_exit_if_failed(disable_stacktrace_patch_cmd, cwd=oiio_source_path)
         exec_and_exit_if_failed(disable_stacktrace_patch_cmd, cwd=oiio_source_path)
     # On Linux only, we need to also patch to make sure the pthreads is linked
     # On Linux only, we need to also patch to make sure the pthreads is linked
     # appropriately, otherwise specifically the testtex executable will fail to link
     # appropriately, otherwise specifically the testtex executable will fail to link
-    elif args.platform == "linux":
+    elif args.platform in ("linux", "linux-aarch64"):
         pthread_patch_file_path = script_folder / 'linux_pthreads_fix.patch'
         pthread_patch_file_path = script_folder / 'linux_pthreads_fix.patch'
         pthread_patch_cmd = ['git', 'apply', '--ignore-whitespace', str(pthread_patch_file_path.absolute())]
         pthread_patch_cmd = ['git', 'apply', '--ignore-whitespace', str(pthread_patch_file_path.absolute())]
         exec_and_exit_if_failed(pthread_patch_cmd, cwd=oiio_source_path)
         exec_and_exit_if_failed(pthread_patch_cmd, cwd=oiio_source_path)

+ 2 - 0
package_build_list_host_linux-aarch64.json

@@ -22,6 +22,7 @@
         "mikkelsen-1.0.0.4-linux-aarch64": "package-system/mikkelsen/build_package_image.py --platform linux-aarch64",
         "mikkelsen-1.0.0.4-linux-aarch64": "package-system/mikkelsen/build_package_image.py --platform linux-aarch64",
         "NvCloth-v1.1.6-4-gd243404-pr58-rev1-linux-aarch64": "package-system/NvCloth/build_package_image.py --platform-name linux-aarch64",
         "NvCloth-v1.1.6-4-gd243404-pr58-rev1-linux-aarch64": "package-system/NvCloth/build_package_image.py --platform-name linux-aarch64",
         "OpenEXR-3.1.3-rev4-linux-aarch64": "Scripts/extras/pull_and_build_from_git.py ../../package-system/OpenEXR --platform-name Linux-aarch64 --clean",
         "OpenEXR-3.1.3-rev4-linux-aarch64": "Scripts/extras/pull_and_build_from_git.py ../../package-system/OpenEXR --platform-name Linux-aarch64 --clean",
+	"openimageio-opencolorio-2.3.17-rev2-linux-aarch64": "package-system/openimageio-opencolorio/build_openimageio.py --package-name=openimageio-opencolorio-2.3.17-rev2-linux-aarch64 --platform linux-aarch64 --clean",
         "OpenMesh-8.1-rev3-linux-aarch64": "Scripts/extras/pull_and_build_from_git.py ../../package-system/OpenMesh --platform-name Linux-aarch64 --clean",
         "OpenMesh-8.1-rev3-linux-aarch64": "Scripts/extras/pull_and_build_from_git.py ../../package-system/OpenMesh --platform-name Linux-aarch64 --clean",
         "OpenXR-1.0.22-rev2-linux-aarch64": "Scripts/extras/pull_and_build_from_git.py ../../package-system/OpenXR --platform-name Linux-aarch64 --clean",
         "OpenXR-1.0.22-rev2-linux-aarch64": "Scripts/extras/pull_and_build_from_git.py ../../package-system/OpenXR --platform-name Linux-aarch64 --clean",
         "PhysX-4.1.2.29882248-rev5-linux-aarch64": "package-system/PhysX/build_package_image.py --platform-name linux-aarch64",
         "PhysX-4.1.2.29882248-rev5-linux-aarch64": "package-system/PhysX/build_package_image.py --platform-name linux-aarch64",
@@ -54,6 +55,7 @@
         "mcpp-2.7.2_az.1-rev1-linux-aarch64": "package-system/mcpp-linux-aarch64",
         "mcpp-2.7.2_az.1-rev1-linux-aarch64": "package-system/mcpp-linux-aarch64",
         "NvCloth-v1.1.6-4-gd243404-pr58-rev1-linux-aarch64": "package-system/NvCloth-linux-aarch64",
         "NvCloth-v1.1.6-4-gd243404-pr58-rev1-linux-aarch64": "package-system/NvCloth-linux-aarch64",
         "OpenEXR-3.1.3-rev4-linux-aarch64": "package-system/OpenEXR/temp/OpenEXR-linux-aarch64",
         "OpenEXR-3.1.3-rev4-linux-aarch64": "package-system/OpenEXR/temp/OpenEXR-linux-aarch64",
+        "openimageio-opencolorio-2.3.17-rev2-linux-aarch64": "package-system/openimageio-opencolorio/temp/package-linux-aarch64",
         "OpenMesh-8.1-rev3-linux-aarch64": "package-system/OpenMesh/temp/OpenMesh-linux-aarch64",
         "OpenMesh-8.1-rev3-linux-aarch64": "package-system/OpenMesh/temp/OpenMesh-linux-aarch64",
         "OpenXR-1.0.22-rev2-linux-aarch64": "package-system/OpenXR/temp/OpenXR-linux-aarch64",
         "OpenXR-1.0.22-rev2-linux-aarch64": "package-system/OpenXR/temp/OpenXR-linux-aarch64",
         "PhysX-4.1.2.29882248-rev5-linux-aarch64": "package-system/PhysX-linux-aarch64",
         "PhysX-4.1.2.29882248-rev5-linux-aarch64": "package-system/PhysX-linux-aarch64",