@@ -349,6 +349,17 @@ jobs:
349349 -
350350 name : Checkout
351351 uses : actions/checkout@v6
352+ -
353+ name : Detect Visual Studio
354+ if : matrix.compiler == 'msvc'
355+ id : vcvars
356+ uses : mlocati/inspect-visualstudio@v1
357+ with :
358+ architecture : ${{ matrix.bits }}
359+ windows-paths : |
360+ INCLUDE
361+ LIB
362+ PATH
352363 -
353364 name : Create directory structure
354365 shell : pwsh
@@ -376,6 +387,8 @@ jobs:
376387 name : Set variables
377388 id : vars
378389 shell : pwsh
390+ env :
391+ VC_PATH : ${{ steps.vcvars.outputs.path }}
379392 run : >
380393 ./service/case-vars.ps1
381394 -Bits ${{ matrix.bits }}
@@ -389,6 +402,7 @@ jobs:
389402 -JsonCVersionDefault '${{ needs.versions.outputs.json-c-version-default }}'
390403 -GettextVersion '${{ needs.versions.outputs.gettext-version }}'
391404 -SignpathSigningPolicyDefault '${{ needs.versions.outputs.signpath-signing-policy-default }}'
405+ -VCPath $env:VC_PATH
392406 -
393407 name : Install Cygwin
394408 uses : cygwin/cygwin-install-action@v6
@@ -534,8 +548,8 @@ jobs:
534548 id : iconv-configure
535549 working-directory : src\libiconv-${{ needs.versions.outputs.iconv-version }}
536550 env :
537- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
538- LIB : ${{ steps.vars .outputs.lib-env-var }}
551+ INCLUDE : ${{ steps.vcvars .outputs.include }}
552+ LIB : ${{ steps.vcvars .outputs.lib }}
539553 run : |
540554 mkdir build
541555 cd build
@@ -544,32 +558,32 @@ jobs:
544558 name : Compile iconv (1st time)
545559 working-directory : src\libiconv-${{ needs.versions.outputs.iconv-version }}\build
546560 env :
547- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
548- LIB : ${{ steps.vars .outputs.lib-env-var }}
561+ INCLUDE : ${{ steps.vcvars .outputs.include }}
562+ LIB : ${{ steps.vcvars .outputs.lib }}
549563 run : make --jobs=$(nproc)
550564 -
551565 name : Check iconv (1st time)
552566 if : needs.versions.outputs.quick != 'yes'
553567 working-directory : src\libiconv-${{ needs.versions.outputs.iconv-version }}\build
554568 env :
555- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
556- LIB : ${{ steps.vars .outputs.lib-env-var }}
569+ INCLUDE : ${{ steps.vcvars .outputs.include }}
570+ LIB : ${{ steps.vcvars .outputs.lib }}
557571 run : make --jobs=$(nproc) check
558572 -
559573 name : Install iconv (1st time)
560574 working-directory : src\libiconv-${{ needs.versions.outputs.iconv-version }}\build
561575 env :
562- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
563- LIB : ${{ steps.vars .outputs.lib-env-var }}
576+ INCLUDE : ${{ steps.vcvars .outputs.include }}
577+ LIB : ${{ steps.vcvars .outputs.lib }}
564578 run : make --jobs=$(nproc) ${{ steps.vars.outputs.make-install-argument }}
565579 -
566580 name : Configure curl
567581 if : steps.vars.outputs.curl-version
568582 id : curl-configure
569583 working-directory : src\curl-${{ steps.vars.outputs.curl-version }}
570584 env :
571- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
572- LIB : ${{ steps.vars .outputs.lib-env-var }}
585+ INCLUDE : ${{ steps.vcvars .outputs.include }}
586+ LIB : ${{ steps.vcvars .outputs.lib }}
573587 run : |
574588 mkdir build
575589 cd build
@@ -587,24 +601,24 @@ jobs:
587601 if : steps.vars.outputs.curl-version
588602 working-directory : src\curl-${{ steps.vars.outputs.curl-version }}\build\lib
589603 env :
590- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
591- LIB : ${{ steps.vars .outputs.lib-env-var }}
604+ INCLUDE : ${{ steps.vcvars .outputs.include }}
605+ LIB : ${{ steps.vcvars .outputs.lib }}
592606 run : make --jobs=$(nproc) ${{ steps.vars.outputs.make-install-argument }}
593607 -
594608 name : Install curl - include
595609 if : steps.vars.outputs.curl-version
596610 working-directory : src\curl-${{ steps.vars.outputs.curl-version }}\build\include
597611 env :
598- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
599- LIB : ${{ steps.vars .outputs.lib-env-var }}
612+ INCLUDE : ${{ steps.vcvars .outputs.include }}
613+ LIB : ${{ steps.vcvars .outputs.lib }}
600614 run : make --jobs=$(nproc) ${{ steps.vars.outputs.make-install-argument }}
601615 -
602616 name : Prepare JSON-C
603617 if : steps.vars.outputs.json-c-version
604618 working-directory : src\json-c-${{ steps.vars.outputs.json-c-version }}
605619 env :
606- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
607- LIB : ${{ steps.vars .outputs.lib-env-var }}
620+ INCLUDE : ${{ steps.vcvars .outputs.include }}
621+ LIB : ${{ steps.vcvars .outputs.lib }}
608622 run : |
609623 mkdir build
610624 cd build
@@ -615,24 +629,24 @@ jobs:
615629 if : steps.vars.outputs.json-c-version
616630 working-directory : src\json-c-${{ steps.vars.outputs.json-c-version }}\build
617631 env :
618- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
619- LIB : ${{ steps.vars .outputs.lib-env-var }}
632+ INCLUDE : ${{ steps.vcvars .outputs.include }}
633+ LIB : ${{ steps.vcvars .outputs.lib }}
620634 run : make --jobs=$(nproc) all
621635 -
622636 name : Install JSON-C
623637 if : steps.vars.outputs.json-c-version
624638 working-directory : src\json-c-${{ steps.vars.outputs.json-c-version }}\build
625639 env :
626- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
627- LIB : ${{ steps.vars .outputs.lib-env-var }}
640+ INCLUDE : ${{ steps.vcvars .outputs.include }}
641+ LIB : ${{ steps.vcvars .outputs.lib }}
628642 run : make install/strip
629643 -
630644 name : Configure gettext
631645 id : gettext-configure
632646 working-directory : src\gettext-${{ needs.versions.outputs.gettext-version }}
633647 env :
634- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
635- LIB : ${{ steps.vars .outputs.lib-env-var }}
648+ INCLUDE : ${{ steps.vcvars .outputs.include }}
649+ LIB : ${{ steps.vcvars .outputs.lib }}
636650 run : |
637651 mkdir build
638652 cd build
@@ -647,98 +661,98 @@ jobs:
647661 name : Compile gettext/gnulib-local
648662 working-directory : src\gettext-${{ needs.versions.outputs.gettext-version }}\build\gnulib-local
649663 env :
650- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
651- LIB : ${{ steps.vars .outputs.lib-env-var }}
664+ INCLUDE : ${{ steps.vcvars .outputs.include }}
665+ LIB : ${{ steps.vcvars .outputs.lib }}
652666 run : make --jobs=$(nproc)
653667 -
654668 name : Check gettext/gnulib-local
655669 if : needs.versions.outputs.quick != 'yes'
656670 working-directory : src\gettext-${{ needs.versions.outputs.gettext-version }}\build\gnulib-local
657671 env :
658- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
659- LIB : ${{ steps.vars .outputs.lib-env-var }}
672+ INCLUDE : ${{ steps.vcvars .outputs.include }}
673+ LIB : ${{ steps.vcvars .outputs.lib }}
660674 run : make --jobs=$(nproc) check
661675 -
662676 name : Install gettext/gnulib-local
663677 working-directory : src\gettext-${{ needs.versions.outputs.gettext-version }}\build\gnulib-local
664678 env :
665- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
666- LIB : ${{ steps.vars .outputs.lib-env-var }}
679+ INCLUDE : ${{ steps.vcvars .outputs.include }}
680+ LIB : ${{ steps.vcvars .outputs.lib }}
667681 run : make --jobs=$(nproc) ${{ steps.vars.outputs.make-install-argument }}
668682 -
669683 name : Compile gettext/gettext-runtime
670684 working-directory : src\gettext-${{ needs.versions.outputs.gettext-version }}\build\gettext-runtime
671685 env :
672- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
673- LIB : ${{ steps.vars .outputs.lib-env-var }}
686+ INCLUDE : ${{ steps.vcvars .outputs.include }}
687+ LIB : ${{ steps.vcvars .outputs.lib }}
674688 run : make --jobs=$(nproc)
675689 -
676690 name : Check gettext/gettext-runtime
677691 if : needs.versions.outputs.quick != 'yes'
678692 working-directory : src\gettext-${{ needs.versions.outputs.gettext-version }}\build\gettext-runtime
679693 env :
680- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
681- LIB : ${{ steps.vars .outputs.lib-env-var }}
694+ INCLUDE : ${{ steps.vcvars .outputs.include }}
695+ LIB : ${{ steps.vcvars .outputs.lib }}
682696 run : make --jobs=$(nproc) check
683697 -
684698 name : Install gettext/gettext-runtime
685699 working-directory : src\gettext-${{ needs.versions.outputs.gettext-version }}\build\gettext-runtime
686700 env :
687- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
688- LIB : ${{ steps.vars .outputs.lib-env-var }}
701+ INCLUDE : ${{ steps.vcvars .outputs.include }}
702+ LIB : ${{ steps.vcvars .outputs.lib }}
689703 run : make --jobs=$(nproc) ${{ steps.vars.outputs.make-install-argument }}
690704 -
691705 name : Compile gettext/libtextstyle
692706 working-directory : src\gettext-${{ needs.versions.outputs.gettext-version }}\build\libtextstyle
693707 env :
694- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
695- LIB : ${{ steps.vars .outputs.lib-env-var }}
708+ INCLUDE : ${{ steps.vcvars .outputs.include }}
709+ LIB : ${{ steps.vcvars .outputs.lib }}
696710 run : make --jobs=$(nproc)
697711 -
698712 name : Check gettext/libtextstyle
699713 if : needs.versions.outputs.quick != 'yes'
700714 working-directory : src\gettext-${{ needs.versions.outputs.gettext-version }}\build\libtextstyle
701715 env :
702- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
703- LIB : ${{ steps.vars .outputs.lib-env-var }}
716+ INCLUDE : ${{ steps.vcvars .outputs.include }}
717+ LIB : ${{ steps.vcvars .outputs.lib }}
704718 run : make --jobs=$(nproc) check
705719 -
706720 name : Install gettext/libtextstyle
707721 working-directory : src\gettext-${{ needs.versions.outputs.gettext-version }}\build\libtextstyle
708722 env :
709- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
710- LIB : ${{ steps.vars .outputs.lib-env-var }}
723+ INCLUDE : ${{ steps.vcvars .outputs.include }}
724+ LIB : ${{ steps.vcvars .outputs.lib }}
711725 run : make --jobs=$(nproc) ${{ steps.vars.outputs.make-install-argument }}
712726 -
713727 name : Compile gettext/gettext-tools
714728 working-directory : src\gettext-${{ needs.versions.outputs.gettext-version }}\build\gettext-tools
715729 env :
716- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
717- LIB : ${{ steps.vars .outputs.lib-env-var }}
730+ INCLUDE : ${{ steps.vcvars .outputs.include }}
731+ LIB : ${{ steps.vcvars .outputs.lib }}
718732 run : make --jobs=$(nproc)
719733 -
720734 name : Check gettext/gettext-tools
721735 if : needs.versions.outputs.quick != 'yes'
722736 working-directory : src\gettext-${{ needs.versions.outputs.gettext-version }}\build\gettext-tools
723737 env :
724- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
725- LIB : ${{ steps.vars .outputs.lib-env-var }}
738+ INCLUDE : ${{ steps.vcvars .outputs.include }}
739+ LIB : ${{ steps.vcvars .outputs.lib }}
726740 run : XFAIL_TESTS='${{ steps.vars.outputs.gettext-xfail-gettext-tools }}' make --jobs=$(nproc) check
727741 -
728742 name : Install gettext/gettext-tools
729743 working-directory : src\gettext-${{ needs.versions.outputs.gettext-version }}\build\gettext-tools
730744 env :
731- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
732- LIB : ${{ steps.vars .outputs.lib-env-var }}
745+ INCLUDE : ${{ steps.vcvars .outputs.include }}
746+ LIB : ${{ steps.vcvars .outputs.lib }}
733747 run : make --jobs=$(nproc) ${{ steps.vars.outputs.make-install-argument }}
734748 -
735749 # We need to rebuild iconv because it depends on gettext's libintl in order to be localizable
736750 name : Configure iconv (2nd time)
737751 if : needs.versions.outputs.quick != 'yes'
738752 working-directory : src\libiconv-${{ needs.versions.outputs.iconv-version }}
739753 env :
740- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
741- LIB : ${{ steps.vars .outputs.lib-env-var }}
754+ INCLUDE : ${{ steps.vcvars .outputs.include }}
755+ LIB : ${{ steps.vcvars .outputs.lib }}
742756 run : |
743757 rm -rf build
744758 mkdir build
@@ -750,24 +764,24 @@ jobs:
750764 if : needs.versions.outputs.quick != 'yes'
751765 working-directory : src\libiconv-${{ needs.versions.outputs.iconv-version }}\build
752766 env :
753- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
754- LIB : ${{ steps.vars .outputs.lib-env-var }}
767+ INCLUDE : ${{ steps.vcvars .outputs.include }}
768+ LIB : ${{ steps.vcvars .outputs.lib }}
755769 run : make --jobs=$(nproc)
756770 -
757771 name : Check iconv (2nd time)
758772 if : needs.versions.outputs.quick != 'yes'
759773 working-directory : src\libiconv-${{ needs.versions.outputs.iconv-version }}\build
760774 env :
761- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
762- LIB : ${{ steps.vars .outputs.lib-env-var }}
775+ INCLUDE : ${{ steps.vcvars .outputs.include }}
776+ LIB : ${{ steps.vcvars .outputs.lib }}
763777 run : make --jobs=$(nproc) check
764778 -
765779 name : Install iconv (2nd time)
766780 if : needs.versions.outputs.quick != 'yes'
767781 working-directory : src\libiconv-${{ needs.versions.outputs.iconv-version }}\build
768782 env :
769- INCLUDE : ${{ steps.vars .outputs.include-env-var }}
770- LIB : ${{ steps.vars .outputs.lib-env-var }}
783+ INCLUDE : ${{ steps.vcvars .outputs.include }}
784+ LIB : ${{ steps.vcvars .outputs.lib }}
771785 run : make --jobs=$(nproc) ${{ steps.vars.outputs.make-install-argument }}
772786 -
773787 name : Finalize install dir
0 commit comments