A set of makefiles consists of useful rules for PHP development.
Install as development package by using Composer
composer require --dev gasolwu/php-makefile
Or, append the following snippet into your composer.json and then run install manually by composer install
{
"require-dev": {
"gasolwu/php-makefile": "^0.1"
}
}
The minimum setup is to create your own Makefile and includes the PHP.mk.
cat > Makefile <<EOF
include vendor/gasolwu/php-makefile/PHP.mk
EOF
make syntax
- Check syntax by PHP built-in lintermake clean
- Remove build directory
make phpunit.xml
- Generate configuration file for PHPUnit with suggested settingsmake phpunit
- Run test with PHPUnit
make vendor
- Install dependencies by using Composer
make style
- Check coding style by PHP_CodeSniffer
There are two approches to run test by default, So you can run test by running make
instead of make phpunit
-
Define
.DEFAULT_GOAL
.DEFAULT_GOAL := phpunit
-
Declare
all
target that depends onphpunit
all: phpunit
Those variables should work well for most PHP libraries by default, If it doesn't, Feel free to apply changes that applicable to you.
USES
- Possible values arecomposer
phpunit
phpcs
BUILD_DIR
- Build directory that contains all generated files during the build phase are placed here. Should be listed in VCS ignore file. Default tobuild
.PHP_SRCDIR
- Source directory, Default tosrc
.PHP_TESTDIR
- Tests directory, Default totests
.
MIT - Copyright © 2019 Gasol Wu