{"action":"created","issue":{"url":"https://api.github.com/repos/openvenues/libpostal/issues/272","repository_url":"https://api.github.com/repos/openvenues/libpostal","labels_url":"https://api.github.com/repos/openvenues/libpostal/issues/272/labels{/name}","comments_url":"https://api.github.com/repos/openvenues/libpostal/issues/272/comments","events_url":"https://api.github.com/repos/openvenues/libpostal/issues/272/events","html_url":"https://github.com/openvenues/libpostal/pull/272","id":276406472,"number":272,"title":"Windows support via AppVeyor","user":{"login":"AeroXuk","id":9274396,"avatar_url":"https://avatars1.githubusercontent.com/u/9274396?v=4","gravatar_id":"","url":"https://api.github.com/users/AeroXuk","html_url":"https://github.com/AeroXuk","followers_url":"https://api.github.com/users/AeroXuk/followers","following_url":"https://api.github.com/users/AeroXuk/following{/other_user}","gists_url":"https://api.github.com/users/AeroXuk/gists{/gist_id}","starred_url":"https://api.github.com/users/AeroXuk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AeroXuk/subscriptions","organizations_url":"https://api.github.com/users/AeroXuk/orgs","repos_url":"https://api.github.com/users/AeroXuk/repos","events_url":"https://api.github.com/users/AeroXuk/events{/privacy}","received_events_url":"https://api.github.com/users/AeroXuk/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":17,"created_at":"2017-11-23T15:09:26Z","updated_at":"2017-11-30T19:59:24Z","closed_at":"2017-11-29T02:35:47Z","author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/openvenues/libpostal/pulls/272","html_url":"https://github.com/openvenues/libpostal/pull/272","diff_url":"https://github.com/openvenues/libpostal/pull/272.diff","patch_url":"https://github.com/openvenues/libpostal/pull/272.patch"},"body":"This pull request is based on the 'BenK10/libpostal_windows' patch and expanded apon.\r\n\r\nI have gone through all the files reviewing the changes and build scripts and making minor changes that will allow this library to be built on Windows via MSYS2 & MingW64.  I have setup AppVeyor which from other Issue logs I saw was a requirement for the libpostal dev team to take on Windows support.\r\n\r\nAppVeyor has been configured to build and package the resulting binary into a `.zip` file along with the relevant linking files `libpostal.dll`, `libpostal.lib`, `libpostal.exp` & `libpostal.def`.\r\n\r\nThe package built by AppVeyor can be uploaded as a Release or linked to via the following URL:\r\n`https://ci.appveyor.com/api/projects/<account>/libpostal/artifacts/libpostal.zip`\r\n\r\nThe changes I have made build successfully on Travis CI & AppVeyor.\r\n\r\nThe only program not working on this build is the example console app address_parser. This is due to not having a `termios.h` equivalent. So this step of the build is commented out for the Windows build (it is still compiled for the linux build)."},"comment":{"url":"https://api.github.com/repos/openvenues/libpostal/issues/comments/348303156","html_url":"https://github.com/openvenues/libpostal/pull/272#issuecomment-348303156","issue_url":"https://api.github.com/repos/openvenues/libpostal/issues/272","id":348303156,"user":{"login":"albarrentine","id":238455,"avatar_url":"https://avatars2.githubusercontent.com/u/238455?v=4","gravatar_id":"","url":"https://api.github.com/users/albarrentine","html_url":"https://github.com/albarrentine","followers_url":"https://api.github.com/users/albarrentine/followers","following_url":"https://api.github.com/users/albarrentine/following{/other_user}","gists_url":"https://api.github.com/users/albarrentine/gists{/gist_id}","starred_url":"https://api.github.com/users/albarrentine/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/albarrentine/subscriptions","organizations_url":"https://api.github.com/users/albarrentine/orgs","repos_url":"https://api.github.com/users/albarrentine/repos","events_url":"https://api.github.com/users/albarrentine/events{/privacy}","received_events_url":"https://api.github.com/users/albarrentine/received_events","type":"User","site_admin":false},"created_at":"2017-11-30T19:59:24Z","updated_at":"2017-11-30T19:59:24Z","author_association":"CONTRIBUTOR","body":"@BenK10 yeah, so there are two types of tests:\r\n\r\n1. Tests that include only the headers, where we need to link to find the symbols in the shared lib\r\n2. Tests of functions not exposed in the header, which include the whole `.c` file directly, and do not need to be linked\r\n\r\nFor the first type of test, we were previously linking the symbols from the shared lib, which saved having to compile the source files twice. On Windows that meant everything would have to be dllexported. By adding the various source files to the test Makefile targets, in exchange for having to compile them twice (just added `make -j4` to all builds to compensate), the files are now compiled directly as part of the test program, so only libpostal's public API functions need to be exported."}}
{"actor":{"display_login":"albarrentine"}}