File: specialize_node_d.py

package info (click to toggle)
nodejs 4.8.2~dfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 62,476 kB
  • ctags: 111,183
  • sloc: cpp: 661,544; ansic: 31,406; python: 23,073; makefile: 1,418; sh: 1,384; perl: 255; lisp: 222; ruby: 76; xml: 50
file content (32 lines) | stat: -rwxr-xr-x 714 bytes parent folder | download | duplicates (5)
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
#!/usr/bin/env python

#
# specialize_node_d.py output_file src/node.d flavor arch
#
# Specialize node.d for given flavor (`freebsd`) and arch (`x64` or `ia32`)
#

import re
import subprocess
import sys
import errno

if len(sys.argv) != 5:
  print "usage: specialize_node_d.py outfile src/node.d flavor arch"
  sys.exit(2);

outfile = file(sys.argv[1], 'w');
infile = file(sys.argv[2], 'r');
flavor = sys.argv[3];
arch = sys.argv[4];

model = r'curpsinfo->pr_dmodel == PR_MODEL_ILP32'

for line in infile:
  if flavor == 'freebsd':
    line = re.sub('procfs.d', 'psinfo.d', line);
    if arch == 'x64':
      line = re.sub(model, '0', line);
    else:
      line = re.sub(model, '1', line);
  outfile.write(line);