@@ -395,8 +395,14 @@ jobs:
395
395
echo "Debug: LDAP environment variables cleared"
396
396
fi
397
397
398
- # Set C++17 flag for ICU4C compatibility
399
- export CXXFLAGS="$CXXFLAGS -std=c++17"
398
+ # Set C++17 flag for ICU4C compatibility - set explicitly
399
+ export CXXFLAGS="-std=c++17 -stdlib=libc++"
400
+ export CFLAGS="-std=c++17"
401
+ export CPPFLAGS="$CPPFLAGS -std=c++17"
402
+ echo "Set C++17 flags for configure step"
403
+ echo "CXXFLAGS: $CXXFLAGS"
404
+ echo "CFLAGS: $CFLAGS"
405
+ echo "CPPFLAGS: $CPPFLAGS"
400
406
401
407
# Try to find readline.h and set the path explicitly
402
408
READLINE_PATH=$(brew --prefix readline)
@@ -472,14 +478,23 @@ jobs:
472
478
echo "Final extensions: $FINAL_EXTENSIONS"
473
479
fi
474
480
481
+ # Add C++17 configure option for macOS
482
+ if [[ "${{ matrix.platform }}" == "darwin" ]]; then
483
+ CONFIGURE_CXX="CXXFLAGS=-std=c++17 -stdlib=libc++ CFLAGS=-std=c++17"
484
+ echo "Using C++17 configure flags: $CONFIGURE_CXX"
485
+ else
486
+ CONFIGURE_CXX=""
487
+ fi
488
+
475
489
./configure \
476
490
--prefix="$INSTALL_PREFIX" \
477
491
--disable-debug \
478
492
--enable-shared \
479
493
--with-pic \
480
494
$FINAL_EXTENSIONS \
481
495
$EXTRA_CONFIG \
482
- $CURL_CONFIG
496
+ $CURL_CONFIG \
497
+ $CONFIGURE_CXX
483
498
484
499
- name : Build PHP
485
500
run : |
@@ -488,16 +503,32 @@ jobs:
488
503
# Use all available CPU cores for faster builds
489
504
if [[ "${{ matrix.platform }}" == "darwin" ]]; then
490
505
JOBS=$(sysctl -n hw.ncpu)
491
- # Ensure C++17 is used during build
492
- export CXXFLAGS="$CXXFLAGS -std=c++17"
493
- export CFLAGS="$CFLAGS -std=c++17"
506
+ # Ensure C++17 is used during build - set explicitly
507
+ export CXXFLAGS="-std=c++17 -stdlib=libc++"
508
+ export CFLAGS="-std=c++17"
509
+ export CPPFLAGS="$CPPFLAGS -std=c++17"
510
+ echo "Set C++17 flags for macOS build"
494
511
else
495
512
JOBS=$(nproc)
496
513
fi
497
514
498
515
echo "Building PHP with $JOBS parallel jobs"
499
516
echo "CXXFLAGS: $CXXFLAGS"
500
517
echo "CFLAGS: $CFLAGS"
518
+ echo "CPPFLAGS: $CPPFLAGS"
519
+
520
+ # Show compiler version and flags
521
+ echo "Compiler info:"
522
+ which gcc || which clang || echo "No compiler found"
523
+ gcc --version 2>/dev/null || clang --version 2>/dev/null || echo "Could not get compiler version"
524
+
525
+ # Check available C++ standards
526
+ echo "Checking available C++ standards:"
527
+ if command -v clang++ >/dev/null 2>&1; then
528
+ echo "Available C++ standards for clang++:"
529
+ clang++ --help | grep -E "std=" || echo "Could not determine available standards"
530
+ fi
531
+
501
532
make -j$JOBS
502
533
503
534
- name : Install PHP
0 commit comments