summaryrefslogtreecommitdiffstats
path: root/RedfishPkg/Library/JsonLib/JsonLib.inf
blob: 48b094a78af88aab06f8ae26fee18c033f5579e5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
## @file
# Thirty party Jansson library for JSON operations.
#
# Copyright (c) 2019, Intel Corporation. All rights reserved.<BR>
# (C) Copyright 2020 Hewlett Packard Enterprise Development LP<BR>
#
#    SPDX-License-Identifier: BSD-2-Clause-Patent
#
##

[Defines]
  INF_VERSION                    = 0x0001001b
  BASE_NAME                      = JsonLib
  FILE_GUID                      = F5E36815-305A-4C5A-9D75-4F2149E45255
  MODULE_TYPE                    = DXE_DRIVER
  VERSION_STRING                 = 1.0
  LIBRARY_CLASS                  = JsonLib|DXE_DRIVER UEFI_APPLICATION UEFI_DRIVER

#
#  VALID_ARCHITECTURES           = IA32 X64 ARM AARCH64 RISCV64
#

[Sources]
  #
  # Below are the source code of third
  # party jansson library.
  #
  jansson/src/dump.c
  jansson/src/error.c
  jansson/src/hashtable.c
  jansson/src/hashtable_seed.c
  jansson/src/memory.c
  jansson/src/pack_unpack.c
  jansson/src/strbuffer.c
  jansson/src/strconv.c
  jansson/src/utf.c
  jansson/src/value.c
  jansson/src/version.c
  #
  # Below are the source of edk2 JsonLib.
  #
  JsonLib.c
  jansson_config.h
  jansson_private_config.h
  #
  # Below is the source code override to fix the build issue.
  # Add code in load.c to conditionally use stdin according
  # to HAVE_UNISTD_H macro. The PR is submitted to jansson
  # open source community.
  # https://github.com/akheron/jansson/pull/558
  #
  load.c

[Packages]
  MdePkg/MdePkg.dec
  MdeModulePkg/MdeModulePkg.dec
  RedfishPkg/RedfishPkg.dec

[LibraryClasses]
  BaseLib
  BaseMemoryLib
  Ucs2Utf8Lib
  RedfishCrtLib
  DebugLib
  MemoryAllocationLib
  PrintLib
  UefiRuntimeServicesTableLib
  UefiLib

[BuildOptions]
  #
  # Disables the following Visual Studio compiler warnings
  # so we do not break the build with /WX option:
  #   C4090: 'function' : different 'const' qualifiers
  #   C4244: conversion from type1 to type2, possible loss of data
  #   C4334: 32-bit shift implicitly converted to 64-bit
  #   C4204: nonstandard extension used: non-constant aggregate initializer
  #
  # Define macro HAVE_CONFIG_H to include jansson_private_config.h to build.
  # Undefined _WIN32, WIN64, _MSC_VER macros
  # On GCC, no error on the unused-function and unused-but-set-variable.
  #
  MSFT:*_*_X64_CC_FLAGS = /wd4204 /wd4244 /wd4090 /wd4334 /DHAVE_CONFIG_H=1 /U_WIN32 /UWIN64 /U_MSC_VER
  MSFT:*_*_IA32_CC_FLAGS = /wd4204 /wd4244 /wd4090 /DHAVE_CONFIG_H=1 /U_WIN32 /UWIN64 /U_MSC_VER
  GCC:*_*_*_CC_FLAGS = -Wno-unused-function -Wno-unused-but-set-variable