Opened 3 years ago

Last modified 14 months ago

#64914 new defect

nss fails to build on Leopard for ppc64

Reported by: barracuda156 Owned by:
Priority: Normal Milestone:
Component: ports Version: 2.7.2
Keywords: powerpc, leopard, ppc64 Cc: cooljeanius (Eric Gallager)
Port: nss

Description

ld warning: in /opt/local/lib/nspr/libplc4.dylib, file is not of required architecture
ld warning: in /opt/local/lib/nspr/libplds4.dylib, file is not of required architecture
ld warning: in /opt/local/lib/nspr/libnspr4.dylib, file is not of required architecture
Undefined symbols:
  "_PR_WaitCondVar", referenced from:
      _NSSRWLock_LockWrite_Util in nssrwlk.o
      _NSSRWLock_LockRead_Util in nssrwlk.o
  "_PR_LoadLibraryWithFlags", referenced from:
      _loader_LoadLibInReferenceDir in secload.o
      _PORT_LoadLibraryFromOrigin in secload.o
  "_PR_Lock", referenced from:
      _NSSRWLock_UnlockWrite_Util in nssrwlk.o
      _NSSRWLock_UnlockRead_Util in nssrwlk.o
      _NSSRWLock_LockWrite_Util in nssrwlk.o
      _NSSRWLock_LockRead_Util in nssrwlk.o
      _PORT_ArenaMark_Util in secport.o
      _port_ArenaRelease in secport.o
      _PORT_ArenaAlloc_Util in secport.o
      _PORT_FreeArena_Util in secport.o
      _PORT_ArenaGrow_Util in secport.o
  "_PL_HashTableAdd", referenced from:
      _SECOID_Init in secoid.o
      _SECOID_Init in secoid.o
      _SECOID_AddEntry_Util in secoid.o
  "_PL_ArenaRelease", referenced from:
      _port_ArenaRelease in secport.o
      _port_ArenaRelease in secport.o
  "_PR_Access", referenced from:
      _NSSUTIL_DoModuleDBFunction in utilmod.o
  "_PL_ArenaGrow", referenced from:
      _PORT_ArenaGrow_Util in secport.o
      _PORT_ArenaGrow_Util in secport.o
  "_PR_Rename", referenced from:
      _nssutil_DeleteSecmodDBEntry in utilmod.o
  "_PR_Calloc", referenced from:
      _NSSBase64_DecodeBuffer_Util in nssb64d.o
      _NSSBase64Decoder_Create_Util in nssb64d.o
      _pl_base64_create_encoder in nssb64e.o
      _NSSRWLock_New_Util in nssrwlk.o
      _PORT_ZAlloc_Util in secport.o
  "_PR_GetError", referenced from:
      _PORT_GetError_Util in secport.o
  "_PR_DestroyCondVar", referenced from:
      _NSSRWLock_Destroy_Util in nssrwlk.o
      _NSSRWLock_Destroy_Util in nssrwlk.o
  "_PR_GetLibraryFilePathname", referenced from:
      _PORT_LoadLibraryFromOrigin in secload.o
  "_PL_strpbrk", referenced from:
      _SECOID_Init in secoid.o
  "_PL_FreeArenaPool", referenced from:
      _PORT_DestroyCheapArena in secport.o
      _PORT_FreeArena_Util in secport.o
  "_PR_ExplodeTime", referenced from:
      _DER_TimeToGeneralizedTimeArena_Util in dertime.o
      _DER_TimeToUTCTimeArena in dertime.o
      _CERT_GenTime2FormattedAscii_Util in sectime.o
      _CERT_UTCTime2FormattedAscii in sectime.o
  "_PR_NotifyCondVar", referenced from:
      _NSSRWLock_UnlockWrite_Util in nssrwlk.o
      _NSSRWLock_UnlockRead_Util in nssrwlk.o
  "_PR_smprintf", referenced from:
      _NSSUTIL_DoModuleDBFunction in utilmod.o
      _NSSUTIL_DoModuleDBFunction in utilmod.o
      _nssutil_formatPair in utilpars.o
      _nssutil_formatPair in utilpars.o
      _NSSUTIL_MkSlotString in utilpars.o
      _NSSUTIL_MkSlotString in utilpars.o
      _NSSUTIL_MkSlotString in utilpars.o
      _NSSUTIL_MkSlotString in utilpars.o
      _NSSUTIL_MkModuleSpecEx in utilpars.o
      _NSSUTIL_MkModuleSpecEx in utilpars.o
      __NSSUTIL_GetSecmodName in utilpars.o
      __NSSUTIL_GetSecmodName in utilpars.o
      _NSSUTIL_MkNSSString in utilpars.o
      _NSSUTIL_MkNSSString in utilpars.o
      _NSSUTIL_MkNSSString in utilpars.o
      _NSSUTIL_MkNSSString in utilpars.o
      _NSSUTIL_MkNSSString in utilpars.o
      _NSSUTIL_MkNSSString in utilpars.o
      _NSSUTIL_MkNSSString in utilpars.o
  "_PR_NotifyAllCondVar", referenced from:
      _NSSRWLock_UnlockWrite_Util in nssrwlk.o
  "_PL_InitArenaPool", referenced from:
      _PORT_InitCheapArena in secport.o
      _PORT_NewArena_Util in secport.o
  "_PR_NewCondVar", referenced from:
      _NSSRWLock_New_Util in nssrwlk.o
      _NSSRWLock_New_Util in nssrwlk.o
  "_PL_CompareValues", referenced from:
      _PL_CompareValues$non_lazy_ptr in secoid.o
  "_PR_Malloc", referenced from:
      _NSSBase64_DecodeBuffer_Util in nssb64d.o
      _NSSBase64Decoder_Update_Util in nssb64d.o
      _pl_base64_create_encoder in nssb64e.o
      _NSSRWLock_New_Util in nssrwlk.o
      _PORT_LoadLibraryFromOrigin in secload.o
      _PORT_LoadLibraryFromOrigin in secload.o
      _PORT_Alloc_Util in secport.o
  "_PR_NewLock", referenced from:
      _NSSRWLock_New_Util in nssrwlk.o
      _PORT_NewArena_Util in secport.o
  "_PR_GetEnvSecure", referenced from:
      _SECOID_Init in secoid.o
      _SECOID_Init in secoid.o
      _SetupUseFreeList in secport.o
      __NSSUTIL_EvaluateConfigDir in utilpars.o
  "_PR_ImplodeTime", referenced from:
      _der_TimeStringToTime in dertime.o
  "_PR_GetDirectorySeparator", referenced from:
      _loader_LoadLibInReferenceDir in secload.o
  "_PL_HashTableLookup", referenced from:
      _SECOID_FindOID_Util in secoid.o
  "_PR_snprintf", referenced from:
      _pk11uri_AppendAttributeListToBuffer in pkcs11uri.o
  "_PL_FinishArenaPool", referenced from:
      _PORT_DestroyCheapArena in secport.o
      _PORT_FreeArena_Util in secport.o
  "_PL_strncasecmp", referenced from:
      _SEC_StringToOID in oidstring.o
      _nssutil_DeleteSecmodDBEntry in utilmod.o
      _nssutil_DeleteSecmodDBEntry in utilmod.o
      _NSSUTIL_DoModuleDBFunction in utilmod.o
      _NSSUTIL_DoModuleDBFunction in utilmod.o
      _NSSUTIL_DoModuleDBFunction in utilmod.o
      _NSSUTIL_ArgParseCipherFlags in utilpars.o
      _NSSUTIL_ArgGetParamValue in utilpars.o
      _NSSUTIL_ArgParseSlotFlags in utilpars.o
      _NSSUTIL_ArgHasFlag in utilpars.o
      __NSSUTIL_GetSecmodName in utilpars.o
      __NSSUTIL_GetSecmodName in utilpars.o
      _NSSUTIL_ArgParseModuleSpec in utilpars.o
      _NSSUTIL_ArgParseModuleSpec in utilpars.o
      _NSSUTIL_ArgParseModuleSpec in utilpars.o
      _NSSUTIL_ArgParseModuleSpec in utilpars.o
      _NSSUTIL_ArgParseModuleSpecEx in utilpars.o
      _NSSUTIL_ArgParseModuleSpecEx in utilpars.o
      _NSSUTIL_ArgParseModuleSpecEx in utilpars.o
      _NSSUTIL_ArgParseModuleSpecEx in utilpars.o
      _NSSUTIL_ArgParseModuleSpecEx in utilpars.o
      _NSSUTIL_AddNSSFlagToModuleSpec in utilpars.o
      _PK11URI_ParseURI in pkcs11uri.o
  "_PR_Free", referenced from:
      _PL_DestroyBase64Decoder in nssb64d.o
      _PL_DestroyBase64Decoder in nssb64d.o
      _NSSBase64_DecodeBuffer_Util in nssb64d.o
      _PL_DestroyBase64Encoder in nssb64e.o
      _PL_DestroyBase64Encoder in nssb64e.o
      _pl_base64_create_encoder in nssb64e.o
      _NSSBase64_EncodeItem_Util in nssb64e.o
      _NSSRWLock_Destroy_Util in nssrwlk.o
      _NSSRWLock_Destroy_Util in nssrwlk.o
      _PORT_LoadLibraryFromOrigin in secload.o
      _PORT_LoadLibraryFromOrigin in secload.o
      _PORT_LoadLibraryFromOrigin in secload.o
      _PORT_LoadLibraryFromOrigin in secload.o
      _PORT_LoadLibraryFromOrigin in secload.o
      _PORT_LoadLibraryFromOrigin in secload.o
      _PORT_LoadLibraryFromOrigin in secload.o
      _PORT_ZFree_Util in secport.o
      _PORT_Free_Util in secport.o
      _NSS_PutEnv_Util in secport.o
      _PORT_NewArena_Util in secport.o
  "_PL_ArenaAllocate", referenced from:
      _PORT_ArenaAlloc_Util in secport.o
      _PORT_ArenaAlloc_Util in secport.o
  "_PL_ClearArenaPool", referenced from:
      _PORT_FreeArena_Util in secport.o
  "_PL_strcasecmp", referenced from:
      _PORT_RegExpCaseSearch in portreg.o
      _NSSUTIL_ArgParseSlotFlags in utilpars.o
      _NSSUTIL_ArgParseSlotInfo in utilpars.o
      _NSSUTIL_ArgParseSlotInfo in utilpars.o
  "_PR_Realloc", referenced from:
      _NSSBase64Decoder_Update_Util in nssb64d.o
      _PORT_Realloc_Util in secport.o
  "_PR_GMTParameters", referenced from:
      _PR_GMTParameters$non_lazy_ptr in dertime.o
      _PR_GMTParameters$non_lazy_ptr in sectime.o
  "_PL_HashTableDestroy", referenced from:
      _SECOID_Shutdown in secoid.o
      _SECOID_Shutdown in secoid.o
      _SECOID_Shutdown in secoid.o
  "_PL_HashTableLookupConst", referenced from:
      _SECOID_FindOIDByMechanism in secoid.o
      _SECOID_FindOID_Util in secoid.o
  "_PR_Delete", referenced from:
      _nssutil_DeleteSecmodDBEntry in utilmod.o
      _nssutil_DeleteSecmodDBEntry in utilmod.o
      _nssutil_DeleteSecmodDBEntry in utilmod.o
  "_PR_ErrorInstallTable", referenced from:
      _nss_InitializePRErrorTableOnce in errstrs.o
  "_PR_LocalTimeParameters", referenced from:
      _PR_LocalTimeParameters$non_lazy_ptr in sectime.o
  "_PL_strlen", referenced from:
      _SEC_StringToOID in oidstring.o
  "_PR_GetCurrentThread", referenced from:
      _NSSRWLock_HaveWriteLock_Util in nssrwlk.o
      _NSSRWLock_UnlockWrite_Util in nssrwlk.o
      _NSSRWLock_LockWrite_Util in nssrwlk.o
      _NSSRWLock_LockRead_Util in nssrwlk.o
  "_PR_SetError", referenced from:
      _PL_DestroyBase64Decoder in nssb64d.o
      _NSSBase64Decoder_Update_Util in nssb64d.o
      _NSSBase64Decoder_Create_Util in nssb64d.o
      _pl_base64_encode_buffer in nssb64e.o
      _NSSBase64Encoder_Update_Util in nssb64e.o
      _PL_DestroyBase64Encoder in nssb64e.o
      _NSSBase64_EncodeItem_Util in nssb64e.o
      _NSSBase64Encoder_Create_Util in nssb64e.o
      _PORT_ArenaAlloc_Util in secport.o
      _PORT_SetError_Util in secport.o
      _PORT_ZAlloc_Util in secport.o
      _PORT_ZAllocAligned_Util in secport.o
      _PORT_Alloc_Util in secport.o
      _PORT_Realloc_Util in secport.o
      _PORT_ArenaGrow_Util in secport.o
      _PORT_NewArena_Util in secport.o
  "_PL_NewHashTable", referenced from:
      _SECOID_Init in secoid.o
      _SECOID_Init in secoid.o
      _SECOID_AddEntry_Util in secoid.o
  "_PR_CallOnce", referenced from:
      _NSS_InitializePRErrorTable in errstrs.o
      _PORT_DestroyCheapArena in secport.o
      _PORT_FreeArena_Util in secport.o
  "_PR_smprintf_free", referenced from:
      _NSSUTIL_DoModuleDBFunction in utilmod.o
      _NSSUTIL_DoModuleDBFunction in utilmod.o
      _NSSUTIL_DoModuleDBFunction in utilmod.o
      _NSSUTIL_MkSlotString in utilpars.o
      _NSSUTIL_MkSlotString in utilpars.o
      _NSSUTIL_MkSlotString in utilpars.o
      _NSSUTIL_MkSlotString in utilpars.o
      _NSSUTIL_MkModuleSpecEx in utilpars.o
      _NSSUTIL_MkModuleSpecEx in utilpars.o
      _NSSUTIL_MkModuleSpecEx in utilpars.o
      _NSSUTIL_MkModuleSpecEx in utilpars.o
      _NSSUTIL_MkModuleSpecEx in utilpars.o
      _NSSUTIL_MkNSSString in utilpars.o
      _NSSUTIL_MkNSSString in utilpars.o
      _NSSUTIL_MkNSSString in utilpars.o
      _NSSUTIL_MkNSSString in utilpars.o
      _NSSUTIL_MkNSSString in utilpars.o
      _NSSUTIL_MkNSSString in utilpars.o
      _NSSUTIL_MkNSSString in utilpars.o
      _NSSUTIL_MkNSSString in utilpars.o
      _NSSUTIL_MkNSSString in utilpars.o
      _NSSUTIL_MkNSSString in utilpars.o
      _NSSUTIL_MkNSSString in utilpars.o
  "_PR_DestroyLock", referenced from:
      _NSSRWLock_Destroy_Util in nssrwlk.o
      _PORT_FreeArena_Util in secport.o
  "_PR_FormatTime", referenced from:
      _CERT_GenTime2FormattedAscii_Util in sectime.o
      _CERT_UTCTime2FormattedAscii in sectime.o
  "_PR_Unlock", referenced from:
      _NSSRWLock_UnlockWrite_Util in nssrwlk.o
      _NSSRWLock_UnlockRead_Util in nssrwlk.o
      _NSSRWLock_LockWrite_Util in nssrwlk.o
      _NSSRWLock_LockRead_Util in nssrwlk.o
      _PORT_ArenaMark_Util in secport.o
      _port_ArenaRelease in secport.o
      _PORT_ArenaAlloc_Util in secport.o
      _PORT_FreeArena_Util in secport.o
      _PORT_ArenaGrow_Util in secport.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make[3]: *** [Output.OBJD/libnssutil3.dylib] Error 1
