-
Notifications
You must be signed in to change notification settings - Fork 3
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
building on MacOS with pd-lib-builder #1
Open
megrimm
wants to merge
80
commits into
dmedine:master
Choose a base branch
from
megrimm:master
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
lib.version is only expanded if the file named by $(metafile) exists, but then it uses a hardcoded filename to do the actual expansion. this patch uses $(metafile) to do the expansion instead.
use $(metafile) instead of hardcoded filename in lib.version expansion
This commit reorganizes the accumulation of build flags in such a way that non-obligatory build flags can be overriden or added by specifying CPPFLAGS, CFLAGS and LDFLAGS as arguments from command line or environment.
I've also tried to make printed info a bit more helpful.
Targets pre and post can be defined in the including (library) makefile. They are added to provide extra flexibility. Target all will build pre, $(executable) and post in deterministic order. Built-in documentation is modified to reflect the new situation.
This merge introduces the evaluation of optional multiline defines 'forLinux', 'forDarwin' and 'forWindows', which can be used as a flexible replacement for system-specific variables as in Pd-extended's Makefile template. Example code is added to Makefile.pdlibbuilder's built-in documentation.
Command line variable CFLAGS now work according to conventions (overriding all non-essential C flags). CPPFLAGS and LDFLAGS are also implemented. Built-in documentation updated.
Phony target 'pre' forces rebuilds. This should not be default behavior of Makefile.pdlibbuilder. If one needs a pre-build target (phony or real file), declare it as prerequisite of $(all.objects) in the library makefile after inclusion of Makefile.pdlibbuilder. A pre-build target can have any name that isn't a target in Makefile.pdlibbuilder.
Also remove associated documentation comments.
Multiple arch flags are incompatible with option -MM for preprocessor on (at least) OSX <= 10.5. Non clean builds would stall on this. This commit disables dependency checking for fat builds (current default for OSX) on ppc and i386. Assuming that development is done on newer systems / machines it should rarely hurt.
The bug was probably introduced with version 0.2.3. Bump version to 0.2.4.
And bump version to 0.2.5
This evaluates correctly in the case where 'system' is defined for the purpose of cross compiling. This commit addresses issue #31.
This is in preparation for target architecture detection through gcc / g++.
It stores the first field of <cpu>-<vendor>-<os> triplet as retrieved from command '<compiler> -dumpmachine' where <compiler> is g++ or gcc.
As per suggestion of Johannes Zmoelnig. It is not relevant and also not compatible with x86_64.
And explicitly specify Intel 32 bit architectures, where 'mingw32' is included to support MSYS1.
Needed for building with pd-lib-builder on AppVeyor.
Long option name '--machine' was introduced in commit fa3c2ca for explicitness, however it is not supported by clang / OSX.
This merges a series of commits implementing target architecture detection for Windows builds, and the setting of appropriate options for 32 and 64 bit builds.
Update version number after merge commit 215bf3e. This is the first version handling 64 bit builds for Windows.
…851b30' git-subtree-dir: pd-lib-builder git-subtree-mainline: 81d22e6 git-subtree-split: 7d4c0ca9bb184acfde98469f1ba9670f8f851b30
On MacOS there is no libpocketsphinx.so only libpocketsphinx.dylib
was getting "ERROR: "ngrams_raw.c", line 356: Corrupted model, some trigrams have no corresponding bigram" because old models were corrupted (see https://stackoverflow.com/questions/36409042/pocketsphinx-error-reading-hub4-5000-dmp"
replace old models (corrupted) with new ones
homebrew installs sphinx stuff in weird places so i recomend just downloading from github, make and install oneself
It is nice to see an old project like this getting some attention! I've
always thought that an open source speech decoder in Pd was a pretty
cool tool, but as far as I knew, no one was ever doing anything with it.
Can you please introduce yourself to me? I know megrimm from the Pd
list, but I don't actually know who you are, what you do, which (if any)
university you are associated with, etc.. Before I make a pull (even on
an ancient project like this one) I need to know who is requesting it.
You can send me an email at david<dot>eric<dot>medine<at>gmail<dot>com.
…On 02/25/2018 10:28 PM, megrimm wrote:
just getting this building on MacOS with pd-lib-builder. I have not
tested but it does load in Pd. I also added a script for embedding
libs. also changed .so to .dylibs... not sure how this works in linux
but you can alway pull what might be useful. code cleanup might be a
good next step.
------------------------------------------------------------------------
You can view, comment on, or merge this pull request online at:
#1
Commit Summary
* Makefile.pdlibbuilder version 0.0.0
* changed some comments
* corrected futile typo in comment
* added vim modeline for syntax highlighting
* another try at syntax highlighting modeline
* Added reference to helloworld project in README.md.
* use $(metafile) in version expansion
* Merge pull request #3 from umlaeute/patch-1
* fix expansion of variable lib.version in cflags during compilation
* bump version to 0.0.1
* Evaluate optional per-system multiline defines
* Use CPPFLAGS, CFLAGS and LDFLAGS to override/add build flags
* Improve methods for searching Pd include paths.
* Small fix: add LDFLAGS to shared.ldflags too.
* Bumped to version 0.0.2.
* Updated README.md to include reference to xeq.
* Introduce pre and post targets.
* bump version 0.0.2 > 0.1.0 for added feature (targets pre / post)
* Remove cruft from .PHONY:
* Remove cruft from a variable definition
* Merge branch 'eval-system-specific-defines', update version to 0.2.0
* Document CPPFLAGS, CFLAGS, LDFLAGS
* Replaced outdated link to cyclone repository in README.md
* Merge branch 'command-line-build-flags', bump version to 0.2.1
* Remove target 'pre' from Makefile.pdlibbuilder
* Bump to version 0.2.2 after removal of 'pre' target
* Disable dep. checking for fat builds on OSX <= 10.5. Version 0.2.3
* Fix regression bug that disabled all dependency checking
* Print Makefile.pdlibbuilder version
* Fix dependency checking for object files in other directories
* allow installed files to contain weirdo characters
* Do not pass architecture flags for dependency checking
* Remove old dependency-check workaround for OSX <= 10.5
* updated cyclone link
* re-added cyclone link & added contextual info
* Scrap all default include / bin paths except vanilla's
* Add more projects that use pd-lib-builder in README.md
* Merge branch 'install-dollarfiles'
* Respect flag '-mmacosx-version-min=*' from lib makefile
* Set version to 0.2.8 after merging 'install-dollarfiles'
* Introduce variable 'PD_PATH', bump version to 0.3.0
* Defer expansion of $(pdbinpath) to correctly find pd.dll (bugfix)
* Introduce variables PDDIR, PDINCLUDEDIR, PDBINDIR, PDLIBDIR
* Rewrite variable descriptions after introduction of 'PDDIR' & Co.
* Merge branch 'configurable-minimum-osxversion'
* Bump version to 0.4.1 after merging 'configurable-minimum-osxversion'
* Add 'path' and 'documentation' sections in README.md
* Add CHANGELOG.txt to the project
* Add section 'versioning' in README.md
* Fix bug where incorrect message about m_pd.h is given
* Replace flags '-fpic' with '-fPIC'
* Update CHANGELOG.txt
* removed trailing whitespace
* note (within the pd-lib-builder Makefile) how to update the file.
* Use variable 'system' when evaluating 'for{Linux,Darwin,Windows}
* Update CHANGELOG.txt for v0.4.4
* Swap OS and machine detection so OS comes first
* Introduce variable 'target.arch'
* Introduce architecture dependent settings for Windows
* Leave out architecture 'ia64'
* Introduce remainder architecture category for Windows
* Introduce general remainder architecture category
* Use variables 'build.arch' and 'target.arch' consistently
* Assume system is "Windows" when uname says "MSYS"
* Fix conditional checks broken in commits e4d42f2 and f83d429
* Add option '-msse3' for Windows on x86_64 architecture
* Revert 'uname --machine' to 'uname -m' (bug fix OSX)
* Merge branch 'target-arch-mingw'
* Bump version to 0.5.0, ready for Windows 64 bit
* Add 'pd-lib-builder/' from commit
'7d4c0ca9bb184acfde98469f1ba9670f8f851b30'
* add makefile for pd-lib-builder
* add pd-lib-builder instructions
* use libpocketsphinx.dylib not *.so
* add MacOS dependency embed script
* add filetype git ignore
* remove unused lines
File Changes
* *A* .gitignore
<https://github.com/dmedine/recog_tilde/pull/1/files#diff-0> (4)
* *A* Makefile.pdlibbuilder
<https://github.com/dmedine/recog_tilde/pull/1/files#diff-1> (18)
* *M* README
<https://github.com/dmedine/recog_tilde/pull/1/files#diff-2> (11)
* *A* osx_dependencies.sh
<https://github.com/dmedine/recog_tilde/pull/1/files#diff-3> (52)
* *A* pd-lib-builder/CHANGELOG.txt
<https://github.com/dmedine/recog_tilde/pull/1/files#diff-4> (87)
* *A* pd-lib-builder/Makefile.pdlibbuilder
<https://github.com/dmedine/recog_tilde/pull/1/files#diff-5> (1252)
* *A* pd-lib-builder/README.md
<https://github.com/dmedine/recog_tilde/pull/1/files#diff-6> (113)
* *M* recog~.c
<https://github.com/dmedine/recog_tilde/pull/1/files#diff-7> (2)
Patch Links:
* https://github.com/dmedine/recog_tilde/pull/1.patch
* https://github.com/dmedine/recog_tilde/pull/1.diff
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#1>, or mute the thread
<https://github.com/notifications/unsubscribe-auth/ADch7iCZ1fZGVgtpLLMdoMI-S63rSeAYks5tYdCOgaJpZM4SSd8H>.
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
just getting this building on MacOS with pd-lib-builder. I have not tested but it does load in Pd. I also added a script for embedding libs. also changed .so to .dylibs... not sure how this works in linux but you can alway pull what might be useful. code cleanup might be a good next step.