summaryrefslogtreecommitdiffstats
path: root/third_party/libpng/libpng.scons
blob: 8716157db78480e789fde7c6d0a1240a031f6085 (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
87
88
89
90
91
92
93
94
95
96
97
98
99
100
# Copyright (c) 2006-2008 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.


__doc__ = """
Configuration for building libpng.lib / libpng.a.
"""

Import('env')

if env.WantSystemLib('libpng'):
  Return()

env = env.Clone()

env.ApplySConscript([
    '$ZLIB_DIR/using_zlib.scons',
])

env.Prepend(
    CPPPATH = [
        '$CHROME_SRC_DIR',
    ],
)

if env.Bit('windows'):
  env.Append(
      CCFLAGS = [
          '/TP',
          '/wd4800',
      ],
  )

env.Append(
    CPPDEFINES = [
        'PNG_USER_CONFIG',
        'CHROME_PNG_WRITE_SUPPORT',
    ],
)

input_files = ChromeFileList([
    'png.c',
    'png.h',
    'pngconf.h',
    'pngerror.c',
    'pnggccrd.c',
    'pngget.c',
    'pngmem.c',
    'pngpread.c',
    'pngread.c',
    'pngrio.c',
    'pngrtran.c',
    'pngrutil.c',
    'pngset.c',
    'pngtrans.c',
    'pngusr.h',
    'pngvcrd.c',
    'pngwio.c',
    'pngwrite.c',
    'pngwtran.c',
    'pngwutil.c',
])

env.ChromeStaticLibrary('libpng', input_files)

p = env.ChromeMSVSProject('libpng.vcproj',
                          guid='{C564F145-9172-42C3-BFCB-6014CA97DBCD}',
                          files=input_files,
                          relative_path_prefix='./',
                          tools = [
                              'VCLibrarianTool',
                              'VCCLCompilerTool',
                          ])

p.AddConfig('Debug|Win32',
            ConfigurationType = '4',
            InheritedPropertySheets = [
                '$(SolutionDir)../build/common.vsprops',
                '$(SolutionDir)../build/debug.vsprops',
                '$(SolutionDir)../third_party/zlib/using_zlib.vsprops',
                '$(SolutionDir)../build/external_code.vsprops',
                '$(SolutionDir)../third_party/libpng/using_libpng.vsprops',
            ])

p.AddConfig('Release|Win32',
            ConfigurationType = '4',
            InheritedPropertySheets = [
                '$(SolutionDir)../build/common.vsprops',
                '$(SolutionDir)../build/release.vsprops',
                '$(SolutionDir)../third_party/zlib/using_zlib.vsprops',
                '$(SolutionDir)../build/external_code.vsprops',
                '$(SolutionDir)../third_party/libpng/using_libpng.vsprops',
            ])

env.AlwaysBuild(p)

i = env.Command('$CHROME_SRC_DIR/third_party/libpng/libpng.vcproj', p,
                Copy('$TARGET', '$SOURCE'))
Alias('msvs', i)