| objc_library( |
| name = "glib-darwin", |
| srcs = [ |
| "glib/gosxutils.m", |
| "os/darwin/config.h", |
| "os/darwin/glib/glibconfig.h", |
| ] + glob(["glib/*.h"]), |
| copts = [ |
| "-DGLIB_COMPILATION", |
| "-D_GNU_SOURCE", |
| "-DG_DISABLE_CAST_CHECKS", |
| '-DGLIB_CHARSETALIAS_DIR=""', |
| "-I $(execpath os/darwin)", |
| "-I $(execpath os/darwin/glib)", |
| "-I $(execpath glib)", |
| ], |
| data = [ |
| # These paths are here so we can use them in copts with $(execpath ...) |
| "os/darwin", |
| "os/darwin/glib", |
| "glib", |
| ], |
| includes = [ |
| ".", |
| ], |
| ) |
| |
| cc_library( |
| # Named "glib2" so it doesn't shadow the "glib" directory in this package. |
| name = "glib2", |
| srcs = [ |
| "glib/garcbox.c", |
| "glib/garray.c", |
| "glib/gasyncqueue.c", |
| "glib/gatomic.c", |
| "glib/gbacktrace.c", |
| "glib/gbase64.c", |
| "glib/gbitlock.c", |
| "glib/gbookmarkfile.c", |
| "glib/gbytes.c", |
| "glib/gcharset.c", |
| "glib/gchecksum.c", |
| "glib/gconvert.c", |
| "glib/gdataset.c", |
| "glib/gdate.c", |
| "glib/gdatetime.c", |
| "glib/gdir.c", |
| "glib/genviron.c", |
| "glib/gerror.c", |
| "glib/gfileutils.c", |
| # "ggettext.c", # This requires the gettext packages. |
| "glib/ghash.c", |
| "glib/ghmac.c", |
| "glib/ghook.c", |
| "glib/ghostutils.c", |
| "glib/giochannel.c", |
| "glib/gkeyfile.c", |
| "glib/glib-init.c", |
| "glib/glib-private.c", |
| "glib/glist.c", |
| "glib/gmain.c", |
| "glib/gmappedfile.c", |
| "glib/gmarkup.c", |
| "glib/gmem.c", |
| "glib/gunicollate.c", |
| "glib/gmessages.c", |
| "glib/gnode.c", |
| "glib/goption.c", |
| "glib/gpathbuf.c", |
| "glib/gpattern.c", |
| "glib/gpoll.c", |
| "glib/gprimes.c", |
| "glib/gprintf.c", |
| "glib/gqsort.c", |
| "glib/gquark.c", |
| "glib/gqueue.c", |
| "glib/grand.c", |
| "glib/grcbox.c", |
| "glib/grefcount.c", |
| "glib/grefstring.c", |
| # "gregex.c", |
| "glib/gscanner.c", |
| "glib/gsequence.c", |
| "glib/gshell.c", |
| "glib/gslice.c", |
| "glib/gslist.c", |
| "glib/gstdio.c", |
| "glib/gstrfuncs.c", |
| "glib/gstring.c", |
| "glib/gstringchunk.c", |
| "glib/gstrvbuilder.c", |
| "glib/gtestutils.c", |
| "glib/gthread.c", |
| "glib/gthreadpool.c", |
| "glib/gtimer.c", |
| "glib/gtimezone.c", |
| "glib/gtrace.c", |
| "glib/gtranslit.c", |
| "glib/gtrashstack.c", |
| "glib/gtree.c", |
| "glib/gunibreak.c", |
| "glib/gunidecomp.c", |
| "glib/guniprop.c", |
| "glib/guri.c", |
| "glib/gutf8.c", |
| "glib/gutils.c", |
| # "guuid.c", # needs libintl.h from gettext |
| "glib/gvariant-core.c", |
| "glib/gvariant-parser.c", |
| "glib/gvariant-serialiser.c", |
| "glib/gvariant.c", |
| "glib/gvarianttype.c", |
| "glib/gvarianttypeinfo.c", |
| "glib/gversion.c", |
| "glib/gwakeup.c", |
| "glib/libcharset/localcharset.c", |
| ] + select({ |
| "@platforms//os:macos": [ |
| "glib/giounix.c", |
| "glib/glib-unix.c", |
| "glib/glib-unixprivate.h", |
| "glib/gspawn.c", |
| "glib/gthread-posix.c", |
| "os/darwin/config.h", |
| "os/darwin/glib/glibconfig.h", |
| ], |
| "//conditions:default": [], |
| }) + glob( |
| [ |
| "glib/*.h", |
| "glib/deprecated/*.h", |
| "glib/libcharset/*.h", |
| ], |
| exclude = [ |
| "glib/glib-unixprivate.h", |
| ], |
| ), |
| hdrs = [ |
| "glib.h", |
| ], |
| copts = [ |
| "-fvisibility=hidden", |
| "-Winvalid-pch", |
| "-Wextra", |
| "-Wpedantic", |
| "-std=gnu99", |
| "-fno-strict-aliasing", |
| "-Wimplicit-fallthrough", |
| "-Wmisleading-indentation", |
| "-Wmissing-field-initializers", |
| "-Wnonnull", |
| "-Wunused", |
| "-Wno-unused-parameter", |
| "-Wno-cast-function-type", |
| "-Wno-pedantic", |
| "-Wno-format-zero-length", |
| "-Wno-variadic-macros", |
| "-Werror=format=2", |
| "-Werror=init-self", |
| "-Werror=missing-include-dirs", |
| "-Werror=pointer-arith", |
| "-Werror=unused-result", |
| "-Wstrict-prototypes", |
| "-Wno-bad-function-cast", |
| "-Werror=implicit-function-declaration", |
| "-Werror=missing-prototypes", |
| "-Wduplicate-decl-specifier", |
| "-Werror=pointer-sign", |
| "-Wno-string-plus-int", |
| ] + select({ |
| "@platforms//os:macos": [ |
| "-I $(execpath os/darwin)", |
| "-I $(execpath os/darwin/glib)", |
| "-I $(execpath glib)", |
| ], |
| "//conditions:default": [], |
| }), |
| data = select({ |
| "@platforms//os:macos": [ |
| # These paths are here so we can use them in copts with $(execpath ...) |
| "os/darwin", |
| "os/darwin/glib", |
| "glib", |
| ], |
| "//conditions:default": [], |
| }), |
| includes = [ |
| ".", |
| ], |
| local_defines = [ |
| "GLIB_COMPILATION", |
| "_GNU_SOURCE", |
| "G_DISABLE_CAST_CHECKS", |
| 'GLIB_CHARSETALIAS_DIR=\\"\\"', |
| ], |
| deps = select({ |
| "@platforms//os:macos": [":glib-darwin"], |
| "//conditions:default": [], |
| }), |
| ) |