X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=README.md;h=212a7e786a4b002b30f4bdf3c3d074629509ede5;hb=d181cbc2b996588845840014fdaf7b6835c9c270;hp=067ed76af76439411505b9b0d1550dbaeab420fc;hpb=85cbcf6a9328dfc78a02aecb337deae469343180;p=pharext%2Fpharext diff --git a/README.md b/README.md index 067ed76..212a7e7 100644 --- a/README.md +++ b/README.md @@ -1,48 +1,80 @@ # pharext +[![Join the chat at https://gitter.im/m6w6/pharext](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/m6w6/pharext?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) + Distribute your PHP extension as self-installable phar executable ## About -### Disclaimer - You don't need this package to install any `*.ext.phar` extension packages, just run them with php: - $ ./pecl_http-2.4.0dev.ext.phar + $ ./pecl_http-2.4.2.ext.phar -Or, if the execute permission bit got lost somehow: +For a compressed phar, or if the execute permission bit got lost somehow: - $ php pecl_http-2.4.0dev.ext.phar + $ php pecl_http-2.4.2.ext.phar.gz Command help: - $ ./pecl_http-2.4.0dev.ext.phar -h + $ ./pecl_http-2.4.2.ext.phar -h Yields: + pharext v3.0.0 (c) Michael Wallner + Usage: - - $ ./pecl_http-2.4.0dev.ext.phar [-h|-v|-q|-s] [-p|-n|-c ] - - -h|--help Display help - -v|--verbose More output - -q|--quiet Less output - -p|--prefix PHP installation directory [/usr] - -n|--common-name PHP common program name, e.g. php5 [php] - -c|--configure Additional extension configure flags - -s|--sudo [] Installation might need increased privileges [sudo -S %s] - -If your installation destination needs escalated permissions, have a look at the `--sudo` option: - - $ ./pecl_http-2.4.0dev.ext.phar --sudo - Running phpize ... OK - Running configure ... OK - Running make ... OK - Running install ... Password:············ - Installing shared extensions: /usr/lib/php/extensions/no-debug-non-zts-20121212/ - Installing header files: /usr/include/php/ - OK + + $ ./pecl_http-2.4.2.ext.phar [-hvqs] [-p|-n|-c|-i ] + + -h|--help Display help + -v|--verbose More output + -q|--quiet Less output + -p|--prefix PHP installation prefix if phpize is not in $PATH, e.g. /opt/php7 + -n|--common-name PHP common program name, e.g. php5 or zts-php [php] + -c|--configure Additional extension configure flags, e.g. -c --with-flag + -s|--sudo [] Installation might need increased privileges [sudo -S %s] + -i|--ini Activate in this php.ini instead of loaded default php.ini + --signature Show package signature + --license Show package license + --name Show package name + --date Show package release date + --release Show package release version + --version Show pharext version + --enable-propro [] Whether to enable property proxy support [yes] + --enable-raphf [] Whether to enable raphf support [yes] + --with-http-zlib-dir [] Where to find zlib [/usr] + --with-http-libcurl-dir [] Where to find libcurl [/usr] + --with-http-libevent-dir [] Where to find libevent [/usr] + + +If your installation destination needs escalated permissions, have a look at [the `--sudo` option](https://github.com/m6w6/pharext/wiki/Usage-of-*.ext.phar-packages#privileges): + + Installing propro-1.0.1.ext.phar ... + Running phpize ... + Running configure ... + Running make ... + Running make install ... + Running INI activation ... + Extension already activated ... + Successfully installed propro-1.0.1.ext.phar! + Installing raphf-1.0.5.ext.phar ... + Running phpize ... + Running configure ... + Running make ... + Running make install ... + Running INI activation ... + Extension already activated ... + Successfully installed raphf-1.0.5.ext.phar! + Installing pecl_http-2.4.2.ext.phar ... + Running phpize ... + Running configure ... + Running make ... + Running make install ... + Running INI activation ... + Extension already activated ... + Successfully installed pecl_http-2.4.2.ext.phar! + ### Prerequisites @@ -52,76 +84,23 @@ The usual tools you need to build a PHP extension: A network connection is not needed. -### Not implemented - -* Dependencies -* Package description files - -## Installation for extension maintainers - - $ composer require --dev m6w6/pharext - -### Prerequisites: - -* make -* php + phar - -## Usage +## Extension maintainers - $ ./vendor/bin/pharext --pecl --source ../pecl_http.git +Download the pharext binary of the [latest release](https://github.com/m6w6/pharext/releases/latest). -Yields: - - Creating phar ./pecl_http-2.4.0dev.ext.phar.54f6e987ae00f.tmp ... OK - Finalizing ./pecl_http-2.4.0dev.ext.phar ... OK - -Note that the PECL source can infer package name and release version from the package.xml. +Be aware that you need the [public key](https://github.com/m6w6/pharext/wiki/Public-key) to run official `pharext` releases. -Another example using `git ls-files`: + -----BEGIN PUBLIC KEY----- + MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5x9bwisjDBDV/bwDiju2 + Ebx4kPir32WwT3+hxV0/qAPclA1WsrpcUJ7BChk+Rlz8ujOcyENTidgI1vj3oUpo + /P9XlLQOSrJHYz+AOg7qwhTe89xIJspS4gHHiXUAmxz0TyCNMbOyrLcjP5CmZdll + n+e3HP8Kfipr4XyWBhsKbdYUZ8Ga6IeFMYzNqCzWazcOasdCpsablmyrfCaZoJ0l + bFald0nF3/YoeYgo3fWb4Md9Xf/grpz8Ocqyq4OY49Vb0/p8FMwzBV6vbVh/eAV/ + jrP7L40Jw97nSBrP/5nK8Ylc5BayVRq/HhT3kLMC//zvPjb8xz3ZgVTQrwWTF3Zy + +wIDAQAB + -----END PUBLIC KEY----- - $ ./vendor/bin/pharext -v -g -s ../raphf.git --name raphf --release 1.0.5 +Place it as `pharext.pubkey` in the same directory where the `pharext` binary is located. IF you cloned the repository or installed `pharext` through composer, it is already at the right location. -Yields: - - Creating phar ./raphf-1.0.5.ext.phar.54f6ebd71f13b.tmp ... - Packaging .gitignore - Packaging CREDITS - Packaging Doxyfile - Packaging LICENSE - Packaging TODO - Packaging config.m4 - Packaging config.w32 - Packaging package.xml - Packaging php_raphf.c - Packaging php_raphf.h - Packaging raphf.png - Packaging tests/http001.phpt - Packaging tests/http002.phpt - Packaging tests/http003.phpt - Packaging tests/http004.phpt - OK - Finalizing ./raphf-1.0.5.ext.phar ... OK +Please have a look at the [wiki](https://github.com/m6w6/pharext/wiki), to learn [how to use](https://github.com/m6w6/pharext/wiki/Usage-of-the-pharext-packager) the pharext installer to package self-installing PHP extensions. -Command help: - - $ ./vendor/bin/pharext --help - -Yields: - - Usage: - - $ ./vendor/bin/pharext [-h|-v|-q|-g|-p] -s -n -r [-d ] - - -h|--help Display this help - -v|--verbose More output - -q|--quiet Less output - -s|--source Extension source directory (REQUIRED) - -g|--git Use `git ls-files` instead of the standard ignore filter - -p|--pecl Use PECL package.xml instead of the standard ignore filter - -d|--dest Destination directory [.] - -n|--name Extension name (REQUIRED) - -r|--release Extension release version (REQUIRED) - -## Rebuilding - - $ make -C vendor/m6w6/pharext