make[3]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_nss/nss/work/nss-3.76.1/nss/lib/util'
make[2]: *** [util] Error 2
make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_nss/nss/work/nss-3.76.1/nss/lib'
make[1]: *** [lib] Error 2
make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_nss/nss/work/nss-3.76.1/nss'
make: *** [all] Error 2

Attachments (2)

main.log (821.9 KB) - added by barracuda156 3 years ago.
main_2.log (2.3 MB) - added by barracuda156 3 years ago.

Change History (11)

Changed 3 years ago by barracuda156

Attachment: main.log added

comment:1 in reply to:  description ; Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

Replying to barracuda156:

ld warning: in /opt/local/lib/nspr/libplc4.dylib, file is not of required architecture
ld warning: in /opt/local/lib/nspr/libplds4.dylib, file is not of required architecture
ld warning: in /opt/local/lib/nspr/libnspr4.dylib, file is not of required architecture

Well then of what architecture are they?

lipo -info /opt/local/lib/nspr/lib{plc,plds,nspr}4.dylib

And for what architecture does MacPorts think it installed them?

port -v installed $(port provides /opt/local/lib/nspr/lib{plc,plds,nspr}4.dylib)

comment:2 in reply to:  1 Changed 3 years ago by barracuda156

Replying to ryandesign:

