forked from servo/saltfs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
arm-dependencies.sls
111 lines (100 loc) · 3.16 KB
/
arm-dependencies.sls
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
101
102
103
104
105
106
107
108
109
110
111
{% from 'common/map.jinja' import common %}
arm-dependencies:
pkg.installed:
- pkgs:
- g++-aarch64-linux-gnu
- g++-arm-linux-gnueabihf
{% set rootfs_repo = 'https://servo-rust.s3.amazonaws.com/ARM' %}
{% set targets = [{
'name': 'arm-linux-gnueabihf',
'symlink_name': 'arm-unknown-linux-gnueabihf',
'version': 'v1',
'local_name': 'armhf-trusty-libs.tgz',
'hash': 'd9a31ed488e4f848efcd07f71aa167fc73252da2a2c3b53ba8216100e2b4302b5ccd273b27c434ad189650652a1877607d328ff6b8e1edb5aa68a8927c617b49',
},
{
'name': 'aarch64-linux-gnu',
'symlink_name': 'aarch64-unknown-linux-gnu',
'version': 'v1',
'local_name': 'arm64-trusty-libs.tgz',
'hash': '6c86097188b70940835b2fc936fe70f01890fae45ba4ef79dcccc6a552ad319dcba23e21d6c849fd9d396e0c2f4476a21c93f9b3d4abb4f34d69f22d18017b1b',
}] %}
{% set binaries = [
'elfedit',
'gcov',
'nm',
'addr2line',
'g++',
'objcopy',
'ar',
'objdump',
'as',
'gcc',
'ranlib',
'c++filt',
'gprof',
'readelf',
'cpp',
'ld',
'size',
'ld.bfd',
'strings',
'strip'
] %}
{% for target in targets %}
libs-{{ target.name }}:
archive.extracted:
- name: {{ common.servo_home }}/rootfs-trusty-{{ target.name }}/{{ target.version }} # Directory to extract into
- source: {{ rootfs_repo }}/{{ target.version }}/{{ target.local_name }}
- source_hash: sha512={{ target.hash }}
- archive_format: tar
- archive_user: servo # 2015.8 moves these to the standard user and group parameters
{% for binary in binaries %}
{{ common.servo_home }}/bin/{{ target.symlink_name }}-{{ binary }}:
file.symlink:
- target: /usr/bin/{{ target.name }}-{{ binary }}
- makedirs: True
- require:
- archive: libs-{{ target.name }}
{% endfor %}
{{ common.servo_home }}/rootfs-trusty-{{ target.name }}/{{ target.version }}:
file.directory:
- user: servo
- group: servo
- dir_mode: 755
- file_mode: 644
- makedirs: True
- require:
- archive: libs-{{ target.name }}
{{ common.servo_home }}/rootfs-trusty-{{ target.name }}:
file.directory:
- user: servo
- group: servo
- dir_mode: 755
- file_mode: 644
- makedirs: True
- clean: True
- require:
- file: {{ common.servo_home }}/rootfs-trusty-{{ target.name }}/{{ target.version }}
{% for root in ['usr/include', 'usr/lib', 'lib'] %}
/{{ root }}/{{ target.name }}:
file.symlink:
- target: {{ common.servo_home }}/rootfs-trusty-{{ target.name }}/{{ target.version }}/{{ root }}/{{ target.name }}
- require:
- archive: libs-{{ target.name }}
{% endfor %}
{% endfor %}
{{ common.servo_home }}/bin:
file.directory:
- user: servo
- group: servo
- dir_mode: 755
- file_mode: 644
- makedirs: True
- clean: True
- require:
{% for target in targets %}
{% for binary in binaries %}
- file: {{ common.servo_home }}/bin/{{ target.symlink_name }}-{{ binary }}
{% endfor %}
{% endfor %}