diff mbox series

[meta-oe] postgresql: Fix install conflict when enable multilib.

Message ID 1678352824-32428-1-git-send-email-wangmy@fujitsu.com
State New
Headers show
Series [meta-oe] postgresql: Fix install conflict when enable multilib. | expand

Commit Message

Mingyu Wang (Fujitsu) March 9, 2023, 9:07 a.m. UTC
From: Wang Mingyu <wangmy@fujitsu.com>

Error: Transaction test error:
file /usr/include/pg_config.h conflicts between attempted installs of lib32-libpq-dev-15.2-r0.armv7ahf_neon and libpq-dev-15.2-r0.aarch64
file /usr/include/pg_config_ext.h conflicts between attempted installs of lib32-libpq-dev-15.2-r0.armv7ahf_neon and libpq-dev-15.2-r0.aarch64

The differences of pg_config_ext.h are as follows:
@@ -5,4 +5,4 @@
  */

 /* Define to the name of a signed 64-bit integer type. */
-#define PG_INT64_TYPE long int
+#define PG_INT64_TYPE long long int

The differences of pg_config.h are as follows:
@@ -11,13 +11,13 @@
 #define ALIGNOF_INT 4

 /* The normal alignment of `long', in bytes. */
-#define ALIGNOF_LONG 8
+#define ALIGNOF_LONG 4

 /* The normal alignment of `long long int', in bytes. */
-/* #undef ALIGNOF_LONG_LONG_INT */
+#define ALIGNOF_LONG_LONG_INT 8

 /* The normal alignment of `PG_INT128_TYPE', in bytes. */
-#define ALIGNOF_PG_INT128_TYPE 16
+/* #undef ALIGNOF_PG_INT128_TYPE */

 /* The normal alignment of `short', in bytes. */
 #define ALIGNOF_SHORT 2
@@ -369,10 +369,10 @@
 #define HAVE_LOCALE_T 1

 /* Define to 1 if `long int' works and is 64 bits. */
-#define HAVE_LONG_INT_64 1
+/* #undef HAVE_LONG_INT_64 */

 /* Define to 1 if `long long int' works and is 64 bits. */
-/* #undef HAVE_LONG_LONG_INT_64 */
+#define HAVE_LONG_LONG_INT_64 1

 /* Define to 1 if you have the <mbarrier.h> header file. */
 /* #undef HAVE_MBARRIER_H */
@@ -780,7 +780,7 @@
 /* #undef HAVE___STRTOULL */

 /* Define to the appropriate printf length modifier for 64-bit ints. */
-#define INT64_MODIFIER "l"
+#define INT64_MODIFIER "ll"

 /* Define to 1 if `locale_t' requires <xlocale.h>. */
 /* #undef LOCALE_T_IN_XLOCALE */
@@ -814,10 +814,10 @@
 #define PACKAGE_VERSION "15.2"

 /* Define to the name of a signed 128-bit integer type. */
-#define PG_INT128_TYPE __int128
+/* #undef PG_INT128_TYPE */

 /* Define to the name of a signed 64-bit integer type. */
-#define PG_INT64_TYPE long int
+#define PG_INT64_TYPE long long int

 /* Define to the name of the default PostgreSQL service principal in Kerberos
    (GSSAPI). (--with-krb-srvnam=NAME) */
@@ -845,7 +845,7 @@
 #define PG_VERSION_NUM 150002

 /* A string containing the version number, platform, and C compiler */
-#define PG_VERSION_STR "PostgreSQL 15.2 on aarch64-poky-linux-gnu, compiled by aarch64-poky-linux-gcc (GCC) 12.2.0, 64-bit"
+#define PG_VERSION_STR "PostgreSQL 15.2 on arm-pokymllib32-linux-gnueabi, compiled by arm-pokymllib32-linux-gnueabi-gcc (GCC) 12.2.0, 32-bit"

 /* Define to 1 to allow profiling output to be saved separately for each
    process. */
@@ -872,16 +872,16 @@
 #define SIZEOF_BOOL 1

 /* The size of `long', as computed by sizeof. */
-#define SIZEOF_LONG 8
+#define SIZEOF_LONG 4

 /* The size of `off_t', as computed by sizeof. */
 #define SIZEOF_OFF_T 8

 /* The size of `size_t', as computed by sizeof. */
-#define SIZEOF_SIZE_T 8
+#define SIZEOF_SIZE_T 4

 /* The size of `void *', as computed by sizeof. */