Replying to barracuda156:

ld warning: in /opt/local/lib/nspr/libplc4.dylib, file is not of required architecture
ld warning: in /opt/local/lib/nspr/libplds4.dylib, file is not of required architecture
ld warning: in /opt/local/lib/nspr/libnspr4.dylib, file is not of required architecture

Well then of what architecture are they?

lipo -info /opt/local/lib/nspr/lib{plc,plds,nspr}4.dylib

And for what architecture does MacPorts think it installed them?

port -v installed $(port provides /opt/local/lib/nspr/lib{plc,plds,nspr}4.dylib)

I have fixed nspr +universal only now, so:

36-111:~ svacchanda$ lipo -info /opt/local/lib/nspr/lib{plc,plds,nspr}4.dylib
Architectures in the fat file: /opt/local/lib/nspr/libplc4.dylib are: ppc7400 ppc64 
Architectures in the fat file: /opt/local/lib/nspr/libplds4.dylib are: ppc7400 ppc64 
Architectures in the fat file: /opt/local/lib/nspr/libnspr4.dylib are: ppc7400 ppc64 
36-111:~ svacchanda$ port -v installed $(port provides /opt/local/lib/nspr/lib{plc,plds,nspr}4.dylib)
The following ports are currently installed:
  nspr @4.33_0 requested_variants='-universal' platform='darwin 9' archs='ppc' date='2022-02-13T02:38:23+0800'
  nspr @4.33_1+universal (active) requested_variants='+universal' platform='darwin 9' archs='ppc ppc64' date='2022-05-07T15:33:28+0800'

