# Copyright 2016 The SwiftShader Authors. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#    http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# Need a separate config to ensure the warnings are added to the end.
config("swiftshader_llvm_private_config") {
  cflags = []

  if (is_win) {
    cflags += [
      "/wd4005",
      "/wd4065",
      "/wd4146",
      "/wd4245",
      "/wd4267",
      "/wd4310",
      "/wd4319",
      "/wd4334",
      "/wd4389",
      "/wd4624",
      "/wd4701",
      "/wd4702",
      "/wd4703",
      "/wd4706",
      "/wd4800",
    ]

    if (!is_debug) {
      cflags += [ "/wd4324" ]
    }

    if (is_clang) {
      cflags += [
        "-Wno-format",
        "-Wno-sign-compare",
        "-Wno-macro-redefined",
      ]
    }
  }

  if (is_clang) {
    cflags += [
      "-msse2",
      "-Wno-header-hygiene",
      "-Wno-null-dereference",
      "-Wno-unused-private-field",
      "-Wno-unused-local-typedef",
    ]
  } else {
    cflags += [ "-Wno-unused-but-set-variable" ]
  }
  cflags += [
    "-Wno-attributes",
    "-Wno-deprecated-declarations",
    "-Wno-enum-compare",
    "-Wno-unused-function",
    "-Wno-unused-result",
    "-Wno-unused-variable",
  ]
  defines = [
    "__STDC_CONSTANT_MACROS",
    "__STDC_LIMIT_MACROS",
  ]
}

