diff options
author | Divy Srivastava <dj.srivastava23@gmail.com> | 2024-08-01 02:11:24 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-08-01 02:11:24 -0700 |
commit | 9f27bf9144b114bc4d7d9da77f7d55486e3d2c78 (patch) | |
tree | b9ff4d83346b1bceee217509415050f4e3ab9c1d | |
parent | f1fc708d816def60c5fc2fe7bb3e43d3d6f75ec6 (diff) |
fix(compile): adhoc codesign mach-o by default (#24824)
-rw-r--r-- | cli/standalone/binary.rs | 6 | ||||
-rw-r--r-- | tests/integration/compile_tests.rs | 11 |
2 files changed, 14 insertions, 3 deletions
diff --git a/cli/standalone/binary.rs b/cli/standalone/binary.rs index 588f0f7b7..8fb640be3 100644 --- a/cli/standalone/binary.rs +++ b/cli/standalone/binary.rs @@ -183,7 +183,7 @@ fn write_binary_bytes( } else if target.contains("darwin") { libsui::Macho::from(original_bin)? .write_section("d3n0l4nd", writer)? - .build(&mut file_writer)?; + .build_and_sign(&mut file_writer)?; } Ok(()) } @@ -194,8 +194,8 @@ pub fn is_standalone_binary(exe_path: &Path) -> bool { }; libsui::utils::is_elf(&data) - | libsui::utils::is_pe(&data) - | libsui::utils::is_macho(&data) + || libsui::utils::is_pe(&data) + || libsui::utils::is_macho(&data) } /// This function will try to run this binary as a standalone binary diff --git a/tests/integration/compile_tests.rs b/tests/integration/compile_tests.rs index df9ea26df..18d34c862 100644 --- a/tests/integration/compile_tests.rs +++ b/tests/integration/compile_tests.rs @@ -34,6 +34,17 @@ fn compile_basic() { output.assert_matches_text("Welcome to Deno!\n"); } + // On arm64 macOS, check if `codesign -v` passes + #[cfg(all(target_os = "macos", target_arch = "aarch64"))] + { + let output = std::process::Command::new("codesign") + .arg("-v") + .arg(&exe) + .output() + .unwrap(); + assert!(output.status.success()); + } + // now ensure this works when the deno_dir is readonly let readonly_dir = dir.path().join("readonly"); readonly_dir.make_dir_readonly(); |