-#define SIZEOF_VOID_P 8
+#define SIZEOF_VOID_P 4

 /* Define to 1 if all of the C90 standard headers exist (not just the ones
    required in a freestanding environment). This macro is provided for
@@ -892,10 +892,10 @@
 /* #undef STRERROR_R_INT */

 /* Define to 1 to use ARMv8 CRC Extension. */
-#define USE_ARMV8_CRC32C 1
+/* #undef USE_ARMV8_CRC32C */

 /* Define to 1 to use ARMv8 CRC Extension with a runtime check. */
-/* #undef USE_ARMV8_CRC32C_WITH_RUNTIME_CHECK */
+#define USE_ARMV8_CRC32C_WITH_RUNTIME_CHECK 1

 /* Define to 1 to build with assertion checks. (--enable-cassert) */
 /* #undef USE_ASSERT_CHECKING */
@@ -989,7 +989,7 @@

 /* Number of bits in a file offset, on hosts where this is settable. */
-/* #undef _FILE_OFFSET_BITS */
+#define _FILE_OFFSET_BITS 64

 /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */
 /* #undef _LARGEFILE_SOURCE */

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
---
 meta-oe/recipes-dbs/postgresql/postgresql.inc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Khem Raj March 9, 2023, 5:51 p.m. UTC | #1
please rebase on master and resend.

