Re: modifying package.xml at install time
| From: | Roman Neuhauser | Date: | Thu, 02 Oct 2003 17:18:17 +0000 |
| Subject: | Re: modifying package.xml at install time | ||
| References: | 1 2 | Groups: | php.pear.dev |
| Request: | Send a blank email to pear-dev+get-22324@lists.php.net to get a copy of this message | ||
# cox@idecnet.com / 2003-10-02 18:53:54 +0200:
> Thursday, October 2, 2003, 5:01:12 PM, Roman Neuhauser wrote:
> > I'm working on the FreeBSD ports of PEAR packages, and one thing
> > I'm struggling with while trying to create a makeport pear(1) subcommand
> > is lack of consistency in paths (I've already tackled this topic here).
>
> Umm, are those ports similar to rpm or any package manager utility?
> (sorry I don't know anything about it). Perhaps makes sense to
> introduce the creation of FreeBSD ports inside the pear installer itself.
>
> Read about the ideas about "binary" packages creation and distributing
> at:
> http://cvs.php.net/cvs.php/php-src/pear/docs/rfc01_PEAR_pecl-binaries.txt
ports are similar to srpms. unlike {,s}rpms, debs, etc, ports build
on make. at the heart of the system is a central makefile included
by the individual ports' Makefiles. this file takes care of
maintaining dependencies, and doing all the magic. a port usually
consists of:
* Makefile, which, in the easier cases, is just a few (dozens)
variable assignments (like distribution sites)
* distinfo, file containing md5 checksum of the tarball
* pkg-plist, file containing filepaths installed by the port
* pkg-descr, file containing a short description of the port
the ports tree is usually installed in /usr/ports, with two-level
hierarchy under it: <category>/<port>; PEAR for example is in
/usr/ports/devel/pear-PEAR. when you want to install the port,
you just cd to the directory, and type "make install". the system
takes care of the dependencies (on a pristine system, the command
above would fetch, compile, and install apache, php, etc).
so I guess the answer is they're something else than what you had in
mind.
now, what the makeport subcommand is supposed to do is not creating
a tarball, but creating the above files from package.xml and a few
templates so that they don't have to be created manually for each
PEAR package, because the job is simple but boring.
--
If you cc me or remove the list(s) completely I'll most likely ignore
your message. see http://www.eyrie.org./~eagle/faqs/questions.html