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

Makefile generalisation, Unicode support #3

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

projectgus
Copy link

Hi,

Here are some tweaks to firmata_test so it builds on Unicode wx2.8 builds, and also some changes to the Makefile so it's easier to override specific parameters (and also not rely on hard-coded wx-config paths).

I made these before I noticed the comments in #1 to the effect that this repo isn't canonical, and is just synced from pjrc.com periodically... I also hadn't noticed the "OSL" Unicode tarball on pjrc.com, which makes some of these same changes as well... Oops, my mistake going direct to github(!)

I think there are now 4 slightly divergent versions of the firmata_test code:

  1. pjrc.com main tarball
  2. firmata/firmata_test repo, currently identical to (1) but may fall behind in future. Requires ANSI wxwidgets build and has hardcoded paths in Makefile.
  3. pjrc.com "OSL" tarball by Orion Lawler, can build on ANSI or Unicode wxwidgets and has hardcoded paths in Makefile.
  4. freetronics/firmata_test_repo in this Pull Request, similar to (3) but also adds some tweaks to the Makefile so can fallback to default wx-config path if the hardcoded paths aren't present.

I have a bit of a bold proposal, apologies for popping up out of the blue and making this:

@PaulStoffregen, how would you feel about making firmata/firmata_test the canonical repo for firmata_test and working from here? The Unicode changes in this PR should be fully ANSI-compatible, so building the same code against ANSI wxwidgets 2.x should work. The Makefile changes should also be backwards compatible, I kept the hardcoded wx-config paths and just added a fallback to $PATH if they aren't found (this is untested on Windows, though).

If that isn't desirable, I think a good second best would be to mark this repo clearly as "non-canonical/unsupported/out-of-date" on the description and README and link to the same tarballs as firmata.org, so it's clear which version is canonical. I can submit a PR for this if that helps.

However I would prefer the first proposal, if Paul doesn't mind. It'd be nice to have a common place to find (and contribute to) this helpful code. :)

Thanks everyone for your work on firmata and this test tool, btw.

* Pull out common arguments across platforms.
* Allow command line overrides for most common variables.
* Allow CROSS and LDFLAGS to be set, to attempt(?) cross-compiling.
* Make existing hardcoded wx-config paths defaults only if no path is set, fail over to `which wx-config` if they don't exist.
Code will still work with ANSI builds, but Unicode-enabled is
how most distros Linux ship wx I think (I'm not a wx expert though).

I think this all becomes unnecessary again in wx3.0, where everything
is unicode and these upconversions mostly become implicit, but at
present 2.x is still pretty widely distributed.
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.

1 participant