From dce053cc2b38a8236c69e4d52c0398854b01c024 Mon Sep 17 00:00:00 2001 From: Slava Tokarev Date: Sat, 11 Jul 2020 10:46:32 -0700 Subject: [PATCH] Improve version detection (#165) --- src/Package/Util/Header/Version.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Package/Util/Header/Version.php b/src/Package/Util/Header/Version.php index 679d4d36..f5e63475 100644 --- a/src/Package/Util/Header/Version.php +++ b/src/Package/Util/Header/Version.php @@ -50,7 +50,7 @@ class Version public function __construct(Interfaces\Package $package) { $this->package = $package; - $this->macroName = 'PHP_'.strtoupper($this->package->getSimpleName()).'_VERSION'; + $this->macroName = strtoupper($this->package->getSimpleName()).'_VERSION'; $this->version = $this->getVersionFromHeader(); } @@ -63,7 +63,7 @@ public function fileHasVersionMacro($fname) } private function rglob($pattern, $flags = 0) { - $files = glob($pattern, $flags); + $files = glob($pattern, $flags); foreach (glob(dirname($pattern).'/*', GLOB_ONLYDIR|GLOB_NOSORT) as $dir) { $files = array_merge($files, self::rglob($dir.'/'.basename($pattern), $flags)); } @@ -76,7 +76,7 @@ public function getVersionFromHeader() // Match versions surrounded by quotes and versions without quotes $versionMatcher = '(".*"|.*\b)'; - $pat = ',define\s+'.preg_quote($this->macroName, ',').'\s+'.$versionMatcher.',i'; + $pat = ',define\s+(?:PHP_)?'.preg_quote($this->macroName, ',').'\s+'.$versionMatcher.',i'; foreach ($headers as $header) { $headerContent = file_get_contents($header);