]> git.pld-linux.org Git - packages/nodejs.git/blob - nodejs.spec
- package node_addon waf script
[packages/nodejs.git] / nodejs.spec
1
2 Summary:        Asynchronous JavaScript Engine
3 Name:           nodejs
4 Version:        0.1.100
5 Release:        0
6 License:        BSD
7 Group:          Libraries
8 URL:            http://nodejs.org/
9 Source0:        http://nodejs.org/dist/node-v%{version}.tar.gz
10 # Source0-md5:  f8567739b71d05b8edcae1916d7e80cb
11 BuildRequires:  c-ares-devel >= 1.7.1-0.20100523.0
12 BuildRequires:  gcc >= 5:4.0
13 BuildRequires:  libeio-devel
14 BuildRequires:  libev-devel >= 3.90
15 BuildRequires:  libstdc++-devel
16 BuildRequires:  python
17 BuildRequires:  rpm >= 4.4.9-56
18 BuildRequires:  udns-devel
19 BuildRequires:  v8-devel >= 2.2.21
20 BuildRequires:  waf
21 ExclusiveArch:  %{ix86} %{x8664} arm
22 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
23
24 %description
25 Node's goal is to provide an easy way to build scalable network
26 programs. In the above example, the two second delay does not prevent
27 the server from handling new requests. Node tells the operating system
28 (through epoll, kqueue, /dev/poll, or select) that it should be
29 notified when the 2 seconds are up or if a new connection is made --
30 then it goes to sleep. If someone new connects, then it executes the
31 callback, if the timeout expires, it executes the inner callback. Each
32 connection is only a small heap allocation.
33
34 %package devel
35 Summary:        Development headers for nodejs
36 Group:          Development/Libraries
37 Requires:       waf
38
39 %description devel
40 Development headers for nodejs.
41
42 %prep
43 %setup -q -n node-v%{version}
44
45 %build
46 # build library
47 CFLAGS="%{rpmcflags}"
48 CXXFLAGS="%{rpmcxxflags}"
49 LDFLAGS="%{rpmcflags}"
50 %if "%{pld_release}" == "ac"
51 CC=%{__cc}4
52 CXX=%{__cxx}4
53 %else
54 CC=%{__cc}
55 CXX=%{__cxx}
56 %endif
57 PYTHONPATH=tools
58 export CFLAGS LDFLAGS CXXFLAGS CC CXX PYTHONPATH
59
60 waf configure \
61         --shared-v8 \
62         --shared-cares \
63         --shared-libev \
64         --prefix=%{_prefix}
65
66 waf build
67
68 %install
69 rm -rf $RPM_BUILD_ROOT
70 install -d $RPM_BUILD_ROOT{%{_bindir},%{_includedir},%{_libdir}/node/libraries,%{_libdir}/waf/wafadmin/Tools}
71
72 PYTHONPATH=tools
73 export PYTHONPATH
74
75 waf install \
76         --destdir=$RPM_BUILD_ROOT
77
78 cp -a lib/*.js $RPM_BUILD_ROOT%{_libdir}/node/libraries
79
80 cp tools/wafadmin/Tools/node_addon.py $RPM_BUILD_ROOT%{_libdir}/waf/wafadmin/Tools/
81
82 rm $RPM_BUILD_ROOT%{_bindir}/node-waf
83 ln -s %{_bindir}/waf $RPM_BUILD_ROOT%{_bindir}/node-waf
84
85 %clean
86 rm -rf $RPM_BUILD_ROOT
87
88 %files
89 %defattr(644,root,root,755)
90 %doc AUTHORS ChangeLog LICENSE
91 %attr(755,root,root) %{_bindir}/node
92 %attr(755,root,root) %{_bindir}/node-repl
93 %dir %{_libdir}/node
94 %dir %{_libdir}/node/libraries
95 %{_libdir}/node/libraries/*.js
96 %{_mandir}/man1/node.1*
97
98 %files devel
99 %defattr(644,root,root,755)
100 %dir %{_includedir}/node
101 %{_includedir}/node/*.h
102 %attr(755,root,root) %{_bindir}/node-waf
103 %{_libdir}/waf/wafadmin/Tools/node_addon.py
This page took 0.037387 seconds and 4 git commands to generate.