On 04/12/2017 03:56, William A Rowe Jr wrote:
On Dec 3, 2017 15:09, "Michael" <aixto...@felt.demon.nl> wrote:

On 17/11/2017 13:48, Michael Felt wrote:


On 11/13/2017 7:46 AM, William A Rowe Jr wrote:

So, when we prepare source packages, we are using vendor or raw autocruft
packages... Depending on which release, this varies every by a specific RM.

Well, I was hoping to be able to dual-build (i.e., 32 and 64-bit in one
package apr and apr-util - but it seems I'll have to package the
seperately) - lots of lines (sorry) - but there are differences in include
files that would make me uncomfortable to have a dual package now. And, no
real suggestion on how to make one. So, it seems keeping the -q64 flag for
64-bit is a good idea (to prevent mixes) - and I'll just manually add -q32
to my 32-bit package.


----------

Michael,

To reiterate, if you want a change, the right way is the arch and host
flags to autoconf, and the correct translations within libtool. Further
discussion actually belongs to autoconf and libtool maintainers IMO, unless
it is our override.

Thanks William - I'll take a look at the auto* tools additional options.

I was thinking dual (i.e., 32-bit and 64-bit) library support is not going to be possible - because the include files generated depend on the bit-mode during compile, e.g.

 diff -ru X32/opt/include/apr-1/apr.h X64/opt/include/apr-1/apr.h
--- X32/opt/include/apr-1/apr.h 2017-11-30 18:19:54 +0000
+++ X64/opt/include/apr-1/apr.h 2017-11-30 18:16:20 +0000

...

/* And APR_UINT64_T_FMT */
-#define APR_UINT64_T_FMT "llu"
+#define APR_UINT64_T_FMT "lu"

 /* And APR_UINT64_T_HEX_FMT */
-#define APR_UINT64_T_HEX_FMT "llx"
+#define APR_UINT64_T_HEX_FMT "lx"

...

Also something I need to look at is why somethings toggle support.

diff -ru X32/opt/include/apr-1/apr.h X64/opt/include/apr-1/apr.h
--- X32/opt/include/apr-1/apr.h 2017-11-30 18:19:54 +0000
+++ X64/opt/include/apr-1/apr.h 2017-11-30 18:16:20 +0000
@@ -267,7 +267,7 @@
 /*  APR Feature Macros */
 #define APR_HAS_SHARED_MEMORY     1
 #define APR_HAS_THREADS           1
-#define APR_HAS_SENDFILE          1
+#define APR_HAS_SENDFILE          0
 #define APR_HAS_MMAP              1
 #define APR_HAS_FORK              1
 #define APR_HAS_RANDOM            1
@@ -277,7 +277,7 @@
 #define APR_HAS_UNICODE_FS        0
 #define APR_HAS_PROC_INVOKED      0
 #define APR_HAS_USER              1
-#define APR_HAS_LARGE_FILES       1
+#define APR_HAS_LARGE_FILES       0

32-bit says it has both SENDFILE and LARGE_FILES. While I could just be surprised about SENDFILE differences - 32-bit plus LARGE_FILES is perhaps needed to get LARGE_FILE support with 32-bit (and it is zero because it is never tested, just assumed when 64-bit?)

Anyway - I'll look at the auto* tools to see what effect additional arguments have on things (although, normally I would just call ./configure and not the auto* tools) within the files apr-1-config, apr_rules.mk and build-1/libtool



My own preference is to force -q64/32 on the actual CC, LD, AR commands
etc. At that point, all autoconf choices aught to resolve correctly.


Reply via email to