[cvs] [Wiki] changed: Doc/Dev/Framework

Michael Slusarz slusarz at horde.org
Thu Aug 7 18:53:25 UTC 2008


slusarz  Thu, 07 Aug 2008 14:53:25 -0400

Modified page: http://wiki.horde.org/Doc/Dev/Framework
New Revision:  1.8
Change log:  remove old/incorrect information

@@ -14,9 +14,9 @@
  +++ Installing everything from CVS

  You will need the entire Horde Framework module. You can either get  
a CVS checkout of the {{framework}} module from Horde's anonymous CVS  
server (see http://horde.org/source/ for instructions on using CVS),  
or you can download a nightly snapshot from http://snaps.horde.org/.  
You'll want the latest framework-HEAD snapshot.

-Once you have the full framework you have two options: symlinking, or  
installing with the PEAR installer. If you want to install with the  
PEAR installer, there is an {{install-packages.php}} script in the  
framework/ directory that will automate the process for you. Simply run:
+[[# InstallInstruct]] Once you have the full framework you have two  
options: symlinking, or installing with the PEAR installer. If you  
want to install with the PEAR installer, there is an  
{{install-packages.php}} script (or, if using Windows, an  
{{install-packages.bat}} script) in the framework/ directory that will  
automate the process for you. Simply run:

  <code>php install-packages.php
  </code>

@@ -41,8 +41,9 @@
  </code>

  The default is to run the script from your main Horde directory,  
with {{framework/}} as the source directory and a {{libs}} directory  
as the target (these values are assumed if you don't specify --src or  
--dest). You will see a processing message for each package, and then  
all you need to do is to add the {{libs/}} directory to your  
include_path.

+Symlinking is useful for developers who develop on the framework  
libraries and want to see their changes in real-time without having to  
re-install the affected package. This script is also used to  
distribute the libraries with the Horde packages.

  +++ Installing individual libraries from CVS

  You will still need a full checkout or a snapshot of the framework,  
as above. Then you can install individual packages. For example, to  
install the Horde_Compress package, in the {{framework/Compress}}  
directory, you would run:
@@ -70,9 +71,9 @@
  <code type="php">
  ini_set('include_path', dirname(__FILE__) . PATH_SEPARATOR .  
ini_get('include_path'));
  </code>

-This code prepends the {{horde/lib/}} directory to the existing  
{{include_path}}. For example, if the {{include_path}} is set to  
{{.:/usr/share/php}} in {{php.ini}}, it will become  
{{/path/to/horde/lib:.:/usr/share/php}}. This means that library files  
included with {{include}}, {{include_once}}, {{require}}, or  
{{require_once}} statements are first looked for in Horde's {{lib/}}  
directory, then in the local directory ({{.}}), and finally in the  
PEAR repository. The side effect is that libraries that come with  
Horde and have the same name like a PEAR package, e.g. File_CSV, are  
used in favour of the PEAR package.
+This code prepends the {{horde/lib/}} directory to the existing  
{{include_path}}. For example, if the {{include_path}} is set to  
{{.:/usr/share/php}} in {{php.ini}}, it will become  
{{/path/to/horde/lib:.:/usr/share/php}}. This means that library files  
included with {{include}}, {{include_once}}, {{require}}, or  
{{require_once}} statements are first looked for in Horde's {{lib/}}  
directory, then in the local directory ({{.}}), and finally in the  
PEAR repository. The side effect is that libraries that come with  
Horde and have the same name like a PEAR package, e.g. File_CSV, are  
used in favor of the PEAR package.


  ++ Use

@@ -102,17 +103,9 @@
  > One of the most important tasks while contributing a new package  
to PEAR is finding an appropriate name for your package.
  >
  > The general syntax for package names is {{<Category>_<Name>}}. The  
value for {{<Category>}} should be chosen from a predefined list of  
categories that are available in PEAR (e.g. "HTTP", "Net", "HTML").  
The second part is the name of the package (like "Upload", "Portscan",  
"Table").

-Each package directory contains a  
[http://pear.php.net/manual/en/developers.packagedef.php package.xml]  
file with package descriptions, file listings, dependencies, change  
logs etc. As all Horde Libraries are following the  
[http://pear.php.net PEAR] standard, they can be installed using the  
[http://pear.php.net/manual/en/installation.cli.php PEAR installer]:
-
-<code>
-pear install framework/Util/package.xml
-</code>
-
-The {{framework}} CVS module contains two scripts,  
{{[http://cvs.horde.org/co.php/framework/install-packages.php  
install-packages.php]}} and  
{{[http://cvs.horde.org/co.php/framework/install-packages.bat  
install-packages.bat]}} (for Windows), that can be used to install all  
packages at once in your local PEAR repository. This is necessary if  
you install the Horde Application Framework from CVS. See the  
[http://www.horde.org/horde/docs/?f=INSTALL.html#installing-from-cvs-or-snaphots installation manual] for  
details.
-
-There is a different script in the {{horde}} CVS module,  
{{[http://cvs.horde.org/co.php/horde/scripts/create-symlinks.php  
scripts/create-symlinks.php]}}, that can be used to install the  
libraries without using the PEAR installer. This is useful for  
developers who develop on the framework libraries and want to see  
their changes in real-time without having to re-install the affected  
package. This script is also used to distribute the libraries with the  
Horde packages.
+Each package directory contains a  
[http://pear.php.net/manual/en/developers.packagedef.php package.xml]  
file with package descriptions, file listings, dependencies, change  
logs etc. As all Horde Libraries are following the  
[http://pear.php.net PEAR] standard, they can be installed using the  
[http://pear.php.net/manual/en/installation.cli.php PEAR installer] or  
may be symlinked to a subdirectory of the Horde installation.  For  
further instructions, see the Installation Instructions located above.

  +++ Directory structure

  The {{VFS}} package has the following structure in CVS:


More information about the cvs mailing list