Skip to content

[gpgerror] build on Windows using vanilla source#20447

Closed
wrobelda wants to merge 14 commits intomicrosoft:masterfrom
wrobelda:gpgerror_vanilla
Closed

[gpgerror] build on Windows using vanilla source#20447
wrobelda wants to merge 14 commits intomicrosoft:masterfrom
wrobelda:gpgerror_vanilla

Conversation

@wrobelda
Copy link
Copy Markdown
Contributor

@wrobelda wrobelda commented Sep 30, 2021

This replaces usage of SMP fork with a vanilla source for Windows builds

Depends on:

Copy link
Copy Markdown

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a new experimental fast check for PR issues. Please let us know if this bot is helpful!

After committing all other changes, the version database must be updated
git add -u && git commit
git checkout 8ad33ead9075cd8d6d357e0b870ba8d501efe35c -- versions
./vcpkg x-add-version --all
Diff
diff --git a/versions/baseline.json b/versions/baseline.json
index d190798..43d958e 100644
--- a/versions/baseline.json
+++ b/versions/baseline.json
@@ -3402,7 +3402,7 @@
     },
     "libgpg-error": {
       "baseline": "1.42",
-      "port-version": 1
+      "port-version": 2
     },
     "libgpod": {
       "baseline": "2019-08-29",
diff --git a/versions/l-/libgpg-error.json b/versions/l-/libgpg-error.json
index 395eb94..d174c05 100644
--- a/versions/l-/libgpg-error.json
+++ b/versions/l-/libgpg-error.json
@@ -1,5 +1,10 @@
 {
   "versions": [
+    {
+      "git-tree": "81c5626a051c7cf6490652da04076a2cf20122e1",
+      "version": "1.42",
+      "port-version": 2
+    },
     {
       "git-tree": "b5abbf9cf832337e202ff5d8d4296025b47be1a0",
       "version": "1.42",

Copy link
Copy Markdown

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a new experimental fast check for PR issues. Please let us know if this bot is helpful!

After committing all other changes, the version database must be updated
git add -u && git commit
git checkout 8ad33ead9075cd8d6d357e0b870ba8d501efe35c -- versions
./vcpkg x-add-version --all
Diff
diff --git a/versions/baseline.json b/versions/baseline.json
index d190798..43d958e 100644
--- a/versions/baseline.json
+++ b/versions/baseline.json
@@ -3402,7 +3402,7 @@
     },
     "libgpg-error": {
       "baseline": "1.42",
-      "port-version": 1
+      "port-version": 2
     },
     "libgpod": {
       "baseline": "2019-08-29",
diff --git a/versions/l-/libgpg-error.json b/versions/l-/libgpg-error.json
index 395eb94..ec15a01 100644
--- a/versions/l-/libgpg-error.json
+++ b/versions/l-/libgpg-error.json
@@ -1,5 +1,10 @@
 {
   "versions": [
+    {
+      "git-tree": "c191411a9e4ae6b55b5ac65c65886c74c4b8e9e3",
+      "version": "1.42",
+      "port-version": 2
+    },
     {
       "git-tree": "b5abbf9cf832337e202ff5d8d4296025b47be1a0",
       "version": "1.42",

@PhoebeHui PhoebeHui self-assigned this Oct 8, 2021
@PhoebeHui PhoebeHui added the category:port-feature The issue is with a library, which is requesting new capabilities that didn’t exist label Oct 8, 2021
@wrobelda
Copy link
Copy Markdown
Contributor Author

ARM cross-compilation reported upstream: https://dev.gnupg.org/T5687

@wrobelda
Copy link
Copy Markdown
Contributor Author

Regarding the x64-uwp, the error is:

compile cl.exe -E -I. -I.././../src/error-1.43-dfb1333f1a.clean/src -I..   _gpg-error.def.h | \
  grep -v '^#' >gpg-error.def
rm _gpg-error.def.h
Microsoft (R) Incremental Linker Version 14.29.30137.0
Copyright (C) Microsoft Corporation.  All rights reserved.

/out:mkheader.exe 
mkheader.obj 
WindowsApp.lib WindowsApp.lib /MANIFEST /DYNAMICBASE /WINMD:NO /APPCONTAINER 
LINK : fatal error LNK1104: cannot open file 'LIBCMT.lib'

Looks like a Spectre-mitigation issue: https://stackoverflow.com/questions/9356135/link-fatal-error-lnk-1104-cannot-open-file-libcmt-lib#comment106230725_53212863

@wrobelda
Copy link
Copy Markdown
Contributor Author

wrobelda commented Apr 19, 2022

Regarding the x64-uwp, the error is:

compile cl.exe -E -I. -I.././../src/error-1.43-dfb1333f1a.clean/src -I..   _gpg-error.def.h | \
  grep -v '^#' >gpg-error.def
rm _gpg-error.def.h
Microsoft (R) Incremental Linker Version 14.29.30137.0
Copyright (C) Microsoft Corporation.  All rights reserved.

/out:mkheader.exe 
mkheader.obj 
WindowsApp.lib WindowsApp.lib /MANIFEST /DYNAMICBASE /WINMD:NO /APPCONTAINER 
LINK : fatal error LNK1104: cannot open file 'LIBCMT.lib'

Looks like a Spectre-mitigation issue: https://stackoverflow.com/questions/9356135/link-fatal-error-lnk-1104-cannot-open-file-libcmt-lib#comment106230725_53212863

@Neumann-A would you be able to takie this over from me? I am out of free time recently and this rewrite was almost complete, except ARM on UWP and Windows fails to build due to error quoted. Alternatively, it could be pushed upstream as-is, with the support for said platforms removed.

@ras0219-msft would appreciate your feedback here, as well.

EDIT: I rebased the code against master.

EDIT2: I updated to 1.45 and oddly getting a gettext infrastructure mismatch: using a Makefile.in.in from gettext version 0.19 but the autoconf macros are from gettext version 0.20 error now. First time I see it. I assumed forcing autoreconf with vcpkg's own gettext in PATH would do the trick, but it doesn't. Now fixed.

Copy link
Copy Markdown

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You have modified or added at least one vcpkg.json where a "license" field is missing.

Details

If you feel able to do so, please consider adding a "license" field to the following files:

  • ports/libgpg-error/vcpkg.json

Valid values for the license field can be found in the documentation

Copy link
Copy Markdown

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You have modified or added at least one vcpkg.json where a "license" field is missing.

Details

If you feel able to do so, please consider adding a "license" field to the following files:

  • ports/libgpg-error/vcpkg.json

Valid values for the license field can be found in the documentation

Copy link
Copy Markdown

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You have modified or added at least one vcpkg.json where a "license" field is missing.

Details

If you feel able to do so, please consider adding a "license" field to the following files:

  • ports/libgpg-error/vcpkg.json

Valid values for the license field can be found in the documentation

Copy link
Copy Markdown

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You have modified or added at least one vcpkg.json where a "license" field is missing.

Details

If you feel able to do so, please consider adding a "license" field to the following files:

  • ports/libgpg-error/vcpkg.json

Valid values for the license field can be found in the documentation

@wrobelda wrobelda marked this pull request as ready for review April 19, 2022 17:51
@wrobelda
Copy link
Copy Markdown
Contributor Author

@PhoebeHui this is now ready for a review. As noted above , support for UWP and ARM on Windows is removed. Both issues potentially fixable, but currently beyond my time resources.

@Neumann-A
Copy link
Copy Markdown
Contributor

except ARM on UWP and Windows fails to build due to error quoted.

the error looks like the port is using CC_FOR_BUILD and the portfile is not correctly setup to deal with crosscompilation
LINK : fatal error LNK1104: cannot open file 'LIBCMT.lib' basically means something is not getting the correct build flags and has the implicit default /DEFAULTLIB:LIBCMT.lib

@JackBoosY
Copy link
Copy Markdown
Contributor

Please temporary close this PR if you don't have spare time to finish it.

@JackBoosY
Copy link
Copy Markdown
Contributor

Closing this PR since it seems that no progress is being made. Please reopen if work is still being done.

@JackBoosY JackBoosY closed this Jul 15, 2022
@wrobelda
Copy link
Copy Markdown
Contributor Author

@JackBoosY can you reopen this PR, please?

@LilyWangLL
Copy link
Copy Markdown
Contributor

LilyWangLL commented Aug 16, 2022

@wrobelda We can't reopen this PR, because the GitHub remind this branch was force-pushed or recreated as below:
image
You can create a new PR to commit these changes. Thanks~

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

category:port-feature The issue is with a library, which is requesting new capabilities that didn’t exist

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants