class Onscripter < Formula desc "NScripter-compatible visual novel engine" homepage "https://onscripter.osdn.jp/" url "https://onscripter.osdn.jp/onscripter-20161102.tar.gz" sha256 "e9a39b1c45cc47c363eb15773a9944da7a29eff74261ccb656ff5ce4b5fdd5d8" bottle do cellar :any sha256 "fd7c75efab115baea62753d3d1782da8ee37f3b3efe0244617e74b1565bf2b6d" => :sierra sha256 "195400d5f1b00f4ea87afd84d4bbbff3db9588c0453ffd958747d46452fc648e" => :el_capitan sha256 "32049a5783405c811890d4ae5aa5981718fac4522d359bb1c5c1b7a20b569459" => :yosemite end option "with-english", "Build with single-byte character mode" depends_on "pkg-config" => :build depends_on "sdl" depends_on "sdl_ttf" depends_on "sdl_image" depends_on "sdl_mixer" => "with-libvorbis" depends_on "smpeg" depends_on "jpeg" depends_on "lua" => :recommended def install incs = [ `pkg-config --cflags sdl SDL_ttf SDL_image SDL_mixer`.chomp, `smpeg-config --cflags`.chomp, "-I#{Formula["jpeg"].include}", ] libs = [ `pkg-config --libs sdl SDL_ttf SDL_image SDL_mixer`.chomp, `smpeg-config --libs`.chomp, "-ljpeg", "-lbz2", ] defs = %w[ -DMACOSX -DUSE_CDROM -DUTF8_CAPTION -DUTF8_FILESYSTEM ] ext_objs = [] if build.with? "lua" lua = Formula["lua"] incs << "-I#{lua.include}" libs << "-L#{lua.lib} -llua" defs << "-DUSE_LUA" ext_objs << "LUAHandler.o" end if build.with? "english" defs += %w[ -DENABLE_1BYTE_CHAR -DFORCE_1BYTE_CHAR ] end k = %w[INCS LIBS DEFS EXT_OBJS] v = [incs, libs, defs, ext_objs].map { |x| x.join(" ") } args = k.zip(v).map { |x| x.join("=") } system "make", "-f", "Makefile.MacOSX", *args bin.install %w[onscripter sardec nsadec sarconv nsaconv] end test do assert shell_output("#{bin}/onscripter -v").start_with? "ONScripter version #{version}" end end