[PECL-CVS] [pecl-encryption-mcrypt] master: These can never work, as it is no longer possible to install libmcrypt, and there is no pre-compiled one available for Windows
[email protected] (Derick Rethans)
| Newsgroups | php.pecl.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: Derick Rethans (derickr)
Date: 2025-08-05T10:08:34+01:00
Commit: https://github.com/php/pecl-encryption-mcrypt/commit/86f7a481409387ff2434df9f8d1f1fe63e96199b
Raw diff: https://github.com/php/pecl-encryption-mcrypt/commit/86f7a481409387ff2434df9f8d1f1fe63e96199b.diff
These can never work, as it is no longer possible to install libmcrypt, and there is no pre-compiled one available for Windows
Changed paths:
M .github/workflows/build.yml
M composer.json
Diff:
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 5d2197e..90d0070 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -9,86 +9,76 @@ on:
create:
jobs:
+ get-extension-matrix:
+ runs-on: ubuntu-latest
+ name: "Windows Build Matrix"
+ outputs:
+ matrix: ${{ steps.extension-matrix.outputs.matrix }}
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v4
+ - name: Get The Extension Matrix
+ id: extension-matrix
+ uses: php/php-windows-builder/extension-matrix@v1
+ with:
+ php-version-list: '8.0, 8.1, 8.2, 8.3, 8.4, 8.5'
+ arch-list: 'x64'
+
windows:
- runs-on: windows-latest
- name: "Windows: Build and test"
- defaults:
- run:
- shell: cmd
+ needs: get-extension-matrix
+ runs-on: ${{ matrix.os }}
+ name: "Windows"
+ strategy:
+ fail-fast: false
+ matrix: ${{fromJson(needs.get-extension-matrix.outputs.matrix)}}
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v4
+ - name: Build The Extension
+ uses: php/php-windows-builder/extension@v1
+ with:
+ php-version: ${{ matrix.php-version }}
+ arch: ${{ matrix.arch }}
+ ts: ${{ matrix.ts }}
+ args: --with-mcrypt
+ libs: libmcrypt
+
+ linux:
+ runs-on: ubuntu-latest
+ name: "Linux"
strategy:
fail-fast: false
matrix:
- php: ["7.3", "7.4", "8.0", "8.1", "8.2", "8.3", "8.4", "8.5"]
- arch: [x86, x64]
- ts: [nts, ts]
+ php: [8.0, 8.1, 8.2, 8.3, 8.4, 8.5]
+ use-opcache: [true, false]
experimental: [false]
steps:
- - name: Checkout Repository
- uses: actions/checkout@v3
- - name: Extract Version
- shell: powershell
- run: |
- chcp 65001
- $r = Select-String -Path php_mcrypt.h -Pattern 'PHP_MCRYPT_VERSION\s+"(.*)"'
- $s = $r.Matches[0].Groups[1]
- echo "$s"
- $extension_version = 'EXTENSION_VERSION=' + $s
- echo $extension_version >> $env:GITHUB_ENV
- - name: Setup PHP
- id: setup-php
- uses: cmb69/[email protected]
- with:
- version: ${{matrix.php}}
- arch: ${{matrix.arch}}
- ts: ${{matrix.ts}}
- deps: "libmcrypt"
- - name: Enable Developer Command Prompt
- uses: ilammy/msvc-dev-cmd@v1
- with:
- arch: ${{matrix.arch}}
- toolset: ${{steps.setup-php.outputs.toolset}}
- - name: Generate Build Files
- run: phpize
- - name: Configure Build
- run: configure --with-mcrypt --with-prefix=${{steps.setup-php.outputs.prefix}}
- - name: Build
- run: nmake
- - name: Define Module Env
- shell: powershell
- run: |
- chcp 65001
+ - uses: actions/checkout@v4
- $dir = (Get-Location).Path + '\'
- if ('x64' -eq '${{matrix.arch}}') { $dir = $dir + 'x64\' }
- $dir = $dir + 'Release'
- if ('ts' -eq '${{matrix.ts}}') { $dir = $dir + '_TS' }
+ - name: Setup PHP
+ uses: shivammathur/setup-php@v2
+ with:
+ php-version: "${{ matrix.php }}"
+ coverage: none
+ tools: pecl
+ deps: "libmcrypt"
- $artifact_name = 'php_mcrypt-${{env.EXTENSION_VERSION}}-${{matrix.php}}'
+ - name: Compile
+ run: phpize && ./configure && make all
- if ('7.2' -eq '${{matrix.php}}') { $artifact_name = $artifact_name + '-vc15' }
- if ('7.3' -eq '${{matrix.php}}') { $artifact_name = $artifact_name + '-vc15' }
- if ('7.4' -eq '${{matrix.php}}') { $artifact_name = $artifact_name + '-vc15' }
- if ('8.0' -eq '${{matrix.php}}') { $artifact_name = $artifact_name + '-vs16' }
- if ('8.1' -eq '${{matrix.php}}') { $artifact_name = $artifact_name + '-vs16' }
- if ('8.2' -eq '${{matrix.php}}') { $artifact_name = $artifact_name + '-vs16' }
- if ('8.3' -eq '${{matrix.php}}') { $artifact_name = $artifact_name + '-vs16' }
- if ('8.4' -eq '${{matrix.php}}') { $artifact_name = $artifact_name + '-vs17' }
- if ('8.5' -eq '${{matrix.php}}') { $artifact_name = $artifact_name + '-vs17' }
+ - name: Run tests
+ continue-on-error: ${{ matrix.experimental }}
+ run: |
+ make test
- if ('nts' -eq '${{matrix.ts}}') { $artifact_name = $artifact_name + '-nts' }
- if ('x64' -eq '${{matrix.arch}}') { $artifact_name = $artifact_name + '-x86_64' }
-
- $extension_artifact_name = "ARTIFACT_NAME=" + $artifact_name
- echo $extension_artifact_name >> $env:GITHUB_ENV
-
- $from = $dir + '\php_mcrypt.dll'
- $to = $dir + '\' + $artifact_name + ".dll"
- Copy-Item $from -Destination $to
- $extension_artifact = "ARTIFACT=" + $to
- echo $extension_artifact >> $env:GITHUB_ENV
-
- - name: Upload artifacts
- uses: actions/upload-artifact@v3
- with:
- name: ${{env.ARTIFACT_NAME}}
- path: ${{env.ARTIFACT}}
+ release:
+ runs-on: ubuntu-latest
+ name: "PIE Release Artifacts"
+ needs: windows
+ if: ${{ github.event_name == 'release' }}
+ steps:
+ - name: Upload artifact to the release
+ uses: php/php-windows-builder/release@v1
+ with:
+ release: ${{ github.event.release.tag_name }}
+ token: ${{ secrets.GITHUB_TOKEN }}
diff --git a/composer.json b/composer.json
index 236acbc..767f666 100644
--- a/composer.json
+++ b/composer.json
@@ -4,15 +4,16 @@
"license": "PHP-3.01",
"description": "Bindings for the libmcrypt library.",
"require": {
- "php": ">=7.2"
+ "php": ">= 7.2.0, <= 8.6.0"
},
"php-ext": {
"priority": 20,
+ "extension-name": "mcrypt",
"configure-options": [
{
"name": "with-mcrypt",
- "description": "libmcrypt prefix?",
- "needs-value": false
+ "description": "Include mcrypt support",
+ "needs-value": true
}
]
}