Commit graph

340 commits

Author SHA1 Message Date
IOhannes m zmölnig
0493d4a1e8 Started a small tips&tricks page
with handy commands to achieve specific goals
2018-02-07 16:21:01 +01:00
katjav
f1b0e3c7b6 Add linker option '-static-libgcc' for C++ code on Windows
It seems that standard C libs are needed for C++ externals because
of 'extern "C"' functions (setup, Pd API).
2018-02-01 21:45:54 +01:00
katjav
a1ad2e9c88 Merge branch 'windows-paths'
This merges a series of commits that solve a few issues with paths
for Windows builds.

Variables 'PDDIR' and 'PDBINDIR' now have precedence over 'pdbinpath' as they
should.

Default paths for 32 bit builds on 64 bit Windows are now implemented (thanks
to Lucas Cordiviola).

Probing of 'pdincludepath' and 'pdbinpath' through 'ls' is removed to avoid
confusing error messages.
2018-01-31 13:20:42 +01:00
katjav
3e974fdf21 Update makefile comments related to paths 2018-01-31 13:19:21 +01:00
katjav
fe45bcb376 Avoid ls errors when default paths for Pd on Windows do not exist
Such error messages are confusing if you do not intend to use default
paths. Therefore the probes with ls are removed. Paths to m_pd.h and
pd.dll are probed later in the process when they are possibly
overriden by user definitions.
2018-01-28 20:58:12 +01:00
katjav
9240b64eba Evaluate 'PDBINDIR' before ld flags
So ld flags can be evaluated as immediate variables. Otherwise it
was too confusing, hard to understand why it worked at all.
2018-01-27 14:10:12 +01:00
katjav
f3887bbe7d Update Windows search path documentation in makefile 2018-01-27 12:40:46 +01:00
katjav
1bcf78f86e Define default paths for 32 bit build on 64 bit Windows 2018-01-27 00:07:21 +01:00
katjav
7740128257 Fix priority for user path variables 'PDDIR' & Co.
The order of variable expansion prevented this for the path
to binary 'pd.dll'.
2018-01-24 22:50:20 +01:00
katjav
1361dd3999 Remove unuseful variable 'PD_PATH'
The variable was introduced in commit 41e9743 for compatibility
with centralized build system as inherited from Pd-extended by
Pd-L2ork and Purr Data. But it doesn't work in that context because
$(PD_PATH)/bin is absent. Therefore better remove 'PD_PATH' and
focus on making variables 'PDDIR' & Co. work as expected.
2018-01-24 13:56:36 +01:00
katjav
80d7dc0a13 Bump version to 0.5.0, ready for Windows 64 bit
Update version number after merge commit 215bf3e. This is the first
version handling 64 bit builds for Windows.
2018-01-23 21:25:23 +01:00
katjav
215bf3edc8 Merge branch 'target-arch-mingw'
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.
2018-01-23 18:03:23 +01:00
katjav
a01ee169cd Revert 'uname --machine' to 'uname -m' (bug fix OSX)
Long option name '--machine' was introduced in commit fa3c2ca for
explicitness, however it is not supported by clang / OSX.
2018-01-22 23:19:24 +01:00
katjav
13796bfee2 Add option '-msse3' for Windows on x86_64 architecture 2018-01-21 22:52:19 +01:00
katjav
77ff876401 Fix conditional checks broken in commits e4d42f2 and f83d429 2018-01-21 22:42:47 +01:00
katjav
e4d42f2227 Assume system is "Windows" when uname says "MSYS"
Needed for building with pd-lib-builder on AppVeyor.
2018-01-21 14:59:38 +01:00
katjav
231e344b44 Use variables 'build.arch' and 'target.arch' consistently 2018-01-21 14:45:32 +01:00
katjav
867ad5e8e8 Introduce general remainder architecture category 2018-01-21 11:54:01 +01:00
katjav
f83d4293bd Introduce remainder architecture category for Windows
And explicitly specify Intel 32 bit architectures, where 'mingw32'
is included to support MSYS1.
2018-01-21 11:42:55 +01:00
katjav
37d23530c6 Leave out architecture 'ia64'
As per suggestion of Johannes Zmoelnig. It is not relevant and
also not compatible with x86_64.
2018-01-21 11:19:43 +01:00
katjav
ef21a16eb0 Introduce architecture dependent settings for Windows 2018-01-20 23:11:15 +01:00
katjav
fa3c2ca71d Introduce variable 'target.arch'
It stores the first field of <cpu>-<vendor>-<os> triplet
as retrieved from command '<compiler> -dumpmachine' where <compiler>
is g++ or gcc.
2018-01-20 17:45:31 +01:00
katjav
4be3e99acb Swap OS and machine detection so OS comes first
This is in preparation for target architecture detection through
gcc / g++.
2018-01-20 17:18:34 +01:00
Roman Haefeli
0d7cd6a7db bump version to 1.1.1 2017-03-08 09:47:38 +01:00
Roman Haefeli
49cefffbb7 make fixes by mrpeach work also when compiling with mingw 2017-03-08 09:47:22 +01:00
IOhannes m zmölnig
c8e6d783bc fixed indentation 2017-02-27 23:06:42 +01:00
IOhannes m zmölnig
d63a61098b make path to pd-lib-builder Makefile settable
github/gitlab/... usually don't export git-submodules.
having the path configurable allows us to re-use a system-installed clone
2017-02-27 23:02:48 +01:00
Roman Haefeli
33242e1839 new Makefile based on pd-lib-builder 2017-02-27 22:08:38 +01:00
Roman Haefeli
27b55142f2 bumped version to 1.1 2017-02-27 22:08:01 +01:00
Roman Haefeli
71399fab95 added pd-lib-builder as submodule 2017-02-27 21:50:51 +01:00
IOhannes m zmölnig
4b196cd642 moved comprt-code to toplevel directory
keep [bird] in subdirectory; it's just a legacy project using [comport]
2017-02-27 11:14:59 +01:00
Martin Peach
a2be44ba74 fixed read problem on Windows 10, use secure versions of strncpy, fix bug in set_break
svn path=/trunk/externals/iem/comport/; revision=17565
2017-02-27 11:13:35 +01:00
katjav
872c34b1d3 Update CHANGELOG.txt for v0.4.4 2016-11-22 17:56:20 +01:00
katjav
2c14110947 Use variable 'system' when evaluating 'for{Linux,Darwin,Windows}
This evaluates correctly in the case where 'system' is defined for
the purpose of cross compiling. This commit addresses issue #31.
2016-11-22 17:40:13 +01:00
IOhannes m zmölnig
cb839ed470 note (within the pd-lib-builder Makefile) how to update the file. 2016-11-22 16:28:25 +01:00
IOhannes m zmölnig
cdd3b43978 removed trailing whitespace 2016-11-22 16:28:25 +01:00
katja
6120db18a5 Update CHANGELOG.txt 2016-11-02 01:44:26 +01:00
katja
426b38bb35 Replace flags '-fpic' with '-fPIC'
Reportedly '-fPIC' should work for all architectures while '-fpic'
does not.
2016-11-02 01:41:30 +01:00
katja
2e13d8f7a3 Fix bug where incorrect message about m_pd.h is given
And bump to version 0.4.2
2016-10-30 22:15:18 +01:00
katja
058ba82a47 Add section 'versioning' in README.md 2016-10-28 14:31:01 +02:00
katja
006d9575b5 Add CHANGELOG.txt to the project 2016-10-28 09:58:47 +02:00
katja
4c680bfe6f Add 'path' and 'documentation' sections in README.md 2016-10-27 01:10:53 +02:00
katja
48c4127297 Bump version to 0.4.1 after merging 'configurable-minimum-osxversion' 2016-10-27 00:44:56 +02:00
katja
ff9b40c451 Merge branch 'configurable-minimum-osxversion'
This merges commit a7d3098 which responded to issue #22. With this commit,
cflag '-mmacosx-version-min=*' from a lib makefile is respected, not
overridden by a default minimum version.
2016-10-27 00:43:02 +02:00
katja
cf04da9b47 Rewrite variable descriptions after introduction of 'PDDIR' & Co.
Variables PDDIR, PDINCLUDEDIR, PDBINDIR and PDLIBDIR were introduced in
the previous commit as API replacement for a less coherent set of path
variable names, and made these paths settable in the environment.
This commit (re)writes variable descriptions accordingly and reorganizes
descriptions with the intention to give a more comprehensible overview of
the API structure.
2016-10-14 11:50:34 +02:00
katja
b0dab729b9 Introduce variables PDDIR, PDINCLUDEDIR, PDBINDIR, PDLIBDIR
These new path variables are aliases of existing ones that didn't have
coherent names. The new variables are all defined such that they are
overridable from the environment, as indicated by the upper case syntax.
2016-10-14 00:27:39 +02:00
katja
a0c87bea5e Defer expansion of $(pdbinpath) to correctly find pd.dll (bugfix)
The issue was introduced in version 0.3.0 from the previous commit
(41e9743).
2016-10-14 00:15:10 +02:00
katja
41e9743ed5 Introduce variable 'PD_PATH', bump version to 0.3.0
This variable is useful when building against a 'portable' pd install.
Makefile.pdlibbuilder should now be compatible with centralized build
systems when PD_PATH is passed as make argument, or set in environment.
2016-10-09 22:07:23 +02:00
katja
5b920b194d Set version to 0.2.8 after merging 'install-dollarfiles'
Update version number because of previous (merge) commit. The
merge was done with github's 'Merge' button. Never again. The merged
commit was 49a0b2f from 2016-06-28 allowing installed files to
contain weirdo characters, and closing issue #19.
2016-10-09 14:12:31 +02:00
katja
a7d309822d Respect flag '-mmacosx-version-min=*' from lib makefile
Makefile.pdlibbuilder sets a default minimum OSX version for optimal
support of older OSX versions. With this commit, '-mmacosx-version-min=*'
in variable 'cflags' from the lib makefile is respected, not overridden.

A lib makefile can now determine the minimum OSX version (for example to
support C++11, which was the direct motivation for this change).

This is a response to pull request #22 'Making minimum Mac OS X version
configurable', but note that it is implemented in a different way.
2016-10-09 11:56:14 +02:00