Anton Bobrov wrote:
Rich, nspr/nss switches sounds like a good idea tho i'm not
sure what nspr-config is.
nspr-config is a shell script that prints out various compiler and
linker flags to use to build programs that use nspr e.g.
-I/path/to/include or -L/path/to/libs - analogous to pkg-config.
re rpms we include some examples
and sample conf files in our dev rpm like this :
/usr
/usr/share
/usr/share/ldapcsdk
/usr/share/ldapcsdk/etc
/usr/share/ldapcsdk/etc/ldapfilter.conf
/usr/share/ldapcsdk/etc/ldapfriendly
/usr/share/ldapcsdk/etc/ldapsearchprefs.conf
/usr/share/ldapcsdk/etc/ldaptemplates.conf
/usr/share/ldapcsdk/examples
/usr/share/ldapcsdk/examples/Makefile
/usr/share/ldapcsdk/examples/README
/usr/share/ldapcsdk/examples/add.c
/usr/share/ldapcsdk/examples/asearch.c
/usr/share/ldapcsdk/examples/compare.c
/usr/share/ldapcsdk/examples/crtfilt.c
/usr/share/ldapcsdk/examples/csearch.c
/usr/share/ldapcsdk/examples/del.c
/usr/share/ldapcsdk/examples/examples.h
/usr/share/ldapcsdk/examples/getattrs.c
/usr/share/ldapcsdk/examples/getfilt.c
/usr/share/ldapcsdk/examples/modattrs.c
/usr/share/ldapcsdk/examples/modrdn.c
/usr/share/ldapcsdk/examples/nsprio.c
/usr/share/ldapcsdk/examples/ppolicy.c
/usr/share/ldapcsdk/examples/psearch.c
/usr/share/ldapcsdk/examples/rdentry.c
/usr/share/ldapcsdk/examples/search.c
/usr/share/ldapcsdk/examples/srvrsort.c
/usr/share/ldapcsdk/examples/ssearch.c
/usr/share/ldapcsdk/examples/ssnoauth.c
/usr/share/ldapcsdk/examples/xmplflt.conf
tools go in /opt/sun/private/bin and libs go in /opt/sun/private/lib
and includes are under /opt/sun/private/include/ldap so there is no
clash nowhere. take care and happy new year!
Is this only for Linux? I'm assuming on Solaris the shared libs are in
/usr/lib, the include files are in /usr/include, etc.
ta,
anton.
Rich Megginson wrote:
I'm going to be doing some work in the following areas, and I would
like to get some input from ldapsdk developers, and especially the
mozilla and thunderbird developers to see how they build ldapsdk as
part of those products:
1) auto detection of nspr and nss, something like this
if --without-nspr then
no nspr
if --with-nspr=path OR (--with-nspr-inc=path AND --with-nspr-lib=path)
use the explicit paths provided by the user
else if --with-system-nspr then
get nspr from OS
look for nspr-config using --with-nspr-prefix and
--with-nspr-exec-prefix
if that fails, look for nspr-config in PATH
if nspr-config is found, get cflags and ldflags from it
if that fails, look for pkg-config
see if pkg-config nspr is available
else use pkg-config mozilla-nspr
get cflags and ldflags from pkg-config
if both nspr-config and pkg-config fail, punt
else
in-tree - look for nspr in ../../dist/*.OBJ - look for
include/nspr.h and lib/
if not in-tree, fall back to --with-system-nspr decision tree
The detection of nss will be almost identical
There are a few places in the Makefiles that need to change in order
to be able to pass in the CFLAGS and LDFLAGS.
2) Packaging of NSPR and NSS libs
I don't think we need to do this anymore - I'd like to remove the
packaging of NSPR and NSS libs
3) RPM packaging
We're planning to make the ldap sdk part of the base OS. I'm
proposing to name the package "mozldap". There will be 3 packages total:
mozldap - contains just the shared libs (and any other run-time only
files)
mozldap-devel - contains the include files and mozldap-config and .pc
file
mozldap-tools - contains the command line tools
The shared libs will go into /usr/lib, the tools into /usr/lib/mozldap
(so as not to conflict with the openldap versions), and the include
files into /usr/include/mozldap (ditto)
Here is a .spec file excerpt:
%files
%defattr(-,root,root)
%{_libdir}/libssldap50.so
%{_libdir}/libprldap50.so
%{_libdir}/libldap50.so
%files tools
%defattr(-,root,root)
%{_libdir}/mozldap/ldapsearch
%{_libdir}/mozldap/ldapmodify
%{_libdir}/mozldap/ldapdelete
%{_libdir}/mozldap/ldapcmp
%{_libdir}/mozldap/ldapcompare
%files devel
%defattr(-,root,root)
%{_libdir}/pkgconfig/mozldap.pc
%{_bindir}/mozldap-config
%dir %{_includedir}/mozldap
%{_includedir}/mozldap/disptmpl.h
%{_includedir}/mozldap/lber.h
%{_includedir}/mozldap/ldap.h
%{_includedir}/mozldap/ldap-standard.h
%{_includedir}/mozldap/ldap-platform.h
%{_includedir}/mozldap/ldap-extension.h
%{_includedir}/mozldap/ldap-deprecated.h
%{_includedir}/mozldap/ldap-to-be-deprecated.h
%{_includedir}/mozldap/ldap_ssl.h
%{_includedir}/mozldap/ldappr.h
%{_includedir}/mozldap/srchpref.h
_______________________________________________
mozilla-directory mailing list
mozilla-directory@mozilla.org
http://mail.mozilla.org/listinfo/mozilla-directory
_______________________________________________
mozilla-directory mailing list
mozilla-directory@mozilla.org
http://mail.mozilla.org/listinfo/mozilla-directory