Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

appveyor: Use MSYS2 for packaging #1410

Merged

Conversation

k-takata
Copy link
Member

  • Use MSYS2 to create zip packages and stop using VC for it.
  • Enable following libraries with MSYS2:
    jansson, libxml2, libyaml.
  • Enable static link with MSYS2.

@coveralls
Copy link

Coverage Status

Coverage remained the same at 85.359% when pulling 0b49a29 on k-takata:appveyor-use-msys2-for-packaging into dda5156 on universal-ctags:master.

@k-takata
Copy link
Member Author

This fails because of #1411. It should be fixed before merging this.

@k-takata
Copy link
Member Author

I think static link is suitable for distributing Windows binary for portability.
If we distribute a binary linked with jansson, libxml2 and libyaml, I think we should include license files of the libraries.
I couldn't find the license files under the MSYS2 installation directory, so maybe we should store the copies of them in our repository.

The license files are found at here:
https://github.com/akheron/jansson/blob/master/LICENSE
https://git.gnome.org/browse/libxml2/tree/Copyright
https://bitbucket.org/xi/libyaml/src/default/LICENSE?fileviewer=file-view-default

@coveralls
Copy link

Coverage Status

Coverage remained the same at 85.359% when pulling 156d4f8 on k-takata:appveyor-use-msys2-for-packaging into dda5156 on universal-ctags:master.

@k-takata k-takata force-pushed the appveyor-use-msys2-for-packaging branch from 156d4f8 to f4b99dd Compare May 27, 2017 04:50
@coveralls
Copy link

Coverage Status

Coverage remained the same at 85.359% when pulling f4b99dd on k-takata:appveyor-use-msys2-for-packaging into dda5156 on universal-ctags:master.

@k-takata
Copy link
Member Author

The directory structure of a zip package is:

.
├── ctags.exe
├── docs
│   ├── _images
│   │   └── *.svg
│   ├── _static
│   │   └── *.css, *.js, etc.
│   └── *.html
├── license
│   ├── COPYING
│   ├── COPYING.MinGW-w64-runtime.txt
│   ├── Copyright.libxml2
│   ├── LICENSE.janssen
│   └── LICENSE.libyaml
├── README.md
└── readtags.exe

@k-takata
Copy link
Member Author

I stopped testing VC binaries in this PR, because it takes long time (2 x ~5 minutes), but stopping it has a risk that we cannot catch bugs only occurs with VC.
So, should we still test VC binaries on AppVeyor?

@masatake
Copy link
Member

Stopping tesing VC binaries during updating this PR is o.k.
When all updating are done, let's turn the testing on again.

@k-takata k-takata force-pushed the appveyor-use-msys2-for-packaging branch 2 times, most recently from c30e4e4 to 762f7fd Compare May 28, 2017 00:03
@coveralls
Copy link

Coverage Status

Coverage increased (+0.06%) to 85.416% when pulling 4c156c0 on k-takata:appveyor-use-msys2-for-packaging into dda5156 on universal-ctags:master.

@coveralls
Copy link

Coverage Status

Coverage remained the same at 85.416% when pulling c30e4e4 on k-takata:appveyor-use-msys2-for-packaging into 8957fe3 on universal-ctags:master.

@coveralls
Copy link

Coverage Status

Coverage remained the same at 85.416% when pulling 762f7fd on k-takata:appveyor-use-msys2-for-packaging into 8957fe3 on universal-ctags:master.

@k-takata k-takata force-pushed the appveyor-use-msys2-for-packaging branch 2 times, most recently from a8b4e2a to 8f8d881 Compare May 28, 2017 00:36
@coveralls
Copy link

Coverage Status

Coverage remained the same at 85.416% when pulling 8f8d881 on k-takata:appveyor-use-msys2-for-packaging into 8957fe3 on universal-ctags:master.

@coveralls
Copy link

Coverage Status

Coverage remained the same at 85.416% when pulling 8f8d881 on k-takata:appveyor-use-msys2-for-packaging into 8957fe3 on universal-ctags:master.

@k-takata k-takata force-pushed the appveyor-use-msys2-for-packaging branch from 8f8d881 to cfd9dd2 Compare May 28, 2017 01:17
@coveralls
Copy link

Coverage Status

Coverage remained the same at 85.416% when pulling cfd9dd2 on k-takata:appveyor-use-msys2-for-packaging into 8957fe3 on universal-ctags:master.

k-takata added 3 commits May 28, 2017 11:44
* Use MSYS2 to create zip packages and stop using VC for it.
* Enable following libraries with MSYS2:
  jansson, libxml2, libyaml.
* Use static link on MSYS2 for portability. Now only ctag.exe is needed
  for running.
* Fix that VC binary was not tested (universal-ctags#1411). Enable test for VC x64.
* Disable VC x86 build using mk_mvc.mak, because msbuild builds x86
  binary.
Include license files of janssen, libxml2, libyaml and MinGW-w64 runtime
library in zip packages.
Store the copies of them in our repository.
@k-takata k-takata force-pushed the appveyor-use-msys2-for-packaging branch from cfd9dd2 to 0cf0dda Compare May 28, 2017 02:47
@coveralls
Copy link

Coverage Status

Coverage remained the same at 85.416% when pulling 0cf0dda on k-takata:appveyor-use-msys2-for-packaging into 576f054 on universal-ctags:master.

@k-takata
Copy link
Member Author

Rebased upon the fix of #1418.
Now both stripped/unstripped binaries are available.
The size of ctags.exe is now:

Stripped: ~ 3 MB
Unstripped: ~ 8 MB
(See: https://ci.appveyor.com/project/masatake/ctags/build/1.0.2098/job/hpf3dq305vulj2se/artifacts)

Test of VC binaries are enabled again, but it is only x64. Test of VC x86 is disabled to reduce the CI time.
Now AppVeyor takes about 20 minutes.

@k-takata k-takata changed the title [WIP] appveyor: Use MSYS2 for packaging appveyor: Use MSYS2 for packaging May 28, 2017
@k-takata
Copy link
Member Author

I think it's ready to be merged.

@k-takata
Copy link
Member Author

This also fixes #1312.

@k-takata
Copy link
Member Author

k-takata commented May 28, 2017

And also #660. (maybe)

k-takata added 2 commits May 29, 2017 23:16
* Add required packages.
* Mention about static link.
@k-takata
Copy link
Member Author

I updated the docs and added how to build static link binary using MSYS2.

@coveralls
Copy link

Coverage Status

Coverage remained the same at 85.416% when pulling c8994a5 on k-takata:appveyor-use-msys2-for-packaging into 576f054 on universal-ctags:master.

@k-takata k-takata merged commit a04a35a into universal-ctags:master May 30, 2017
@k-takata k-takata deleted the appveyor-use-msys2-for-packaging branch May 30, 2017 15:51
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.

3 participants