-
Notifications
You must be signed in to change notification settings - Fork 13
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
Bring up continuous build + dist #40
Comments
One other thing to look into as part of the dist process: Unlike svn, git doesn't support tracking of file modification times. This breaks the py2lua generation for the wxFB.lua scripts, because that process checks the mtime of the .py file and compares it to the time listed in the wxFB.lua file; however, a new git clone will always lead to the .py file's mtime being newer than what's written in wxFB.lua. We'd need another approach in git to make this work. |
This is a start towards resolving Issue mrichards42#40. These configs build the debug and release builds of XWord on Mac and Windows. If a new release is created on GitHub, a release build will be zipped up and posted as part of the release. The --enable-unicode reference in README.md is removed, as this is the default as of wxWidgets 2.9.
This is a start towards resolving Issue mrichards42#40. These configs build the debug and release builds of XWord on Mac and Windows. If a new release is created on GitHub, a release build will be zipped up and posted as part of the release. The --enable-unicode reference in README.md is removed, as this is the default as of wxWidgets 2.9.
This is a start towards resolving Issue mrichards42#40. These configs build the debug and release builds of XWord on Mac and Windows. If a new release is created on GitHub, a release build will be zipped up and posted as part of the release. The --enable-unicode reference in README.md is removed, as this is the default as of wxWidgets 2.9.
This is a start towards resolving Issue mrichards42#40. These configs build the debug and release builds of XWord on Mac and Windows. If a new release is created on GitHub, a release build will be zipped up and posted as part of the release. The --enable-unicode reference in README.md is removed, as this is the default as of wxWidgets 2.9.
This is a start towards resolving Issue mrichards42#40. These configs build the debug and release builds of XWord on Mac and Windows. If a new release is created on GitHub, a release build will be zipped up and posted as part of the release. The --enable-unicode reference in README.md is removed, as this is the default as of wxWidgets 2.9.
This is a start towards resolving Issue mrichards42#40. These configs build the debug and release builds of XWord on Mac and Windows. If a new release is created on GitHub, a release build will be zipped up and posted as part of the release. The --enable-unicode reference in README.md is removed, as this is the default as of wxWidgets 2.9.
This is a start towards resolving Issue mrichards42#40. These configs build the debug and release builds of XWord on Mac and Windows. If a new release is created on GitHub, a release build will be zipped up and posted as part of the release. The --enable-unicode reference in README.md is removed, as this is the default as of wxWidgets 2.9.
It's definitely annoying that after a fresh checkout the wxFB.lua files are regenerated, but it isn't a show-stopper, since the distribution won't include py2lua, just the (updated) wxFB.lua files themselves. Probably better to just do an md5 of the python wxFB file or something simple like that. |
Non-Lua builds are functional, except that the images are expected in share/Debug/images but aren't copied there by the build scripts. Lua builds fail to link XWord due to many missing wxWidgets symbols. Changes of interest: -Added Linux prebuilts of premake4 and LuaJIT 2.0.4 -Update pugixml to latest upstream to fix Linux compilation -Fix incorrect case on many imports -Fix missing imports for various C functions -Remove dependencies on Win/Mac-only functions Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -SetFocusOnIdle only works on Win/Mac; what should we do on Linux? -Why are Lua libraries failing to link against wxWidgets?
Changes of interest: -Added Linux prebuilts of premake4 and LuaJIT 2.0.4 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Curl fails to build -images/scripts directories are not found -libc-task fails to load successfully on Lua startup
Changes of interest: -Added Linux prebuilts of premake4 and LuaJIT 2.0.4 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Curl fails to build -images/scripts directories are not found -libc-task fails to load successfully on Lua startup
Changes of interest: -Added Linux prebuilts of premake4 and LuaJIT 2.0.4 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Curl fails to build -images/scripts directories are not found -libc-task fails to load successfully on Lua startup
Changes of interest: -Added Linux prebuilts of premake4 and LuaJIT 2.0.4 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Curl fails to build -images/scripts directories are not found -libc-task fails to load successfully on Lua startup
Changes of interest: -Added Linux prebuilts of premake4 and LuaJIT 2.0.4 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
Changes of interest: -Added Linux prebuilts of premake4 and LuaJIT 2.0.4 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
Changes of interest: -Added Linux prebuilts of premake4 and LuaJIT 2.0.4 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
Changes of interest: -Added Linux prebuilts of premake4 and LuaJIT 2.0.4 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
Changes of interest: -Added Linux prebuilts of premake4 and LuaJIT 2.0.4 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
Changes of interest: -Added Linux prebuilts of premake4 and LuaJIT 2.0.4 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
Changes of interest: -Added Linux prebuilts of premake4 and LuaJIT 2.0.4 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
This change brings up functional local and continuous Linux builds. XWord runs and generally functions (after some manual tweaks to the output directory structure as noted below), though more work will be needed to smooth rough edges and fix Linux-specific bugs. Changes of interest: -Added Linux prebuilts of premake4 and LuaJIT 2.0.4 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
This change brings up functional local and continuous Linux builds. XWord runs and generally functions (after some manual tweaks to the output directory structure as noted below), though more work will be needed to smooth rough edges and fix Linux-specific bugs. Changes of interest: -Added Linux prebuilts of premake4 and LuaJIT 2.0.4 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
- Fix doc/ python scripts to work on Python 3 - Remove launch step from doc/make_help.bat - Use relative paths in dist/XWord.nsi - Update file list in dist/XWord.nsi - Add .gitignore for doc + dist outputs - Add AppVeyor config to run doc + dist steps
- Fix doc/ python scripts to work on Python 3 - Remove launch step from doc/make_help.bat - Use relative paths in dist/XWord.nsi - Update file list in dist/XWord.nsi - Add .gitignore for doc + dist outputs - Add AppVeyor config to run doc + dist steps
- Fix doc/ python scripts to work on Python 3 - Remove launch step from doc/make_help.bat - Use relative paths in dist/XWord.nsi - Update file list in dist/XWord.nsi - Add .gitignore for doc + dist outputs - Add AppVeyor config to run doc + dist steps
- Fix doc/ python scripts to work on Python 3 - Remove launch step from doc/make_help.bat - Use relative paths in dist/XWord.nsi - Update file list in dist/XWord.nsi - Add .gitignore for doc + dist outputs - Add AppVeyor config to run doc + dist steps
- Fix doc/ python scripts to work on Python 3 - Remove launch step from doc/make_help.bat - Use relative paths in dist/XWord.nsi - Update file list in dist/XWord.nsi - Add .gitignore for doc + dist outputs - Add AppVeyor config to run doc + dist steps
- Fix doc/ python scripts to work on Python 3 - Remove launch step from doc/make_help.bat - Use relative paths in dist/XWord.nsi - Update file list in dist/XWord.nsi - Add .gitignore for doc + dist outputs - Add AppVeyor config to run doc + dist steps
Normal builds without special setup will read the version from VERSION, which would generally be expected to be a SNAPSHOT version. Release builds (those generated by CI with tags on GitHub) get the tag name as the version. This version is propagated to the Windows installer, the app, and the Mac plist file. dist/gen_packages.lua still has a hard-coded reference; this will be handled separately. This commit also fixes a bug in xword.pkgmgr.is_newer, which seems to have been passing an escaped "." character to pl.stringx.split when a non-escaped character was expected. We also extend is_newer to support -SNAPSHOT builds by considering them to be older than the non-SNAPSHOT build of the same version, but newer than any previous version. See mrichards42#40
Normal builds without special setup will read the version from VERSION, which would generally be expected to be a SNAPSHOT version. Release builds (those generated by CI with tags on GitHub) get the tag name as the version. This version is propagated to the Windows installer, the app, and the Mac plist file. dist/gen_packages.lua still has a hard-coded reference; this will be handled separately. This commit also fixes a bug in xword.pkgmgr.is_newer, which seems to have been passing an escaped "." character to pl.stringx.split when a non-escaped character was expected. We also extend is_newer to support -SNAPSHOT builds by considering them to be older than the non-SNAPSHOT build of the same version, but newer than any previous version. See mrichards42#40
- Generate packages_windows.lua and packages_mac.lua as part of release builds and include them in the release artifacts. For now, since we are only distributing plugins inside the distribution, we can use a simple template and a sed-based find/replace to generate these files. dist/gen_packages.lua works for this purpose as well, but requires Lua to be installed in the CI environment, which is non-trivial. We can always revisit if we decide to distribute plugin packages separately. - Point the auto-updater to a known location on GitHub pages to search for new packages. With this along with mrichards42#102 and mrichards42#103 (along with mrichards42#106 for Windows), the full distribution workflow is functional on Windows/Mac. Pushing a new build consists of the following steps: 1) Create a GitHub release. Set the tag to a valid release number, e.g. "0.7.0". 2) Wait for CI builds to complete successfully on AppVeyor (Windows) and Travis CI (Mac). 3) Validate that the builds are functioning as expected. 4) Download packages_windows.lua and packages_mac.lua from the builds to docs/, commit, and push (to master). This will cause the new build to go "live" and start showing up for auto updates. See mrichards42#40
- Generate packages_windows.lua and packages_mac.lua as part of release builds and include them in the release artifacts. For now, since we are only distributing plugins inside the distribution, we can use a simple template and a sed-based find/replace to generate these files. dist/gen_packages.lua works for this purpose as well, but requires Lua to be installed in the CI environment, which is non-trivial. We can always revisit if we decide to distribute plugin packages separately. - Point the auto-updater to a known location on GitHub pages to search for new packages. With this along with mrichards42#102 and mrichards42#103 (along with mrichards42#106 for Windows), the full distribution workflow is functional on Windows/Mac. Pushing a new build consists of the following steps: 1) Create a GitHub release. Set the tag to a valid release number, e.g. "0.7.0". 2) Wait for CI builds to complete successfully on AppVeyor (Windows) and Travis CI (Mac). 3) Validate that the builds are functioning as expected. 4) Download packages_windows.lua and packages_mac.lua from the builds to docs/, commit, and push (to master). This will cause the new build to go "live" and start showing up for auto updates. See mrichards42#40
- Generate packages_windows.lua and packages_mac.lua as part of release builds and include them in the release artifacts. For now, since we are only distributing plugins inside the distribution, we can use a simple template and a sed-based find/replace to generate these files. dist/gen_packages.lua works for this purpose as well, but requires Lua to be installed in the CI environment, which is non-trivial. We can always revisit if we decide to distribute plugin packages separately. - Point the auto-updater to a known location on GitHub pages to search for new packages. With this along with mrichards42#102 and mrichards42#103 (along with mrichards42#106 for Windows), the full distribution workflow is functional on Windows/Mac. Pushing a new build consists of the following steps: 1) Create a GitHub release. Set the tag to a valid release number, e.g. "0.7.0". 2) Wait for CI builds to complete successfully on AppVeyor (Windows) and Travis CI (Mac). 3) Validate that the builds are functioning as expected. 4) Download packages_windows.lua and packages_mac.lua from the builds to docs/, commit, and push (to master). This will cause the new build to go "live" and start showing up for auto updates. See mrichards42#40
- Generate packages_windows.lua and packages_mac.lua as part of release builds and include them in the release artifacts. For now, since we are only distributing plugins inside the distribution, we can use a simple template and a sed-based find/replace to generate these files. dist/gen_packages.lua works for this purpose as well, but requires Lua to be installed in the CI environment, which is non-trivial. We can always revisit if we decide to distribute plugin packages separately. - Point the auto-updater to a known location on GitHub pages to search for new packages. With this along with mrichards42#102 and mrichards42#103 (along with mrichards42#106 for Windows), the full distribution workflow is functional on Windows/Mac. Pushing a new build consists of the following steps: 1) Create a GitHub release. Set the tag to a valid release number, e.g. "0.7.0". 2) Wait for CI builds to complete successfully on AppVeyor (Windows) and Travis CI (Mac). 3) Validate that the builds are functioning as expected. 4) Download packages_windows.lua and packages_mac.lua from the builds to docs/, commit, and push (to master). This will cause the new build to go "live" and start showing up for auto updates. See mrichards42#40
- Generate packages_windows.lua and packages_mac.lua as part of release builds and include them in the release artifacts. For now, since we are only distributing plugins inside the distribution, we can use a simple template and a sed-based find/replace to generate these files. dist/gen_packages.lua works for this purpose as well, but requires Lua to be installed in the CI environment, which is non-trivial. We can always revisit if we decide to distribute plugin packages separately. - Point the auto-updater to a known location on GitHub pages to search for new packages. With this along with mrichards42#102 and mrichards42#103 (along with mrichards42#106 for Windows), the full distribution workflow is functional on Windows/Mac. Pushing a new build consists of the following steps: 1) Create a GitHub release. Set the tag to a valid release number, e.g. "0.7.0". 2) Wait for CI builds to complete successfully on AppVeyor (Windows) and Travis CI (Mac). 3) Validate that the builds are functioning as expected. 4) Download packages_windows.lua and packages_mac.lua from the builds to docs/, commit, and push (to master). This will cause the new build to go "live" and start showing up for auto updates. See mrichards42#40
- Generate packages_windows.lua and packages_mac.lua as part of release builds and include them in the release artifacts. For now, since we are only distributing plugins inside the distribution, we can use a simple template and a sed-based find/replace to generate these files. dist/gen_packages.lua works for this purpose as well, but requires Lua to be installed in the CI environment, which is non-trivial. We can always revisit if we decide to distribute plugin packages separately. - Point the auto-updater to a known location on GitHub pages to search for new packages. With this along with mrichards42#102 and mrichards42#103 (along with mrichards42#106 for Windows), the full distribution workflow is functional on Windows/Mac. Pushing a new build consists of the following steps: 1) Create a GitHub release. Set the tag to a valid release number, e.g. "0.7.0". 2) Wait for CI builds to complete successfully on AppVeyor (Windows) and Travis CI (Mac). 3) Validate that the builds are functioning as expected. 4) Download packages_windows.lua and packages_mac.lua from the builds to docs/, commit, and push (to master). This will cause the new build to go "live" and start showing up for auto updates. See mrichards42#40
- Generate packages_windows.lua and packages_mac.lua as part of release builds and include them in the release artifacts. For now, since we are only distributing plugins inside the distribution, we can use a simple template and a sed-based find/replace to generate these files. dist/gen_packages.lua works for this purpose as well, but requires Lua to be installed in the CI environment, which is non-trivial. We can always revisit if we decide to distribute plugin packages separately. - Point the auto-updater to a known location on GitHub pages to search for new packages. With this along with mrichards42#102 and mrichards42#103 (along with mrichards42#106 for Windows), the full distribution workflow is functional on Windows/Mac. Pushing a new build consists of the following steps: 1) Create a GitHub release. Set the tag to a valid release number, e.g. "0.7.0". 2) Wait for CI builds to complete successfully on AppVeyor (Windows) and Travis CI (Mac). 3) Validate that the builds are functioning as expected. 4) Download packages_windows.lua and packages_mac.lua from the builds to docs/, commit, and push (to master). This will cause the new build to go "live" and start showing up for auto updates. See mrichards42#40
This change brings up functional local and continuous Linux builds. XWord runs and generally functions (after some manual tweaks to the output directory structure as noted below), though more work will be needed to smooth rough edges and fix Linux-specific bugs. Changes of interest: -Added Linux prebuilts of premake5 and LuaJIT 2.0.4 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
- Generate packages_windows.lua and packages_mac.lua as part of release builds and include them in the release artifacts. For now, since we are only distributing plugins inside the distribution, we can use a simple template and a sed-based find/replace to generate these files. dist/gen_packages.lua works for this purpose as well, but requires Lua to be installed in the CI environment, which is non-trivial. We can always revisit if we decide to distribute plugin packages separately. - Point the auto-updater to a known location on GitHub pages to search for new packages. With this along with mrichards42#102 and mrichards42#103 (along with mrichards42#106 for Windows), the full distribution workflow is functional on Windows/Mac. Pushing a new build consists of the following steps: 1) Create a GitHub release. Set the tag to a valid release number, e.g. "0.7.0". 2) Wait for CI builds to complete successfully on AppVeyor (Windows) and Travis CI (Mac). 3) Validate that the builds are functioning as expected. 4) Download packages_windows.lua and packages_mac.lua from the builds to docs/, commit, and push (to master). This will cause the new build to go "live" and start showing up for auto updates. See mrichards42#40
- Generate packages_windows.lua and packages_mac.lua as part of release builds and include them in the release artifacts. For now, since we are only distributing plugins inside the distribution, we can use a simple template and a sed-based find/replace to generate these files. dist/gen_packages.lua works for this purpose as well, but requires Lua to be installed in the CI environment, which is non-trivial. We can always revisit if we decide to distribute plugin packages separately. - Point the auto-updater to a known location on GitHub pages to search for new packages. With this along with mrichards42#102 and mrichards42#103 (along with mrichards42#106 for Windows), the full distribution workflow is functional on Windows/Mac. Pushing a new build consists of the following steps: 1) Create a GitHub release. Set the tag to a valid release number, e.g. "0.7.0". 2) Wait for CI builds to complete successfully on AppVeyor (Windows) and Travis CI (Mac). 3) Validate that the builds are functioning as expected. 4) Download packages_windows.lua and packages_mac.lua from the builds to docs/, commit, and push (to master). This will cause the new build to go "live" and start showing up for auto updates. See mrichards42#40
This change brings up functional local and continuous Linux builds. XWord runs and generally functions (after some manual tweaks to the output directory structure as noted below), though more work will be needed to smooth rough edges and fix Linux-specific bugs. Changes of interest: -Added Linux prebuilt of premake5 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
This change brings up functional local and continuous Linux builds. XWord runs and generally functions (after some manual tweaks to the output directory structure as noted below), though more work will be needed to smooth rough edges and fix Linux-specific bugs. Changes of interest: -Added Linux prebuilt of premake5 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
This is essentially done; all the changes have been checked in for a functional continuous build and dist for Windows and Mac. (I have a WIP for Linux, but it has a fair number of bugs to be hammered out to even have basic functionality, so I'd consider that separate). You'd still need to get Travis CI up and running in the master repository to enable Mac builds, though. I think this should be fairly straightforward since the .travis.yml file is checked in already, but would be happy to help. The other option now would be to try to consolidate to a single CI infrastructure, which has become a theoretical option since this was effort was all started. AppVeyor does have Mac/Linux images, and Travis has Windows images. But the AppVeyor Mac images have a newer version of Xcode that would require a new premake5 version to fix (see premake4.lua's note), and the Travis Windows images are considered experimental and lacking much of the niceties that the AppVeyor image has, including VS 2013. |
This change brings up functional local and continuous Linux builds. XWord runs and generally functions (after some manual tweaks to the output directory structure as noted below), though more work will be needed to smooth rough edges and fix Linux-specific bugs. Changes of interest: -Added Linux prebuilt of premake5 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
This change brings up functional local and continuous Linux builds. XWord runs and generally functions (after some manual tweaks to the output directory structure as noted below), though more work will be needed to smooth rough edges and fix Linux-specific bugs. Changes of interest: -Added Linux prebuilt of premake5 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
This change brings up functional local and continuous Linux builds. XWord runs and generally functions (after some manual tweaks to the output directory structure as noted below), though more work will be needed to smooth rough edges and fix Linux-specific bugs. Changes of interest: -Added Linux prebuilt of premake5 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
This change brings up functional local and continuous Linux builds. XWord runs and generally functions (after some manual tweaks to the output directory structure as noted below), though more work will be needed to smooth rough edges and fix Linux-specific bugs. Changes of interest: -Added Linux prebuilt of premake5 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
This change brings up functional local and continuous Linux builds. XWord runs and generally functions (after some manual tweaks to the output directory structure as noted below), though more work will be needed to smooth rough edges and fix Linux-specific bugs. Changes of interest: -Added Linux prebuilt of premake5 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
This change brings up functional local and continuous Linux builds. XWord runs and generally functions (after some manual tweaks to the output directory structure as noted below), though more work will be needed to smooth rough edges and fix Linux-specific bugs. Changes of interest: -Added Linux prebuilt of premake5 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
This change brings up functional local and continuous Linux builds. XWord runs and generally functions (after some manual tweaks to the output directory structure as noted below), though more work will be needed to smooth rough edges and fix Linux-specific bugs. Changes of interest: -Added Linux prebuilt of premake5 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
This change brings up functional local and continuous Linux builds. XWord runs and generally functions (after some manual tweaks to the output directory structure as noted below), though more work will be needed to smooth rough edges and fix Linux-specific bugs. Changes of interest: -Added Linux prebuilt of premake5 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
This change brings up functional local and continuous Linux builds. XWord runs and generally functions (after some manual tweaks to the output directory structure as noted below), though more work will be needed to smooth rough edges and fix Linux-specific bugs. Changes of interest: -Added Linux prebuilt of premake5 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
This change brings up functional local and continuous Linux builds. XWord runs and generally functions (after some manual tweaks to the output directory structure as noted below), though more work will be needed to smooth rough edges and fix Linux-specific bugs. Changes of interest: -Added Linux prebuilt of premake5 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
This change brings up functional local and continuous Linux builds. XWord runs and generally functions (after some manual tweaks to the output directory structure as noted below), though more work will be needed to smooth rough edges and fix Linux-specific bugs. Changes of interest: -Added Linux prebuilt of premake5 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
This change brings up functional local and continuous Linux builds. XWord runs and generally functions (after some manual tweaks to the output directory structure as noted below), though more work will be needed to smooth rough edges and fix Linux-specific bugs. Changes of interest: -Added Linux prebuilt of premake5 -Fix incorrect case on many imports -Fix missing imports for various C functions -Fix link order for lua builds -Add Travis CI build for Linux Still pending investigation: -libpuz.so is linked incorrectly (it depends on ../../bin/Debug/libyajl.so, but should just depend on libyajl.so). Worked around by linking libyajl.so from XWord in addition. -Output directories need manual tweaking: * Link images/ to share/XWord/images * Link scripts/ to lib/XWord/scripts * Move bin/Debug/scripts/libs/libX.so to lib/XWord/X.so * bin/Debug/libluapuz.so also expected at lib/XWord/luapuz.so Additional bugs: -Alignment of lua errors in status bar is wrong -Package manager encounters assertion errors -Clue bar increases in size every startup
I've got Travis and AppVeyor builds up and running on my fork. Here's the config:
jpd236@a3e22b4
(I can send a PR once the fix-compile branch is merged, as this is dependent on it)
Here's the build logs for Travis (Mac): https://travis-ci.org/jpd236/xword/builds/170340977
And for AppVeyor (Windows): https://ci.appveyor.com/project/jpd236/xword/build/34
And an example GitHub release: https://github.com/jpd236/xword/releases/tag/0.6.2-ci-alpha1
For both Mac and Windows, this config will build wxWidgets 3.1.0 (caching the build for future use) with the wxAUI patch from the xword repo and build both the Debug and Release configurations of the app. The dist step is kept simple for now since the existing dist scripts are Windows/sourceforge specific; we just zip the output files and upload the resulting artifact to GitHub Releases for any tagged build.
Here's what I think remains for this to be fully complete:
If I can be of more help here, do let me know. Otherwise, I think these configs are about as much as I can contribute at this point.
The text was updated successfully, but these errors were encountered: