diff --git a/lib/easy_compile/cli.rb b/lib/easy_compile/cli.rb index eeb7af4..e5dec7b 100644 --- a/lib/easy_compile/cli.rb +++ b/lib/easy_compile/cli.rb @@ -129,7 +129,7 @@ def print_normalized_platform def run_rake_tasks!(*tasks) all_tasks = tasks.join(" ") - rakelibdir = File.expand_path("tasks", __dir__) + rakelibdir = [File.expand_path("tasks", __dir__), "rakelib"].join(File::PATH_SEPARATOR) rake_compiler_path = Gem.loaded_specs["rake-compiler"].full_require_paths rake_specs = Gem.loaded_specs["rake"] rake_executable = rake_specs.bin_file("rake") diff --git a/lib/easy_compile/compilation_tasks.rb b/lib/easy_compile/compilation_tasks.rb index 8091a82..79be278 100644 --- a/lib/easy_compile/compilation_tasks.rb +++ b/lib/easy_compile/compilation_tasks.rb @@ -57,8 +57,10 @@ def with_mkmf_monkey_patch instance = self + previous_create_makefile = method(:create_makefile) Object.define_method(:create_makefile) do |name, *args| instance.binary_name = name + previous_create_makefile.call(name, *args) end Object.define_method(:create_rust_makefile) do |name, *args| diff --git a/lib/easy_compile/tasks/wrapper.rake b/lib/easy_compile/tasks/wrapper.rake index 3ccca5d..f4670e4 100644 --- a/lib/easy_compile/tasks/wrapper.rake +++ b/lib/easy_compile/tasks/wrapper.rake @@ -5,6 +5,10 @@ require_relative "../compilation_tasks" task = EasyCompile::CompilationTasks.new(!Rake::Task.task_defined?(:package)) task "easy_compile:setup" do + Rake.application.instance_variable_get(:@tasks).delete_if do |name, _| + name == "native:#{task.gemspec.name}:#{task.normalized_platform}" + end + task.setup end