Index: third_party/minigbm/BUILD.gn |
diff --git a/third_party/minigbm/BUILD.gn b/third_party/minigbm/BUILD.gn |
new file mode 100644 |
index 0000000000000000000000000000000000000000..03b6f5d24392cafaf3f5279aa61919f480d5eb3e |
--- /dev/null |
+++ b/third_party/minigbm/BUILD.gn |
@@ -0,0 +1,58 @@ |
+# Copyright 2015 The Chromium Authors. All rights reserved. |
+# Use of this source code is governed by a BSD-style license that can be |
+# found in the LICENSE file. |
+ |
+import("//build/config/linux/pkg_config.gni") |
+ |
+assert(is_linux) |
+ |
+declare_args() { |
+ # Controls whether the build should use the version of minigbm library |
+ # shipped with the system. In release builds of Chrome OS we use the |
+ # system version, but when building on dev workstations or the Chrome |
+ # waterfall we bundle it because Ubuntu doesn't ship a usable version. |
+ use_system_minigbm = false |
+} |
+ |
+if (!use_system_minigbm) { |
+ config("minigbm_config") { |
+ include_dirs = [ "src" ] |
+ } |
+ |
+ pkg_config("libdrm") { |
+ packages = [ "libdrm" ] |
+ } |
+ |
+ static_library("minigbm") { |
+ sources = [ |
+ "src/cirrus.c", |
+ "src/exynos.c", |
+ "src/gbm.c", |
+ "src/gma500.c", |
+ "src/helpers.c", |
+ "src/i915.c", |
+ "src/mediatek.c", |
+ "src/rockchip.c", |
+ "src/tegra.c", |
+ "src/udl.c", |
+ ] |
+ |
+ configs -= [ "//build/config/compiler:chromium_code" ] |
+ configs += [ |
+ ":libdrm", |
+ "//build/config/compiler:no_chromium_code", |
+ ] |
+ |
+ public_configs = [ ":minigbm_config" ] |
+ } |
+} |
+ |
+if (use_system_minigbm) { |
+ pkg_config("libgbm") { |
+ packages = [ "gbm" ] |
+ } |
+ |
+ group("minigbm") { |
+ public_configs = [ ":libgbm" ] |
+ } |
+} |