On Thu, Mar 9, 2023 at 1:07 AM wangmy <wangmy@fujitsu.com> wrote:
>
> From: Wang Mingyu <wangmy@fujitsu.com>
>
> Error: Transaction test error:
> file /usr/include/pg_config.h conflicts between attempted installs of lib32-libpq-dev-15.2-r0.armv7ahf_neon and libpq-dev-15.2-r0.aarch64
> file /usr/include/pg_config_ext.h conflicts between attempted installs of lib32-libpq-dev-15.2-r0.armv7ahf_neon and libpq-dev-15.2-r0.aarch64
>
> The differences of pg_config_ext.h are as follows:
> @@ -5,4 +5,4 @@
>   */
>
>  /* Define to the name of a signed 64-bit integer type. */
> -#define PG_INT64_TYPE long int
> +#define PG_INT64_TYPE long long int
>
> The differences of pg_config.h are as follows:
> @@ -11,13 +11,13 @@
>  #define ALIGNOF_INT 4
>
>  /* The normal alignment of `long', in bytes. */
> -#define ALIGNOF_LONG 8
> +#define ALIGNOF_LONG 4
>
>  /* The normal alignment of `long long int', in bytes. */
> -/* #undef ALIGNOF_LONG_LONG_INT */
> +#define ALIGNOF_LONG_LONG_INT 8
>
>  /* The normal alignment of `PG_INT128_TYPE', in bytes. */
> -#define ALIGNOF_PG_INT128_TYPE 16
> +/* #undef ALIGNOF_PG_INT128_TYPE */
>
>  /* The normal alignment of `short', in bytes. */
>  #define ALIGNOF_SHORT 2
> @@ -369,10 +369,10 @@
>  #define HAVE_LOCALE_T 1
>
>  /* Define to 1 if `long int' works and is 64 bits. */
> -#define HAVE_LONG_INT_64 1
> +/* #undef HAVE_LONG_INT_64 */
>
>  /* Define to 1 if `long long int' works and is 64 bits. */
> -/* #undef HAVE_LONG_LONG_INT_64 */
> +#define HAVE_LONG_LONG_INT_64 1
>
>  /* Define to 1 if you have the <mbarrier.h> header file. */
>  /* #undef HAVE_MBARRIER_H */
> @@ -780,7 +780,7 @@
>  /* #undef HAVE___STRTOULL */
>
>  /* Define to the appropriate printf length modifier for 64-bit ints. */
> -#define INT64_MODIFIER "l"
> +#define INT64_MODIFIER "ll"
>
>  /* Define to 1 if `locale_t' requires <xlocale.h>. */
>  /* #undef LOCALE_T_IN_XLOCALE */
> @@ -814,10 +814,10 @@
>  #define PACKAGE_VERSION "15.2"
>
>  /* Define to the name of a signed 128-bit integer type. */
> -#define PG_INT128_TYPE __int128
> +/* #undef PG_INT128_TYPE */
>
>  /* Define to the name of a signed 64-bit integer type. */
> -#define PG_INT64_TYPE long int
> +#define PG_INT64_TYPE long long int
>
>  /* Define to the name of the default PostgreSQL service principal in Kerberos
>     (GSSAPI). (--with-krb-srvnam=NAME) */
> @@ -845,7 +845,7 @@
>  #define PG_VERSION_NUM 150002
>
>  /* A string containing the version number, platform, and C compiler */
> -#define PG_VERSION_STR "PostgreSQL 15.2 on aarch64-poky-linux-gnu, compiled by aarch64-poky-linux-gcc (GCC) 12.2.0, 64-bit"
> +#define PG_VERSION_STR "PostgreSQL 15.2 on arm-pokymllib32-linux-gnueabi, compiled by arm-pokymllib32-linux-gnueabi-gcc (GCC) 12.2.0, 32-bit"
>
>  /* Define to 1 to allow profiling output to be saved separately for each
>     process. */
> @@ -872,16 +872,16 @@
>  #define SIZEOF_BOOL 1
>
>  /* The size of `long', as computed by sizeof. */
> -#define SIZEOF_LONG 8
> +#define SIZEOF_LONG 4
>
>  /* The size of `off_t', as computed by sizeof. */
>  #define SIZEOF_OFF_T 8
>
>  /* The size of `size_t', as computed by sizeof. */
> -#define SIZEOF_SIZE_T 8
> +#define SIZEOF_SIZE_T 4
>
>  /* The size of `void *', as computed by sizeof. */
> -#define SIZEOF_VOID_P 8
> +#define SIZEOF_VOID_P 4
>
>  /* Define to 1 if all of the C90 standard headers exist (not just the ones
>     required in a freestanding environment). This macro is provided for
> @@ -892,10 +892,10 @@
>  /* #undef STRERROR_R_INT */
>
>  /* Define to 1 to use ARMv8 CRC Extension. */
> -#define USE_ARMV8_CRC32C 1
> +/* #undef USE_ARMV8_CRC32C */
>
>  /* Define to 1 to use ARMv8 CRC Extension with a runtime check. */
> -/* #undef USE_ARMV8_CRC32C_WITH_RUNTIME_CHECK */
> +#define USE_ARMV8_CRC32C_WITH_RUNTIME_CHECK 1
>
>  /* Define to 1 to build with assertion checks. (--enable-cassert) */
>  /* #undef USE_ASSERT_CHECKING */
> @@ -989,7 +989,7 @@
>
>  /* Number of bits in a file offset, on hosts where this is settable. */
> -/* #undef _FILE_OFFSET_BITS */
> +#define _FILE_OFFSET_BITS 64
>
>  /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */
>  /* #undef _LARGEFILE_SOURCE */
>
> Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
> ---
>  meta-oe/recipes-dbs/postgresql/postgresql.inc | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/meta-oe/recipes-dbs/postgresql/postgresql.inc b/meta-oe/recipes-dbs/postgresql/postgresql.inc
> index 60d44ce979..f7f35fe348 100644
> --- a/meta-oe/recipes-dbs/postgresql/postgresql.inc
> +++ b/meta-oe/recipes-dbs/postgresql/postgresql.inc
> @@ -36,7 +36,7 @@ LEAD_SONAME = "libpq.so"
>  # LDFLAGS for shared libraries
>  export LDFLAGS_SL = "${LDFLAGS}"
>
> -inherit autotools pkgconfig perlnative python3native python3targetconfig useradd update-rc.d systemd gettext cpan-base
> +inherit autotools pkgconfig perlnative python3native python3targetconfig useradd update-rc.d systemd gettext cpan-base multilib_header
>
>  CFLAGS += "-I${STAGING_INCDIR}/${PYTHON_DIR} -I${STAGING_INCDIR}/tcl8.6"
>
> @@ -183,6 +183,7 @@ INITSCRIPT_PARAMS = "start 64 . stop 36 0 1 2 3 4 5 6 ."
>  do_install:append() {
>      # install contrib
>      oe_runmake DESTDIR=${D} -C contrib install
> +    oe_multilib_header pg_config.h pg_config_ext.h
>      # install tutorial
>      install -d -m 0755 ${D}${libdir}/${BPN}/tutorial
>      install ${B}/src/tutorial/* ${D}${libdir}/${BPN}/tutorial
> --
> 2.34.1
>
> Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
> ---
>  meta-oe/recipes-dbs/postgresql/postgresql.inc | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/meta-oe/recipes-dbs/postgresql/postgresql.inc b/meta-oe/recipes-dbs/postgresql/postgresql.inc
> index 60d44ce979..15ecdeeb2e 100644
> --- a/meta-oe/recipes-dbs/postgresql/postgresql.inc
> +++ b/meta-oe/recipes-dbs/postgresql/postgresql.inc
> @@ -36,7 +36,7 @@ LEAD_SONAME = "libpq.so"
>  # LDFLAGS for shared libraries
>  export LDFLAGS_SL = "${LDFLAGS}"
>
> -inherit autotools pkgconfig perlnative python3native python3targetconfig useradd update-rc.d systemd gettext cpan-base
> +inherit autotools pkgconfig perlnative python3native python3targetconfig useradd update-rc.d systemd gettext cpan-base multilib_header
>
>  CFLAGS += "-I${STAGING_INCDIR}/${PYTHON_DIR} -I${STAGING_INCDIR}/tcl8.6"
>
> @@ -183,6 +183,7 @@ INITSCRIPT_PARAMS = "start 64 . stop 36 0 1 2 3 4 5 6 ."
>  do_install:append() {
>      # install contrib
>      oe_runmake DESTDIR=${D} -C contrib install
> +    oe_multilib_header pg_config.h pg_config_ext.h ecpg_config.h postgresql/server/pg_config.h postgresql/server/pg_config_ext.h
>      # install tutorial
>      install -d -m 0755 ${D}${libdir}/${BPN}/tutorial
>      install ${B}/src/tutorial/* ${D}${libdir}/${BPN}/tutorial
> --
> 2.34.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#101444): https://lists.openembedded.org/g/openembedded-devel/message/101444
> Mute This Topic: https://lists.openembedded.org/mt/97492429/1997914
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
diff mbox series

Patch

diff --git a/meta-oe/recipes-dbs/postgresql/postgresql.inc b/meta-oe/recipes-dbs/postgresql/postgresql.inc
index 60d44ce979..f7f35fe348 100644
--- a/meta-oe/recipes-dbs/postgresql/postgresql.inc
+++ b/meta-oe/recipes-dbs/postgresql/postgresql.inc
@@ -36,7 +36,7 @@  LEAD_SONAME = "libpq.so"
 # LDFLAGS for shared libraries
 export LDFLAGS_SL = "${LDFLAGS}"

-inherit autotools pkgconfig perlnative python3native python3targetconfig useradd update-rc.d systemd gettext cpan-base
+inherit autotools pkgconfig perlnative python3native python3targetconfig useradd update-rc.d systemd gettext cpan-base multilib_header

 CFLAGS += "-I${STAGING_INCDIR}/${PYTHON_DIR} -I${STAGING_INCDIR}/tcl8.6"

@@ -183,6 +183,7 @@  INITSCRIPT_PARAMS = "start 64 . stop 36 0 1 2 3 4 5 6 ."
 do_install:append() {
     # install contrib
     oe_runmake DESTDIR=${D} -C contrib install
+    oe_multilib_header pg_config.h pg_config_ext.h
     # install tutorial
     install -d -m 0755 ${D}${libdir}/${BPN}/tutorial
     install ${B}/src/tutorial/* ${D}${libdir}/${BPN}/tutorial
--
2.34.1

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
---
 meta-oe/recipes-dbs/postgresql/postgresql.inc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/meta-oe/recipes-dbs/postgresql/postgresql.inc b/meta-oe/recipes-dbs/postgresql/postgresql.inc
index 60d44ce979..15ecdeeb2e 100644
--- a/meta-oe/recipes-dbs/postgresql/postgresql.inc
+++ b/meta-oe/recipes-dbs/postgresql/postgresql.inc
@@ -36,7 +36,7 @@  LEAD_SONAME = "libpq.so"
 # LDFLAGS for shared libraries
 export LDFLAGS_SL = "${LDFLAGS}"
 
-inherit autotools pkgconfig perlnative python3native python3targetconfig useradd update-rc.d systemd gettext cpan-base
+inherit autotools pkgconfig perlnative python3native python3targetconfig useradd update-rc.d systemd gettext cpan-base multilib_header
 
 CFLAGS += "-I${STAGING_INCDIR}/${PYTHON_DIR} -I${STAGING_INCDIR}/tcl8.6"
 
@@ -183,6 +183,7 @@  INITSCRIPT_PARAMS = "start 64 . stop 36 0 1 2 3 4 5 6 ."
 do_install:append() {
     # install contrib
     oe_runmake DESTDIR=${D} -C contrib install
+    oe_multilib_header pg_config.h pg_config_ext.h ecpg_config.h postgresql/server/pg_config.h postgresql/server/pg_config_ext.h
     # install tutorial
     install -d -m 0755 ${D}${libdir}/${BPN}/tutorial
     install ${B}/src/tutorial/* ${D}${libdir}/${BPN}/tutorial