source_set("swiftshader_llvm") {
  sources = [
    "lib/Analysis/AliasAnalysis.cpp",
    "lib/Analysis/AliasSetTracker.cpp",
    "lib/Analysis/BasicAliasAnalysis.cpp",
    "lib/Analysis/BranchProbabilityInfo.cpp",
    "lib/Analysis/CaptureTracking.cpp",
    "lib/Analysis/ConstantFolding.cpp",
    "lib/Analysis/DIBuilder.cpp",
    "lib/Analysis/DebugInfo.cpp",
    "lib/Analysis/IVUsers.cpp",
    "lib/Analysis/InstructionSimplify.cpp",
    "lib/Analysis/Loads.cpp",
    "lib/Analysis/LoopInfo.cpp",
    "lib/Analysis/LoopPass.cpp",
    "lib/Analysis/MemoryBuiltins.cpp",
    "lib/Analysis/MemoryDependenceAnalysis.cpp",
    "lib/Analysis/NoAliasAnalysis.cpp",
    "lib/Analysis/PHITransAddr.cpp",
    "lib/Analysis/PathNumbering.cpp",
    "lib/Analysis/ProfileInfo.cpp",
    "lib/Analysis/ScalarEvolution.cpp",
    "lib/Analysis/ScalarEvolutionExpander.cpp",
    "lib/Analysis/ScalarEvolutionNormalization.cpp",
    "lib/Analysis/TypeBasedAliasAnalysis.cpp",
    "lib/Analysis/ValueTracking.cpp",
    "lib/CodeGen/AggressiveAntiDepBreaker.cpp",
    "lib/CodeGen/AllocationOrder.cpp",
    "lib/CodeGen/Analysis.cpp",
    "lib/CodeGen/BranchFolding.cpp",
    "lib/CodeGen/CalcSpillWeights.cpp",
    "lib/CodeGen/CallingConvLower.cpp",
    "lib/CodeGen/CodeGen.cpp",
    "lib/CodeGen/CodePlacementOpt.cpp",
    "lib/CodeGen/CriticalAntiDepBreaker.cpp",
    "lib/CodeGen/DeadMachineInstructionElim.cpp",
    "lib/CodeGen/DwarfEHPrepare.cpp",
    "lib/CodeGen/ELFCodeEmitter.cpp",
    "lib/CodeGen/ELFWriter.cpp",
    "lib/CodeGen/EdgeBundles.cpp",
    "lib/CodeGen/ExecutionDepsFix.cpp",
    "lib/CodeGen/ExpandISelPseudos.cpp",
    "lib/CodeGen/ExpandPostRAPseudos.cpp",
    "lib/CodeGen/GCMetadata.cpp",
    "lib/CodeGen/GCStrategy.cpp",
    "lib/CodeGen/IfConversion.cpp",
    "lib/CodeGen/InlineSpiller.cpp",
    "lib/CodeGen/InterferenceCache.cpp",
    "lib/CodeGen/IntrinsicLowering.cpp",
    "lib/CodeGen/LLVMTargetMachine.cpp",
    "lib/CodeGen/LatencyPriorityQueue.cpp",
    "lib/CodeGen/LexicalScopes.cpp",
    "lib/CodeGen/LiveDebugVariables.cpp",
    "lib/CodeGen/LiveInterval.cpp",
    "lib/CodeGen/LiveIntervalAnalysis.cpp",
    "lib/CodeGen/LiveIntervalUnion.cpp",
    "lib/CodeGen/LiveRangeCalc.cpp",
    "lib/CodeGen/LiveRangeEdit.cpp",
    "lib/CodeGen/LiveStackAnalysis.cpp",
    "lib/CodeGen/LiveVariables.cpp",
    "lib/CodeGen/LocalStackSlotAllocation.cpp",
    "lib/CodeGen/MachineBasicBlock.cpp",
    "lib/CodeGen/MachineBlockFrequencyInfo.cpp",
    "lib/CodeGen/MachineBranchProbabilityInfo.cpp",
    "lib/CodeGen/MachineCSE.cpp",
    "lib/CodeGen/MachineDominators.cpp",
    "lib/CodeGen/MachineFunction.cpp",
    "lib/CodeGen/MachineFunctionAnalysis.cpp",
    "lib/CodeGen/MachineFunctionPass.cpp",
    "lib/CodeGen/MachineFunctionPrinterPass.cpp",
    "lib/CodeGen/MachineInstr.cpp",
    "lib/CodeGen/MachineLICM.cpp",
    "lib/CodeGen/MachineLoopInfo.cpp",
    "lib/CodeGen/MachineLoopRanges.cpp",
    "lib/CodeGen/MachineModuleInfo.cpp",
    "lib/CodeGen/MachineModuleInfoImpls.cpp",
    "lib/CodeGen/MachinePassRegistry.cpp",
    "lib/CodeGen/MachineRegisterInfo.cpp",
    "lib/CodeGen/MachineSSAUpdater.cpp",
    "lib/CodeGen/MachineSink.cpp",
    "lib/CodeGen/MachineVerifier.cpp",
    "lib/CodeGen/ObjectCodeEmitter.cpp",
    "lib/CodeGen/OcamlGC.cpp",
    "lib/CodeGen/OptimizePHIs.cpp",
    "lib/CodeGen/PHIElimination.cpp",
    "lib/CodeGen/PHIEliminationUtils.cpp",
    "lib/CodeGen/Passes.cpp",
    "lib/CodeGen/PeepholeOptimizer.cpp",
    "lib/CodeGen/PostRASchedulerList.cpp",
    "lib/CodeGen/ProcessImplicitDefs.cpp",
    "lib/CodeGen/PrologEpilogInserter.cpp",
    "lib/CodeGen/PseudoSourceValue.cpp",
    "lib/CodeGen/RegAllocBasic.cpp",
    "lib/CodeGen/RegAllocFast.cpp",
    "lib/CodeGen/RegAllocGreedy.cpp",
    "lib/CodeGen/RegAllocLinearScan.cpp",
    "lib/CodeGen/RegAllocPBQP.cpp",
    "lib/CodeGen/RegisterClassInfo.cpp",
    "lib/CodeGen/RegisterCoalescer.cpp",
    "lib/CodeGen/RegisterScavenging.cpp",
    "lib/CodeGen/RenderMachineFunction.cpp",
    "lib/CodeGen/ScheduleDAG.cpp",
    "lib/CodeGen/ScheduleDAGEmit.cpp",
    "lib/CodeGen/ScheduleDAGInstrs.cpp",
    "lib/CodeGen/ScheduleDAGPrinter.cpp",
    "lib/CodeGen/ScoreboardHazardRecognizer.cpp",
    "lib/CodeGen/SelectionDAG/DAGCombiner.cpp",
    "lib/CodeGen/SelectionDAG/FastISel.cpp",
    "lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp",
    "lib/CodeGen/SelectionDAG/InstrEmitter.cpp",
    "lib/CodeGen/SelectionDAG/LegalizeDAG.cpp",
    "lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp",
    "lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp",
    "lib/CodeGen/SelectionDAG/LegalizeTypes.cpp",
    "lib/CodeGen/SelectionDAG/LegalizeTypesGeneric.cpp",
    "lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp",
    "lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp",
    "lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp",
    "lib/CodeGen/SelectionDAG/ScheduleDAGList.cpp",
    "lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp",
    "lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp",
    "lib/CodeGen/SelectionDAG/SelectionDAG.cpp",
    "lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp",
    "lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp",
    "lib/CodeGen/SelectionDAG/SelectionDAGPrinter.cpp",
    "lib/CodeGen/SelectionDAG/TargetLowering.cpp",
    "lib/CodeGen/SelectionDAG/TargetSelectionDAGInfo.cpp",
    "lib/CodeGen/ShadowStackGC.cpp",
    "lib/CodeGen/ShrinkWrapping.cpp",
    "lib/CodeGen/SjLjEHPrepare.cpp",
    "lib/CodeGen/SlotIndexes.cpp",
    "lib/CodeGen/SpillPlacement.cpp",
    "lib/CodeGen/Spiller.cpp",
    "lib/CodeGen/SplitKit.cpp",
    "lib/CodeGen/Splitter.cpp",
    "lib/CodeGen/StackProtector.cpp",
    "lib/CodeGen/StackSlotColoring.cpp",
    "lib/CodeGen/StrongPHIElimination.cpp",
    "lib/CodeGen/TailDuplication.cpp",
    "lib/CodeGen/TargetInstrInfoImpl.cpp",
    "lib/CodeGen/TargetLoweringObjectFileImpl.cpp",
    "lib/CodeGen/TwoAddressInstructionPass.cpp",
    "lib/CodeGen/UnreachableBlockElim.cpp",
    "lib/CodeGen/VirtRegMap.cpp",
    "lib/CodeGen/VirtRegRewriter.cpp",
    "lib/ExecutionEngine/ExecutionEngine.cpp",
    "lib/ExecutionEngine/JIT/Intercept.cpp",
    "lib/ExecutionEngine/JIT/JIT.cpp",
    "lib/ExecutionEngine/JIT/JITDebugRegisterer.cpp",
    "lib/ExecutionEngine/JIT/JITDwarfEmitter.cpp",
    "lib/ExecutionEngine/JIT/JITEmitter.cpp",
    "lib/ExecutionEngine/JIT/JITMemoryManager.cpp",
    "lib/ExecutionEngine/JIT/OProfileJITEventListener.cpp",
    "lib/ExecutionEngine/TargetSelect.cpp",
    "lib/MC/ELFObjectWriter.cpp",
    "lib/MC/MCAsmBackend.cpp",
    "lib/MC/MCAsmInfo.cpp",
    "lib/MC/MCAsmInfoCOFF.cpp",
    "lib/MC/MCAsmInfoDarwin.cpp",
    "lib/MC/MCAsmStreamer.cpp",
    "lib/MC/MCAssembler.cpp",
    "lib/MC/MCAtom.cpp",
    "lib/MC/MCCodeEmitter.cpp",
    "lib/MC/MCCodeGenInfo.cpp",
    "lib/MC/MCContext.cpp",
    "lib/MC/MCDisassembler.cpp",
    "lib/MC/MCDwarf.cpp",
    "lib/MC/MCELF.cpp",
    "lib/MC/MCELFObjectTargetWriter.cpp",
    "lib/MC/MCELFStreamer.cpp",
    "lib/MC/MCExpr.cpp",
    "lib/MC/MCInst.cpp",
    "lib/MC/MCInstPrinter.cpp",
    "lib/MC/MCInstrAnalysis.cpp",
    "lib/MC/MCLabel.cpp",
    "lib/MC/MCLoggingStreamer.cpp",
    "lib/MC/MCMachOStreamer.cpp",
    "lib/MC/MCMachObjectTargetWriter.cpp",
    "lib/MC/MCModule.cpp",
    "lib/MC/MCNullStreamer.cpp",
    "lib/MC/MCObjectFileInfo.cpp",
    "lib/MC/MCObjectStreamer.cpp",
    "lib/MC/MCObjectWriter.cpp",
    "lib/MC/MCPureStreamer.cpp",
    "lib/MC/MCSection.cpp",
    "lib/MC/MCSectionCOFF.cpp",
    "lib/MC/MCSectionELF.cpp",
    "lib/MC/MCSectionMachO.cpp",
    "lib/MC/MCStreamer.cpp",
    "lib/MC/MCSubtargetInfo.cpp",
    "lib/MC/MCSymbol.cpp",
    "lib/MC/MCTargetAsmLexer.cpp",
    "lib/MC/MCValue.cpp",
    "lib/MC/MCWin64EH.cpp",
    "lib/MC/MachObjectWriter.cpp",
    "lib/MC/SubtargetFeature.cpp",
    "lib/MC/WinCOFFObjectWriter.cpp",
    "lib/MC/WinCOFFStreamer.cpp",
    "lib/Support/APFloat.cpp",
    "lib/Support/APInt.cpp",
    "lib/Support/APSInt.cpp",
    "lib/Support/Allocator.cpp",
    "lib/Support/Atomic.cpp",
    "lib/Support/BlockFrequency.cpp",
    "lib/Support/BranchProbability.cpp",
    "lib/Support/CommandLine.cpp",
    "lib/Support/ConstantRange.cpp",
    "lib/Support/CrashRecoveryContext.cpp",
    "lib/Support/DAGDeltaAlgorithm.cpp",
    "lib/Support/DataExtractor.cpp",
    "lib/Support/Debug.cpp",
    "lib/Support/DeltaAlgorithm.cpp",
    "lib/Support/Disassembler.cpp",
    "lib/Support/Dwarf.cpp",
    "lib/Support/DynamicLibrary.cpp",
    "lib/Support/Errno.cpp",
    "lib/Support/ErrorHandling.cpp",
    "lib/Support/FileUtilities.cpp",
    "lib/Support/FoldingSet.cpp",
    "lib/Support/FormattedStream.cpp",
    "lib/Support/GraphWriter.cpp",
    "lib/Support/Host.cpp",
    "lib/Support/IncludeFile.cpp",
    "lib/Support/IntEqClasses.cpp",
    "lib/Support/IntervalMap.cpp",
    "lib/Support/IsInf.cpp",
    "lib/Support/IsNAN.cpp",
    "lib/Support/ManagedStatic.cpp",
    "lib/Support/Memory.cpp",
    "lib/Support/MemoryBuffer.cpp",
    "lib/Support/MemoryObject.cpp",
    "lib/Support/Mutex.cpp",
    "lib/Support/Path.cpp",
    "lib/Support/PathV2.cpp",
    "lib/Support/PluginLoader.cpp",
    "lib/Support/PrettyStackTrace.cpp",
    "lib/Support/Process.cpp",
    "lib/Support/Program.cpp",
    "lib/Support/RWMutex.cpp",
    "lib/Support/SearchForAddressOfSpecialSymbol.cpp",
    "lib/Support/Signals.cpp",
    "lib/Support/SmallPtrSet.cpp",
    "lib/Support/SmallVector.cpp",
    "lib/Support/SourceMgr.cpp",
    "lib/Support/Statistic.cpp",
    "lib/Support/StringExtras.cpp",
    "lib/Support/StringMap.cpp",
    "lib/Support/StringPool.cpp",
    "lib/Support/StringRef.cpp",
    "lib/Support/SystemUtils.cpp",
    "lib/Support/TargetRegistry.cpp",
    "lib/Support/ThreadLocal.cpp",
    "lib/Support/Threading.cpp",
    "lib/Support/TimeValue.cpp",
    "lib/Support/Timer.cpp",
    "lib/Support/ToolOutputFile.cpp",
    "lib/Support/Triple.cpp",
    "lib/Support/Twine.cpp",
    "lib/Support/Valgrind.cpp",
    "lib/Support/circular_raw_ostream.cpp",
    "lib/Support/raw_os_ostream.cpp",
    "lib/Support/raw_ostream.cpp",
    "lib/Support/system_error.cpp",
    "lib/Target/Mangler.cpp",
    "lib/Target/Target.cpp",
    "lib/Target/TargetData.cpp",
    "lib/Target/TargetELFWriterInfo.cpp",
    "lib/Target/TargetFrameLowering.cpp",
    "lib/Target/TargetInstrInfo.cpp",
    "lib/Target/TargetLibraryInfo.cpp",
    "lib/Target/TargetLoweringObjectFile.cpp",
    "lib/Target/TargetMachine.cpp",
    "lib/Target/TargetRegisterInfo.cpp",
    "lib/Target/TargetSubtargetInfo.cpp",
    "lib/Target/X86/InstPrinter/X86ATTInstPrinter.cpp",
    "lib/Target/X86/InstPrinter/X86InstComments.cpp",
    "lib/Target/X86/InstPrinter/X86IntelInstPrinter.cpp",
    "lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp",
    "lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp",
    "lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp",
    "lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp",
    "lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp",
    "lib/Target/X86/TargetInfo/X86TargetInfo.cpp",
    "lib/Target/X86/Utils/X86ShuffleDecode.cpp",
    "lib/Target/X86/X86CodeEmitter.cpp",
    "lib/Target/X86/X86ELFWriterInfo.cpp",
    "lib/Target/X86/X86FastISel.cpp",
    "lib/Target/X86/X86FloatingPoint.cpp",
    "lib/Target/X86/X86FrameLowering.cpp",
    "lib/Target/X86/X86ISelDAGToDAG.cpp",
    "lib/Target/X86/X86ISelLowering.cpp",
    "lib/Target/X86/X86InstrInfo.cpp",
    "lib/Target/X86/X86JITInfo.cpp",
    "lib/Target/X86/X86RegisterInfo.cpp",
    "lib/Target/X86/X86SelectionDAGInfo.cpp",
    "lib/Target/X86/X86Subtarget.cpp",
    "lib/Target/X86/X86TargetMachine.cpp",
    "lib/Target/X86/X86TargetObjectFile.cpp",
    "lib/Target/X86/X86VZeroUpper.cpp",
    "lib/Transforms/InstCombine/InstCombineAddSub.cpp",
    "lib/Transforms/InstCombine/InstCombineAndOrXor.cpp",
    "lib/Transforms/InstCombine/InstCombineCalls.cpp",
    "lib/Transforms/InstCombine/InstCombineCasts.cpp",
    "lib/Transforms/InstCombine/InstCombineCompares.cpp",
    "lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp",
    "lib/Transforms/InstCombine/InstCombineMulDivRem.cpp",
    "lib/Transforms/InstCombine/InstCombinePHI.cpp",
    "lib/Transforms/InstCombine/InstCombineSelect.cpp",
    "lib/Transforms/InstCombine/InstCombineShifts.cpp",
    "lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp",
    "lib/Transforms/InstCombine/InstCombineVectorOps.cpp",
    "lib/Transforms/InstCombine/InstructionCombining.cpp",
    "lib/Transforms/Scalar/ADCE.cpp",
    "lib/Transforms/Scalar/CodeGenPrepare.cpp",
    "lib/Transforms/Scalar/DeadStoreElimination.cpp",
    "lib/Transforms/Scalar/GVN.cpp",
    "lib/Transforms/Scalar/LICM.cpp",
    "lib/Transforms/Scalar/LoopStrengthReduce.cpp",
    "lib/Transforms/Scalar/Reassociate.cpp",
    "lib/Transforms/Scalar/Reg2Mem.cpp",
    "lib/Transforms/Scalar/SCCP.cpp",
    "lib/Transforms/Scalar/ScalarReplAggregates.cpp",
    "lib/Transforms/Scalar/SimplifyCFGPass.cpp",
    "lib/Transforms/Utils/AddrModeMatcher.cpp",
    "lib/Transforms/Utils/BasicBlockUtils.cpp",
    "lib/Transforms/Utils/BreakCriticalEdges.cpp",
    "lib/Transforms/Utils/BuildLibCalls.cpp",
    "lib/Transforms/Utils/DemoteRegToStack.cpp",
    "lib/Transforms/Utils/InstructionNamer.cpp",
    "lib/Transforms/Utils/LCSSA.cpp",
    "lib/Transforms/Utils/Local.cpp",
    "lib/Transforms/Utils/LoopSimplify.cpp",
    "lib/Transforms/Utils/LowerInvoke.cpp",
    "lib/Transforms/Utils/LowerSwitch.cpp",
    "lib/Transforms/Utils/Mem2Reg.cpp",
    "lib/Transforms/Utils/PromoteMemoryToRegister.cpp",
    "lib/Transforms/Utils/SSAUpdater.cpp",
    "lib/Transforms/Utils/SimplifyCFG.cpp",
    "lib/Transforms/Utils/UnifyFunctionExitNodes.cpp",
    "lib/VMCore/AsmWriter.cpp",
    "lib/VMCore/Attributes.cpp",
    "lib/VMCore/AutoUpgrade.cpp",
    "lib/VMCore/BasicBlock.cpp",
    "lib/VMCore/ConstantFold.cpp",
    "lib/VMCore/Constants.cpp",
    "lib/VMCore/Core.cpp",
    "lib/VMCore/DebugInfoProbe.cpp",
    "lib/VMCore/DebugLoc.cpp",
    "lib/VMCore/Dominators.cpp",
    "lib/VMCore/Function.cpp",
    "lib/VMCore/GCOV.cpp",
    "lib/VMCore/GVMaterializer.cpp",
    "lib/VMCore/Globals.cpp",
    "lib/VMCore/IRBuilder.cpp",
    "lib/VMCore/InlineAsm.cpp",
    "lib/VMCore/Instruction.cpp",
    "lib/VMCore/Instructions.cpp",
    "lib/VMCore/IntrinsicInst.cpp",
    "lib/VMCore/LLVMContext.cpp",
    "lib/VMCore/LLVMContextImpl.cpp",
    "lib/VMCore/LeakDetector.cpp",
    "lib/VMCore/Metadata.cpp",
    "lib/VMCore/Module.cpp",
    "lib/VMCore/Pass.cpp",
    "lib/VMCore/PassManager.cpp",
    "lib/VMCore/PassRegistry.cpp",
    "lib/VMCore/PrintModulePass.cpp",
    "lib/VMCore/Type.cpp",
    "lib/VMCore/Use.cpp",
    "lib/VMCore/User.cpp",
    "lib/VMCore/Value.cpp",
    "lib/VMCore/ValueSymbolTable.cpp",
    "lib/VMCore/ValueTypes.cpp",
    "lib/VMCore/Verifier.cpp",
  ]

  if (is_win) {
    configs -= [ "//build/config/win:unicode" ]
  }
  configs += [ ":swiftshader_llvm_private_config" ]

  include_dirs = [ "lib/Target/X86" ]

  # The "include" directory includes common files and the Windows specific config file.
  # The "include-<platform>" directory includes the <platform> specific config file.
  # Non-Windows platforms must add their platform specific include directory before the "include" directory
  # is added, otherwise, the Windows specific config file will be used and compilation will fail.
  if (is_linux) {
    include_dirs += [ "include-linux" ]
  } else if (is_mac) {
    include_dirs += [ "include-osx" ]
  }

  include_dirs += [ "include" ]
}
