CMake: add WITH_LINKER_LLD option for unix platforms
[blender-staging.git] / source / blender / blenloader / CMakeLists.txt
1 # ***** BEGIN GPL LICENSE BLOCK *****
2 #
3 # This program is free software; you can redistribute it and/or
4 # modify it under the terms of the GNU General Public License
5 # as published by the Free Software Foundation; either version 2
6 # of the License, or (at your option) any later version.
7 #
8 # This program is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11 # GNU General Public License for more details.
12 #
13 # You should have received a copy of the GNU General Public License
14 # along with this program; if not, write to the Free Software Foundation,
15 # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
16 #
17 # The Original Code is Copyright (C) 2006, Blender Foundation
18 # All rights reserved.
19 # ***** END GPL LICENSE BLOCK *****
20
21 set(INC
22   .
23   ../blenfont
24   ../blenkernel
25   ../blenlib
26   ../blentranslation
27   ../depsgraph
28   ../draw
29   ../imbuf
30   ../makesdna
31   ../makesrna
32   ../nodes
33   ../render/extern/include
34   ../windowmanager
35   ../../../intern/guardedalloc
36
37   # for writefile.c: dna_type_offsets.h
38   ${CMAKE_BINARY_DIR}/source/blender/makesdna/intern
39
40 )
41
42 set(INC_SYS
43   ${ZLIB_INCLUDE_DIRS}
44 )
45
46 set(SRC
47   ${CMAKE_SOURCE_DIR}/release/datafiles/userdef/userdef_default_theme.c
48   intern/blend_validate.c
49   intern/readblenentry.c
50   intern/readfile.c
51   intern/undofile.c
52   intern/versioning_250.c
53   intern/versioning_260.c
54   intern/versioning_270.c
55   intern/versioning_280.c
56   intern/versioning_290.c
57   intern/versioning_cycles.c
58   intern/versioning_defaults.c
59   intern/versioning_dna.c
60   intern/versioning_legacy.c
61   intern/versioning_userdef.c
62   intern/writefile.c
63
64   BLO_blend_defs.h
65   BLO_blend_validate.h
66   BLO_readfile.h
67   BLO_undofile.h
68   BLO_writefile.h
69   intern/readfile.h
70 )
71
72 set(LIB
73   bf_blenkernel
74   bf_blenlib
75 )
76
77 if(WITH_BUILDINFO)
78   add_definitions(-DWITH_BUILDINFO)
79 endif()
80
81 if(WITH_INTERNATIONAL)
82   add_definitions(-DWITH_INTERNATIONAL)
83 endif()
84
85 if(WITH_CODEC_FFMPEG)
86   add_definitions(-DWITH_FFMPEG)
87 endif()
88
89 if(WITH_ALEMBIC)
90   list(APPEND INC
91     ../io/alembic
92   )
93   add_definitions(-DWITH_ALEMBIC)
94 endif()
95
96 blender_add_lib(bf_blenloader "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
97
98 # needed so writefile.c can use dna_type_offsets.h
99 add_dependencies(bf_blenloader bf_dna)