And now nss +universal fails on:

mpi/mpi.c: In function ‘s_mp_div’:
mpi/mpi.c:4257: warning: declaration of ‘div’ shadows a global declaration
/usr/include/stdlib.h:158: warning: shadowed declaration is here
/usr/bin/gcc-4.2 -Os -std=c99 -arch ppc64 -o Output.OBJD/Darwin_SINGLE_SHLIB/mp_gf2m.o -c -std=c99 -Os -fPIC -Dppc -fno-common -pipe -DDARWIN -DHAVE_STRERROR -DHAVE_BSD_FLOCK  -Wall -Wshadow -DNSS_NO_GCC48 -DXP_UNIX -DSHLIB_SUFFIX=\"dylib\" -DSHLIB_PREFIX=\"lib\" -DSHLIB_VERSION=\"3\" -DSOFTOKEN_SHLIB_VERSION=\"3\" -DRIJNDAEL_INCLUDE_TABLES -UDEBUG -DNDEBUG -DNSS_DISABLE_AVX2 -DNSS_NO_INIT_SUPPORT -DUSE_UTIL_DIRECTLY -DNO_NSPR_10_SUPPORT -DSSL_DISABLE_DEPRECATED_CIPHER_SUITE_NAMES -DNSS_USE_64 -DKRML_VERIFIED_UINT128 -DMP_API_COMPATIBLE -I/opt/local/include/nspr -I../../../dist/Output.OBJD/include -I../../../dist/public/nss -I../../../dist/private/nss -Impi -Iecl -Iverified -Iverified/kremlin/include -Iverified/kremlin/kremlib/dist/minimal -Ideprecated  mpi/mp_gf2m.c
/usr/bin/gcc-4.2 -Os -std=c99 -arch ppc64 -o Output.OBJD/Darwin_SINGLE_SHLIB/mpcpucache.o -c -std=c99 -Os -fPIC -Dppc -fno-common -pipe -DDARWIN -DHAVE_STRERROR -DHAVE_BSD_FLOCK  -Wall -Wshadow -DNSS_NO_GCC48 -DXP_UNIX -DSHLIB_SUFFIX=\"dylib\" -DSHLIB_PREFIX=\"lib\" -DSHLIB_VERSION=\"3\" -DSOFTOKEN_SHLIB_VERSION=\"3\" -DRIJNDAEL_INCLUDE_TABLES -UDEBUG -DNDEBUG -DNSS_DISABLE_AVX2 -DNSS_NO_INIT_SUPPORT -DUSE_UTIL_DIRECTLY -DNO_NSPR_10_SUPPORT -DSSL_DISABLE_DEPRECATED_CIPHER_SUITE_NAMES -DNSS_USE_64 -DKRML_VERIFIED_UINT128 -DMP_API_COMPATIBLE -I/opt/local/include/nspr -I../../../dist/Output.OBJD/include -I../../../dist/public/nss -I../../../dist/private/nss -Impi -Iecl -Iverified -Iverified/kremlin/include -Iverified/kremlin/kremlib/dist/minimal -Ideprecated  mpi/mpcpucache.c
mpi/mpcpucache.c: In function ‘dcbzl’:
mpi/mpcpucache.c:730: error: nested functions are disabled, use -fnested-functions to re-enable
mpi/mpcpucache.c:730: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘asm’
mpi/mpcpucache.c:730: warning: implicit declaration of function ‘asm’
mpi/mpcpucache.c:730: error: lvalue required as left operand of assignment
mpi/mpcpucache.c:732: error: ‘a’ undeclared (first use in this function)
mpi/mpcpucache.c:732: error: (Each undeclared identifier is reported only once
mpi/mpcpucache.c:732: error: for each function it appears in.)
mpi/mpcpucache.c:731: error: invalid lvalue in asm output 0
make[4]: *** [Output.OBJD/Darwin_SINGLE_SHLIB/mpcpucache.o] Error 1
make[4]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_nss/nss/work/nss-3.78-ppc64/nss/lib/freebl'
make[3]: *** [freebl_FREEBL_BUILD_SINGLE_SHLIB] Error 2
make[3]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_nss/nss/work/nss-3.78-ppc64/nss/lib/freebl'
make[2]: *** [freebl] Error 2
make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_nss/nss/work/nss-3.78-ppc64/nss/lib'
make[1]: *** [lib] Error 2
make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_nss/nss/work/nss-3.78-ppc64/nss'
make: *** [all] Error 2
make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_nss/nss/work/nss-3.78-ppc64/nss'
Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_nss/nss/work/nss-3.78-ppc64/nss" && /usr/bin/make -j1 -w all NSS_DISABLE_GTESTS=1 NSS_ENABLE_WERROR=0 NSPR_INCLUDE_DIR=/opt/local/include/nspr NSPR_LIB_DIR=/opt/local/lib/nspr NSS_USE_SYSTEM_SQLITE=1 USE_SYSTEM_ZLIB=1 BUILD_OPT=1 OPTIMIZER="-Os" OBJDIR_NAME="Output.OBJD" USE_64=1 CC="/usr/bin/gcc-4.2 -Os -std=c99 -arch ppc64" CCC="/usr/bin/g++-4.2 -Os -arch ppc64" 
Exit code: 2

