Mercurial
view raylib_examples/raylib.bzl @ 22:947b81010aba
[Dowa & Seobeo] Updated so that Dowa hashmaps can use arena and not be broken. Split up web so taht it can handle different paths. Also fixes issues with hash collisions which was pain in the ass.
| author | June Park <parkjune1995@gmail.com> |
|---|---|
| date | Tue, 07 Oct 2025 07:11:02 -0700 |
| parents | f33d9ff8b6e8 |
| children |
line wrap: on
line source
def raylib_binary( name, srcs, deps = [], deps_macos = [], deps_linux = [], linkopts_macos = [ "-framework CoreVideo", "-framework IOKit", "-framework Cocoa", "-framework GLUT", "-framework OpenGL", ], linkopts_linux = [ "-lGL", "-lm", "-lpthread", "-ldl", "-lrt", "-lX11", ]): """ Raylib specific cross platform rules. Args: name: The logical name of the binary (alias). srcs: List of source files (common). deps: Mutual dependency. deps_macos: Extra deps for macOS. deps_linux: Extra deps for Linux. linkopts_macos: Extra linkopts for macOS. linkopts_linux: Extra linkopts for Linux. """ macos_bin = name + "_macos" linux_bin = name + "_linux" native.cc_binary( name = macos_bin, srcs = srcs, deps = deps + deps_macos, linkopts = linkopts_macos, ) native.cc_binary( name = linux_bin, srcs = srcs, deps = deps + deps_linux, linkopts = linkopts_linux, ) native.alias( name = name, actual = select({ "//config:macos": ":" + macos_bin, "//config:linux": ":" + linux_bin, "//conditions:default": ":" + linux_bin, # fallback }), )