Skip to content

buildwin.ps1 script error building the x64 version of Poco#3749

Merged
aleks-f merged 23 commits intopocoproject:develfrom
KevDi:buildwin_ps1_fix
Aug 18, 2022
Merged

buildwin.ps1 script error building the x64 version of Poco#3749
aleks-f merged 23 commits intopocoproject:develfrom
KevDi:buildwin_ps1_fix

Conversation

@KevDi
Copy link
Copy Markdown
Contributor

@KevDi KevDi commented Aug 14, 2022

If build x64 the scripts looks for the _x64.vcproj Files which no longer exists. By removing this the Build is possible.
If only the Build Tools for Visual Studio are available the script does not run because those are not recognized by the Select-VSSetupInstance Script.
Adding the parameter -product * also recognizes the Build Tools.

#3740

If build x64 the scripts looks for the _x64.vcproj Files which no longer exists. By removing this the Build is possible.
If only the Build Tools for Visual Studio are available the script does not run because those are not recognized by the Select-VSSetupInstance Script.
Adding the parameter `-product *` also recognizes the Build Tools.
@aleks-f
Copy link
Copy Markdown
Member

aleks-f commented Aug 16, 2022

@KevDi can you also try to add a CI entry for this?
It would be another entry like this, just using the buildwin.ps1 script instead of cmake:

windows-2019-msvc-cmake:
runs-on: windows-2019
env:
CPPUNIT_IGNORE: class CppUnit::TestCaller<class PathTest>.testFind,class CppUnit::TestCaller<class ICMPSocketTest>.testSendToReceiveFrom,class CppUnit::TestCaller<class ICMPClientTest>.testPing,class CppUnit::TestCaller<class ICMPClientTest>.testBigPing,class CppUnit::TestCaller<class ICMPSocketTest>.testMTU,class CppUnit::TestCaller<class HTTPSClientSessionTest>.testProxy,class CppUnit::TestCaller<class HTTPSStreamFactoryTest>.testProxy
steps:
- uses: actions/checkout@v2
- run: cmake -S. -Bcmake-build -DENABLE_NETSSL_WIN=ON -DENABLE_NETSSL=OFF -DENABLE_CRYPTO=OFF -DENABLE_JWT=OFF -DENABLE_DATA=ON -DENABLE_DATA_ODBC=ON -DENABLE_DATA_MYSQL=OFF -DENABLE_DATA_POSTGRESQL=OFF -DENABLE_TESTS=ON
- run: cmake --build cmake-build --config Release
- run: >-
cd cmake-build;
ctest --output-on-failure -E "(DataMySQL)|(DataODBC)|(Redis)|(MongoDB)" -C Release

@aleks-f aleks-f changed the title Fix Error when building the x64 Version of Poco buildwin.ps1 script error building the x64 version of Poco Aug 16, 2022
@aleks-f aleks-f added this to the Release 1.13.0 milestone Aug 16, 2022
@KevDi
Copy link
Copy Markdown
Contributor Author

KevDi commented Aug 16, 2022

Ok i will try to add the entry

@KevDi
Copy link
Copy Markdown
Contributor Author

KevDi commented Aug 16, 2022

@aleks-f i tried to add the CI Section but it seems on the Actions Job Run the -omit does not work as expected. If i run the same command on my local Windows System it works. But on the Github Actions it still tries to build the Crypto Library.

@KevDi
Copy link
Copy Markdown
Contributor Author

KevDi commented Aug 17, 2022

@aleks-f i test it again with the Encodings Project and it seems like on the github actions the check does not work. On my local system the Projects are skipped. But in the github actions no project is skipped and i don't know why

@KevDi
Copy link
Copy Markdown
Contributor Author

KevDi commented Aug 17, 2022

@aleks-f ok i solved that issue. It seems like in the github actions the split method should only take exactly one character. I changed it from .split(",;") to .split(",") and now the skipping of Projects works.
Should we keep the , or the ; as the seperator for the omit list? I would go with the ;because it is already mentioned in the help section.

@aleks-f
Copy link
Copy Markdown
Member

aleks-f commented Aug 17, 2022

@aleks-f ok i solved that issue. It seems like in the github actions the split method should only take exactly one character. I changed it from .split(",;") to .split(",") and now the skipping of Projects works. Should we keep the , or the ; as the seperator for the omit list? I would go with the ;because it is already mentioned in the help section.

I'd go with , because it is more intuitive and in line with make build. just change the doc, no big deal

@aleks-f
Copy link
Copy Markdown
Member

aleks-f commented Aug 17, 2022

now you have some joy with VS2022. try to comment out other CI entries so that a push triggers run only of the entries you are working on, not the whole world

@aleks-f aleks-f merged commit f02088d into pocoproject:devel Aug 18, 2022
aleks-f added a commit that referenced this pull request Aug 20, 2022
buildwin.ps1 failed to build x64 #3740

If build x64 the scripts looks for the _x64.vcproj Files which no longer exists. By removing this the Build is possible.
If only the Build Tools for Visual Studio are available the script does not run because those are not recognized by the Select-VSSetupInstance Script.
Adding the parameter `-product *` also recognizes the Build Tools.

* Removed unused Parameter `platformName`

* Added New CI targets for building poco with the buildwin.ps1 script

Co-authored-by: Jan Kevin Dick <Jan.Dick@de.bosch.com>
Co-authored-by: Aleksandar Fabijanic <aleks-f@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants