[
https://issues.jboss.org/browse/MODCLUSTER-499?page=com.atlassian.jira.pl...
]
Michal Karm Babacek commented on MODCLUSTER-499:
------------------------------------------------
[~rhusar], taking openssl as an example (exactly the same applies to httpd project), one
can either download from an ftp/http mirror, e.g.
*
ftp://ftp.openssl.org/source/ (httpd:
https://archive.apache.org/dist/httpd/httpd-2.4.20.tar.gz)
or from the official Github site:
* either cloning:
**
https://github.com/openssl/openssl (
https://github.com/apache/httpd)
* or downloading
**
https://github.com/openssl/openssl/archive/OpenSSL_1_0_2-stable.zip
I find all the aforementioned sound (but for plain ftp :)). Gotta look into the difference
between what they "release" as source code tarballs and what's on the GitHub
as a source repository. There is definitely some post-processing going on with at least
httpd. So far, I've been using sources cloned directly from GitHub.
Far more important decision is to embrace or reject the idea of git submodules of
mod_proxy_cluster dependencies being directly in our mod_proxy_cluster repo. We had had a
chat with [~gzaronikas] yesterday and we arrived at the conclusion that git submodules
would make the most sense; although I have been having second thoughts since...especially
due to the fact that if I have this structure:
{noformat}
mod_proxy_cluster
|
|-- CMakeLists.txt
|-- native
| |-- CMakeLists.txt
| |-- advertise (other files omitted for brevity)
| | `-- CMakeLists.txt
| |-- mod_cluster_slotmem
| | `-- CMakeLists.txt
| |-- mod_manager
| | `-- CMakeLists.txt
| `-- mod_proxy_cluster
| `-- CMakeLists.txt
|-- openssl (no other files actually present from now on)
| |-- CMakeLists.txt
| |-- crypto
| | `-- CMakeLists.txt
| |-- ssl
| | `-- CMakeLists.txt
| `-- apps
| `-- CMakeLists.txt
|-- apr
| `-- CMakeLists.txt
|-- apr-util
| `-- CMakeLists.txt
|-- pcre
| `-- CMakeLists.txt
|-- iconv
| `-- CMakeLists.txt
`-- httpd
`-- CMakeLists.txt
...
...
{noformat}
it kinda feels easier to use CMake commands in the parent CMakeLists.txt to download
sources into the structure in comparison to adding git submodules and copy the nested
CMakeLists.txt around...
tarballs or git submodules for: openssl, httpd and apr in
mod_proxy_cluster repo
--------------------------------------------------------------------------------
Key: MODCLUSTER-499
URL:
https://issues.jboss.org/browse/MODCLUSTER-499
Project: mod_cluster
Issue Type: Enhancement
Components: Native (httpd modules)
Affects Versions: 2.0.0.Alpha1
Reporter: Michal Karm Babacek
Assignee: Michal Karm Babacek
h3. Task at hand
* we are gradually getting rid of [the old build
system|http://anonsvn.jboss.org/repos/jbossnative/trunk/], moving towards CMake
* we don't want any auxiliary "util" or "helper" scripts hanging
around, we want a pure CMake driven project
* mod_proxy_cluster depends on:
** httpd
*** apr
*** apr-util
*** openssl
*** pcre
*** iconv
* we need to build these from sources
h3. Solutions
h4. Parent CMakeLists downloads tarballs
* we keep openssl and httpd CMakeLists files in the directory structure
* parent CMakeLists downlaods tarballs before children resolution
h4. We use git submodules
* we add the dependencies as git submodules
* parent CMakeLists does not downlaod anything, it merely checkouts into the desired
versions of our dependencies
* we need to keep our:{noformat}mod_proxy_cluster/openssl/CMakeLists{noformat},
{noformat}mod_proxy_cluster/openssl/crypto/CMakeLists{noformat} etc. *and* submodules;
perhaps needs something like {{openssl_build}} (our CMakeLists files) and {{openssl}} (git
submodule) directories and {{mod_proxy_cluster/CMakeLists}} taking care of copying prior
to children resolution
Gonna prototype and see what works the best.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)