Changed 3 years ago by barracuda156

Attachment: main_2.log added

comment:3 Changed 3 years ago by kencu (Ken)

I would try what it says to try, and work from there:

mpi/mpcpucache.c:730: error: nested functions are disabled, use -fnested-functions to re-enable

let us know!

comment:4 in reply to:  3 ; Changed 3 years ago by barracuda156

Replying to kencu:

I would try what it says to try, and work from there:

mpi/mpcpucache.c:730: error: nested functions are disabled, use -fnested-functions to re-enable

let us know!

Thank you, I will update on this soon!

comment:5 in reply to:  3 Changed 3 years ago by barracuda156

Replying to kencu:

I would try what it says to try, and work from there:

mpi/mpcpucache.c:730: error: nested functions are disabled, use -fnested-functions to re-enable

let us know!

36-111:~ svacchanda$ cd /opt/local/var/macports/build/_opt_PPCLeopardPorts_net_nss/nss/work/nss-3.78/nss/lib/freebl 
36-111:freebl svacchanda$ /opt/local/bin/gcc-mp-11 -Os -std=c99 -arch ppc64 -o Output.OBJD/Darwin_SINGLE_SHLIB/mpcpucache.o -c -std=c99 -Os -fPIC -Dppc -fnested-functions -fno-common -pipe -DDARWIN -DHAVE_STRERROR -DHAVE_BSD_FLOCK  -Wall -Wshadow -DNSS_NO_GCC48 -DXP_UNIX -DSHLIB_SUFFIX=\"dylib\" -DSHLIB_PREFIX=\"lib\" -DSHLIB_VERSION=\"3\" -DSOFTOKEN_SHLIB_VERSION=\"3\" -DRIJNDAEL_INCLUDE_TABLES -UDEBUG -DNDEBUG -DNSS_DISABLE_AVX2 -DNSS_NO_INIT_SUPPORT -DUSE_UTIL_DIRECTLY -DNO_NSPR_10_SUPPORT -DSSL_DISABLE_DEPRECATED_CIPHER_SUITE_NAMES -DNSS_USE_64 -DHAVE_INT128_SUPPORT -DMP_API_COMPATIBLE -I/opt/local/include/nspr -I../../../dist/Output.OBJD/include -I../../../dist/public/nss -I../../../dist/private/nss -Impi -Iecl -Iverified -Iverified/kremlin/include -Iverified/kremlin/kremlib/dist/minimal -Ideprecated  mpi/mpcpucache.c
gcc-mp-11: error: unrecognized command-line option '-fnested-functions'; did you mean '-Wunused-function'?

