Hi Oleg,

Thank you for the information. There is an interesting discussion I had 
with Jakob and Jeremy (Debian packager) over at vb-users:
https://groups.google.com/forum/?fromgroups#!topic/v8-users/AO0TxxpFWC4 

I'm going to create an exact dependency on v8 and CentOS 5, to avoid any 
soname issues:

%global npmver 1.1.45
> %global pybasever 2.6
> %global pythonver 26
> Summary: Evented I/O for V8 JavaScript
> Name: nodejs
> Version: 0.8.4
> Release: 1%{dist}
> License: MIT
> Group: Development/Languages/Other
> URL: http://www.nodejs.org/
> Source: http://nodejs.org/dist/v0.8.4/node-v%{version}.tar.gz
> BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
> BuildRequires: curl, gcc-c++, procps, openssl-devel >= 1.0.1
> BuildRequires: python%{pythonver}, pkgconfig, v8-devel = 3.11.10
> BuildArch: noarch
> Requires: v8 = 3.11.10
> Provides: npm = %{npmver}


So far, I have only 2 pieces of puzzle to clear, and I 
would appreciate anyone's input on that:
1) Into build step, should I point exactly the includedir for OpenSSL and 
zlib, like I do with v8?
Right now I don't:

%build
> ./configure \
> --prefix=%{_prefix} \
> --shared-openssl \
> --shared-v8 --shared-v8-includes=%{_includedir} \
> --shared-zlib
> %{__make} %{?_smp_mflags}


2) Will Python 2.4.3 suffice to run any wafadmin script from devel package, 
or should I also force Python 2.6.8+ usage on each script by changing the 
env to python2.6? Remember, we are dealing with CentOS 5 where Python 2.4.3 
is the latest version. I created a Python 2.6.8 package for that purpose 
and I use it to compile v8 and nodejs without issues.

Thank you for your help.

On Friday, July 27, 2012 8:09:27 PM UTC-4, Oleg Efimov (Sannis) wrote:
>
> Here is spec file for openSUSE: 
> https://build.opensuse.org/package/files?package=nodejs&project=devel%3Alanguages%3Anodejs
>
> суббота, 28 июля 2012 г., 0:51:53 UTC+4 пользователь Floren Munteanu 
> написал:
>>
>> Hi everyone,
>>
>> My goal is to create a set of nodejs 64bits rpm's for Redhat/CentOS 5 and 
>> 6.
>> So far I compiled without issues v8-3.11.10 with gyp, for 
>> both environments:
>>
>> v8-3.11.10-1.el5.x86_64.rpm
>> v8-devel-3.11.10-1.el5.x86_64.rpm
>> v8-3.11.10-1.el6.x86_64.rpm
>> v8-devel-3.11.10-1.el6.x86_64.rpm
>>
>> I need your guidance related to how I should split the nodejs rpm's. I 
>> see that Debian and OpenSuse don't have any devel packages. I currently run 
>> OpenSSL 1.0.1c on both CentOS boxes (5.8 and 6.3) and my configure is:
>>
>> %build
>>> ./configure \
>>> --prefix=%{_prefix} \
>>> --dest-cpu=x64 \
>>> --without-snapshot \
>>> --shared-openssl \
>>> --shared-openssl-includes=%{_includedir} \
>>> --shared-v8 \
>>> --shared-v8-includes=%{_includedir} \
>>> --shared-zlib \
>>> --shared-zlib-includes=%{_includedir}
>>> %{__make} %{?_smp_mflags}
>>
>>
>>  The nodejs package compiles properly, no issues. Since I have the same 
>> V8 version, I decided to use the shared libs with a requirement of same or 
>> higher version for main package:
>> Requires: v8 >= 3.11.10
>>
>> This is so far how I plan to split the files into packages:
>>
>> %files
>>> %defattr(-,root,root,-)
>>> %doc AUTHORS LICENSE
>>> %{_bindir}/node
>>> %{_bindir}/npm
>>> %{_prefix}/lib/node_modules
>>> %{_mandir}/man1/node.1.*
>>>
>>  
>>
>>> %files devel
>>> %defattr(-,root,root,-)
>>> %{_bindir}/node-waf
>>> %{_prefix}/lib/node
>>> %{_includedir}/node
>>
>>
>> I would like to hear your opinion, related to above listed structure.
>> These are the final requires, once the packages are compiled:
>>
>> Requires: /bin/bash /bin/sh /usr/bin/env /usr/bin/node /usr/bin/python 
>>> libc.so.6()(64bit) libc.so.6(GLIBC_2.2.5)(64bit) 
>>> libc.so.6(GLIBC_2.3)(64bit) libc.so.6(GLIBC_2.3.2)(64bit) 
>>> libc.so.6(GLIBC_2.4)(64bit) libcrypto.so.10()(64bit) 
>>> libcrypto.so.10(libcrypto.so.10)(64bit) libdl.so.2()(64bit) 
>>> libdl.so.2(GLIBC_2.2.5)(64bit) libgcc_s.so.1()(64bit) libm.so.6()(64bit) 
>>> libm.so.6(GLIBC_2.2.5)(64bit) libpthread.so.0()(64bit) 
>>> libpthread.so.0(GLIBC_2.2.5)(64bit) libpthread.so.0(GLIBC_2.3.2)(64bit) 
>>> librt.so.1()(64bit) librt.so.1(GLIBC_2.2.5)(64bit) libssl.so.10()(64bit) 
>>> libssl.so.10(libssl.so.10)(64bit) libstdc++.so.6()(64bit) 
>>> libstdc++.so.6(CXXABI_1.3)(64bit) libstdc++.so.6(GLIBCXX_3.4)(64bit) 
>>> libv8.so.3.11.10()(64bit) libz.so.1()(64bit) rtld(GNU_HASH) v8 >= 3.11.10
>>> Processing files: nodejs-devel-0.8.4-1.el5
>>> Requires: /usr/bin/env gcc-c++ nodejs = 0.8.4-1.el5 python
>>
>>
>> I would also like to hear any suggestions related to compile options I 
>> selected. Thank you.
>>
>

-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

Reply via email to