LDAPCSDKBinaryPackaging: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
No edit summary
 
Line 2: Line 2:
== Layout of Binary Packages ==
== Layout of Binary Packages ==
The packaging will be as follows.  Names with a "/" suffix are directories.  All other names are file names.  A "#" introduces an in-line comment.
The packaging will be as follows.  Names with a "/" suffix are directories.  All other names are file names.  A "#" introduces an in-line comment.
=== Proposal 1 - single, inclusive include, lib, etc. directories ===
The top level directory will contain ''lib'', ''include'', ''bin'', ''man'', ''doc'', and ''example'' subdirectories.  The ''lib'' directory will contain all of the NSPR, NSS, svrcore, and mozldap libraries.  The ''include'' directory will contain all of the component include files.  The ''bin'' directory will contain all of the component executables and scripts.  And so on.


toplevel
* lib/
** libnspr4.so
*: ... # other nspr libs
*: libnss3.so
*: ... # other nss libs
*: libsvrcore.so
*: libldap60.so
*: ... # other ldap libs
* include/
** nspr.h
*: ... # other nspr headers
*: nss.h
*: ... # other nss headers
*: svrcore.h
*: ldap.h
*: ... # other ldap headers
=== Proposal 2 - include, lib, etc. directories for each component ===
The top level directory will contain a subdirectory for each component.  The directory name will be the name followed by a "-" followed by the version.  For example, for NSPR version 4.6.4, the directory name would be '''nspr-4.6.4'''.  Under each component directory will be a directory called ''lib'' and a directory called ''include''.  It is intended that a Makefile could refer to these directly e.g. ''-L/path/to/nspr-4.6.4/lib'' and ''-I/path/to/nspr-4.6.4/include''.  In addition, each component directory may have additional directories ''bin'' for executables and other binaries; ''tools'' for executable command line utilities and scripts; ''man'' and ''doc'' for man pages and documentation; and others.
The top level directory will contain a subdirectory for each component.  The directory name will be the name followed by a "-" followed by the version.  For example, for NSPR version 4.6.4, the directory name would be '''nspr-4.6.4'''.  Under each component directory will be a directory called ''lib'' and a directory called ''include''.  It is intended that a Makefile could refer to these directly e.g. ''-L/path/to/nspr-4.6.4/lib'' and ''-I/path/to/nspr-4.6.4/include''.  In addition, each component directory may have additional directories ''bin'' for executables and other binaries; ''tools'' for executable command line utilities and scripts; ''man'' and ''doc'' for man pages and documentation; and others.



Revision as of 16:55, 18 January 2007

The LDAP C SDK binaries are packaged as either .zip files (for Windows) or as .tar.gz files (for other platforms). The binary packages include all of the dependencies as well, which means NSPR, NSS, and svrcore binaries, libraries, and header files are included, so that developers or redistributors will have everything they need to build and run with the LDAP C SDK.

Layout of Binary Packages

The packaging will be as follows. Names with a "/" suffix are directories. All other names are file names. A "#" introduces an in-line comment.

Proposal 1 - single, inclusive include, lib, etc. directories

The top level directory will contain lib, include, bin, man, doc, and example subdirectories. The lib directory will contain all of the NSPR, NSS, svrcore, and mozldap libraries. The include directory will contain all of the component include files. The bin directory will contain all of the component executables and scripts. And so on.

toplevel

  • lib/
    • libnspr4.so
    ... # other nspr libs
    libnss3.so
    ... # other nss libs
    libsvrcore.so
    libldap60.so
    ... # other ldap libs
  • include/
    • nspr.h
    ... # other nspr headers
    nss.h
    ... # other nss headers
    svrcore.h
    ldap.h
    ... # other ldap headers

Proposal 2 - include, lib, etc. directories for each component

The top level directory will contain a subdirectory for each component. The directory name will be the name followed by a "-" followed by the version. For example, for NSPR version 4.6.4, the directory name would be nspr-4.6.4. Under each component directory will be a directory called lib and a directory called include. It is intended that a Makefile could refer to these directly e.g. -L/path/to/nspr-4.6.4/lib and -I/path/to/nspr-4.6.4/include. In addition, each component directory may have additional directories bin for executables and other binaries; tools for executable command line utilities and scripts; man and doc for man pages and documentation; and others.

toplevel

  • nspr-<version>/ # e.g. nspr-4.6.4/
    • lib/
    • include/
  • nss-<version>/ # e.g. nss-3.11.4/
    • lib/
    • include/
    • bin/
  • svrcore-<version>/ # e.g. svrcore-4.0.3/
    • lib/
    • include/
  • mozldap-<version>/ # e.g. mozldap-6.1.0/
    • lib/
    • include/
    • tools/
    • examples/
    • docs/