(This is ran from outside the build, but anyway gcc11 does not understand this flag, it seems.)

I think this assembler code may be again simple invalid on Darwin. Notice, there is no case for ppc, and ppc builds normally. There is a case for ppc64, and it fails.

comment:6 in reply to:  4 Changed 3 years ago by barracuda156

Replying to kencu:

let us know!

Bingo:

36-111:nss-3.78 svacchanda$ port -v installed nss
The following ports are currently installed:
  nss @3.75_0 requested_variants='-universal' platform='darwin 9' archs='ppc' date='2022-02-13T02:47:09+0800'
  nss @3.78_0+universal (active) requested_variants='+universal' platform='darwin 9' archs='ppc ppc64' date='2022-05-12T21:44:46+0800'

Developer's didn't think to made a correct conditional (or otherwise read ABI and make a case for Darwin), and invalid assembler was used.

Version 0, edited 3 years ago by barracuda156 (next)

comment:7 Changed 3 years ago by barracuda156

I.e. this fixes the build:

--- nss/lib/freebl/mpi/mpcpucache.c.orig	1970-01-01 08:00:00.000000000 +0800
+++ nss/lib/freebl/mpi/mpcpucache.c	2022-05-12 21:28:37.000000000 +0800
@@ -705,7 +705,7 @@
 #define MPI_GET_PROCESSOR_LINE_SIZE_DEFINED 1
 #endif
 
-#if defined(__ppc64__)
+#if !defined(__APPLE__) && defined(__ppc64__)
 /*
  *  Sigh, The PPC has some really nice features to help us determine cache
  *  size, since it had lots of direct control functions to do so. The POWER

comment:8 Changed 3 years ago by barracuda156

Opened a ticket with upstream, hopefully they gonna at least implement my proposal if no one bothers to fix it neatly.

https://bugzilla.mozilla.org/show_bug.cgi?id=1769063

comment:9 Changed 14 months ago by cooljeanius (Eric Gallager)

Cc: cooljeanius added
Note: See TracTickets for help on using tickets.