diff options
| author | Mike McQuaid | 2016-12-23 19:24:15 +0000 | 
|---|---|---|
| committer | GitHub | 2016-12-23 19:24:15 +0000 | 
| commit | 161bd20fcdc2af6b582c4a617b04c4c300f8bf82 (patch) | |
| tree | 5eae3c1c3aa24ae6914a3ad2c8eb210e4992f1da /Library/Homebrew/dev-cmd/create.rb | |
| parent | cd13e306a8147ce702855c769d164546213501bd (diff) | |
| parent | cc09bb14c16c8e4f6b360f30074522c2ee25167b (diff) | |
| download | brew-161bd20fcdc2af6b582c4a617b04c4c300f8bf82.tar.bz2 | |
Merge pull request #1663 from tschoonj/meson-create-support
brew create: add meson support
Diffstat (limited to 'Library/Homebrew/dev-cmd/create.rb')
| -rw-r--r-- | Library/Homebrew/dev-cmd/create.rb | 17 | 
1 files changed, 16 insertions, 1 deletions
diff --git a/Library/Homebrew/dev-cmd/create.rb b/Library/Homebrew/dev-cmd/create.rb index f684f95f6..b6a3a8810 100644 --- a/Library/Homebrew/dev-cmd/create.rb +++ b/Library/Homebrew/dev-cmd/create.rb @@ -1,4 +1,4 @@ -#:  * `create` <URL> [`--autotools`|`--cmake`] [`--no-fetch`] [`--set-name` <name>] [`--set-version` <version>] [`--tap` <user>`/`<repo>]: +#:  * `create` <URL> [`--autotools`|`--cmake`|`--meson`] [`--no-fetch`] [`--set-name` <name>] [`--set-version` <version>] [`--tap` <user>`/`<repo>]:  #:    Generate a formula for the downloadable file at <URL> and open it in the editor.  #:    Homebrew will attempt to automatically derive the formula name  #:    and version, but if it fails, you'll have to make your own template. The `wget` @@ -8,6 +8,7 @@  #:  #:    If `--autotools` is passed, create a basic template for an Autotools-style build.  #:    If `--cmake` is passed, create a basic template for a CMake-style build. +#:    If `--meson` is passed, create a basic template for a Meson-style build.  #:  #:    If `--no-fetch` is passed, Homebrew will not download <URL> to the cache and  #:    will thus not add the SHA256 to the formula for you. @@ -59,6 +60,8 @@ module Homebrew        :cmake      elsif ARGV.include? "--autotools"        :autotools +    elsif ARGV.include? "--meson" +      :meson      end      if fc.name.nil? || fc.name.strip.empty? @@ -175,6 +178,9 @@ class FormulaCreator      <% if mode == :cmake %>        depends_on "cmake" => :build +    <% elsif mode == :meson %> +      depends_on "meson" => :build +      depends_on "ninja" => :build      <% elsif mode.nil? %>        # depends_on "cmake" => :build      <% end %> @@ -191,6 +197,13 @@ class FormulaCreator                                "--disable-dependency-tracking",                                "--disable-silent-rules",                                "--prefix=\#{prefix}" +    <% elsif mode == :meson %> +        mkdir "build" do +          system "meson", "--prefix=\#{prefix}", ".." +          system "ninja" +          system "ninja", "test" +          system "ninja", "install" +        end      <% else %>          # Remove unrecognized options if warned by configure          system "./configure", "--disable-debug", @@ -199,7 +212,9 @@ class FormulaCreator                                "--prefix=\#{prefix}"          # system "cmake", ".", *std_cmake_args      <% end %> +    <% if mode != :meson %>          system "make", "install" # if this fails, try separate make/make install steps +    <% end %>        end        test do  | 
