This is a module of Bearsampp project involving Apache HTTP Server.
This module uses Gradle as its build system. The Gradle build provides:
- β Pure Gradle build (no Ant dependencies)
- β Automatic Apache binary download and extraction
- β Remote version discovery from modules-untouched repository
- β Interactive and non-interactive build modes
- β Support for archived versions
- β Configurable build paths
- β Hash file generation (MD5, SHA1, SHA256, SHA512)
- β 7-Zip and ZIP archive formats
- Java 8 or higher
- Gradle (or use the included wrapper)
- 7-Zip (for .7z format archives)
# Display build information
gradle info
# List available versions
gradle listVersions
# Build a specific version
gradle release -PbundleVersion=2.4.62
# Build all versions
gradle releaseAll
# Verify build environment
gradle verify
# Clean build artifacts
gradle cleanFor detailed build instructions and documentation, see .gradle-docs/README.md
Additional documentation:
| Document | Description |
|---|---|
| README.md | Complete build documentation and guide |
| GRADLE_UPDATES.md | Detailed build system updates |
| CHANGES_SUMMARY.md | Summary of all changes |
| GRADLE_TMP_PATHS.md | Build path structure details |
| CHANGES_TMP_PATHS.md | Temporary paths configuration |
| REMOTE_PROPERTIES_SUPPORT.md | Remote version discovery |
| MODULES_UNTOUCHED_INTEGRATION.md | Integration guide |
| CHANGELOG.md | Complete changelog |
Configure the module build settings:
bundle.name = apache
bundle.release = 2025.8.15
bundle.type = bins
bundle.format = 7z| Property | Description | Example Value |
|---|---|---|
bundle.name |
Name of the bundle | apache |
bundle.release |
Release version | 2025.8.15 |
bundle.type |
Type of bundle | bins |
bundle.format |
Archive format (7z or zip) | 7z |
You can configure the build output path in three ways (priority order):
-
In build.properties:
build.path = C:/Bearsampp-build -
Environment variable:
set BEARSAMPP_BUILD_PATH=C:/Bearsampp-build -
Default: Uses
../bearsampp-buildrelative to project root
Versions are detected from:
bin/- Current/active versionsbin/archived/- Archived/older versionsmodules-untouched- Remote repository (automatic discovery)
When building, the system checks for Apache binaries in this order:
- Local
bin/directory - Check for version folder - Local
bin/archived/directory - Check archived versions - Remote
apache.properties- Fetch from modules-untouched repository - Direct repository download - Download from modules-untouched GitHub
This multi-tier fallback strategy ensures maximum flexibility and automatic version discovery without manual configuration.
Example:
# List local versions
gradle listVersions
# List remote versions
gradle listReleases
# Check integration
gradle checkModulesUntouchedBuild artifacts are created in the bearsampp-build directory:
bearsampp-build/
βββ bins/apache/{release}/ # Final packaged archives
β βββ bearsampp-apache-{version}-{release}.7z
β βββ bearsampp-apache-{version}-{release}.7z.md5
β βββ bearsampp-apache-{version}-{release}.7z.sha1
β βββ bearsampp-apache-{version}-{release}.7z.sha256
β βββ bearsampp-apache-{version}-{release}.7z.sha512
βββ tmp/ # Temporary build files
βββ bundles_prep/bins/apache/ # Prepared bundles
βββ bundles_build/bins/apache/ # Build staging
βββ bundles_src/ # Source bundles
βββ downloads/apache/ # Downloaded dependencies
βββ extract/apache/ # Extracted archives
Archive Structure: Each archive contains the Apache version folder at the root:
bearsampp-apache-2.4.62-2025.8.15.7z
βββ apache2.4.62/ β Version folder at root
βββ bin/
βββ conf/
βββ modules/
βββ ...
Run gradle release without parameters for interactive version selection:
gradle releaseThe system will display all available versions with location tags [bin] or [bin/archived] and prompt you to select one.
Build all available versions at once:
gradle releaseAllThis will iterate through all versions in bin/ and bin/archived/ directories and build each one.
The build system automatically discovers new Apache versions from the modules-untouched repository:
- Fetches version information from
apache.properties - Downloads binaries automatically when not found locally
- No manual configuration required for new versions
- Fallback to direct repository access if needed
Check integration:
gradle checkModulesUntouchedOfficial module downloads are available at:
https://bearsampp.com/module/apache
Issues must be reported on Bearsampp repository.
Contributions are welcome! Please see the Bearsampp contribution guidelines.
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.