blob: 2ed0478496818a5d5686fd18dc4f8f649b036ac0 [file] [log] [blame]
brians343bc112013-02-10 01:53:46 +00001# This file has targets for various external libraries.
2# download_externals.sh makes sure that all of them have been downloaded.
3{
4 'variables': {
5 'externals': '<(AOS)/externals',
6 'externals_abs': '<!(readlink -f ../externals)',
7
8# These versions have to be kept in sync with the ones in download_externals.sh.
9 'eigen_version': '3.0.5',
10 'gtest_version': '1.6.0-p1',
11 'onejar_version': '0.97',
12 'ctemplate_version': '2.2',
13 },
14 'targets': [
15 {
16# does nothing when OS!="crio"
17 'target_name': 'WPILib',
18 'type': 'none',
19 'conditions': [['OS=="crio"', {
20 'direct_dependent_settings': {
21 'cflags': [
22 '-isystem', '<(aos_abs)/externals/WPILib',
23 ],
24 'link_settings': {
25 'libraries': [
26 '<(aos_abs)/externals/WPILib/WPILib.a',
27 ],
28 },
29 },
30 }]],
31 },
32 {
33 'target_name': 'onejar',
34 'type': 'none',
35 'direct_dependent_settings': {
36 'variables': {
37 'onejar_jar': '<(externals_abs)/one-jar-boot-<(onejar_version).jar',
38 },
39 },
40 },
41 {
42 'target_name': 'javacv',
43 'type': 'none',
44 'variables': {
45 'javacv_dir': '<(externals_abs)/javacv-bin',
46 },
47 'direct_dependent_settings': {
48 'include_dirs': [
49 '/usr/lib/jvm/default-java/include',
50 '/usr/lib/jvm/default-java/include/linux',
51 ],
52 'variables': {
53 'classpath': [
54 '<(javacv_dir)/javacv.jar',
55 '<(javacv_dir)/javacpp.jar',
56 '<(javacv_dir)/javacv-linux-x86.jar',
57 ],
58 },
59 },
60 },
61 {
62# TODO(brians) convert this to downloading + building
63 'target_name': 'libevent',
64 'type': 'none',
65 'link_settings': {
66 'libraries': ['-levent'],
67 },
68 },
69 {
70 'target_name': 'eigen',
71 'type': 'none',
72 'direct_dependent_settings': {
73 'include_dirs': ['<(externals)/eigen-<(eigen_version)'],
74 },
75 },
76 {
77 'target_name': 'libjpeg',
78 'type': 'none',
79 'direct_dependent_settings': {
80 'libraries': ['<(externals_abs)/libjpeg/lib/libjpeg.a'],
81 },
82 },
83 {
84 'target_name': 'gtest',
85 'type': 'static_library',
86 'sources': [
87 '<(externals)/gtest-<(gtest_version)/fused-src/gtest/gtest-all.cc',
88 ],
89 'conditions': [['OS=="crio"', {
90 'defines': [
91 'GTEST_HAS_TR1_TUPLE=0',
92 'GTEST_HAS_STREAM_REDIRECTION=0',
93 'GTEST_HAS_POSIX_RE=0', # it only has a broken header...
94 ],
95 'direct_dependent_settings': {
96 'defines': [
97 'GTEST_HAS_TR1_TUPLE=0',
98 'GTEST_HAS_STREAM_REDIRECTION=0',
99 'GTEST_HAS_POSIX_RE=0',
100 ],
101 },
102 }, {
103 'sources': [
104 '<(externals)/gtest-<(gtest_version)/fused-src/gtest/gtest_main.cc',
105 ],
106 }]],
107 'include_dirs': [
108 '<(externals)/gtest-<(gtest_version)',
109 '<(externals)/gtest-<(gtest_version)/include'
110 ],
111 'cflags!': ['-Werror'],
112 'direct_dependent_settings': {
113 'include_dirs': ['<(externals)/gtest-<(gtest_version)/include'],
114 'target_conditions': [
115 ['_type=="executable"', {
116 'product_dir': '<(test_dir)',
117 },
118 ],
119 ],
120 },
121 },
122 {
123 'target_name': 'ctemplate',
124 'type': 'none',
125 'link_settings': {
126 'libraries': ['<(externals)/ctemplate-<(ctemplate_version)-prefix/lib/libctemplate.a'],
127 },
128 'direct_dependent_settings': {
129 'include_dirs': ['<(externals)/ctemplate-<(ctemplate_version)-prefix/include'],
130 },
131 },
132 ],
133}