# -*- mode: ruby -*-
# vi: set ft=ruby :

# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  targets = [
    "win32",
    "win64",
  ]

  targets.each do |target|
    config.vm.define(target) do |node|
      node.vm.box = "bento/ubuntu-18.04"

      node.vm.synced_folder("../", "/ruby-gnome2")
      node.vm.synced_folder("../../pkg-config", "/pkg-config")
      node.vm.synced_folder("../../native-package-installer",
                            "/native-package-installer")
      node.vm.synced_folder("../../rcairo", "/rcairo")

      node.vm.provision(:shell,
                        :privileged => false,
                        :path => "build-#{target}.sh")
      config.vm.provider("virtualbox") do |virtual_box|
        system_n_cpus = 1
        if File.exist?("/proc/cpuinfo")
          system_n_cpus = File.readlines("/proc/cpuinfo").grep(/^processor/).size
        end
        if system_n_cpus > 1
          vm_n_cpus = system_n_cpus / 2
        else
          vm_n_cpus = 1
        end
        virtual_box.cpus = (ENV["N_CPUS"] || vm_n_cpus).to_i
        virtual_box.memory = (ENV["VM_MEMORY"] || 1024).to_i
      end
    end
  end
end
