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

Adding support for sketch-specific build properties #29

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

stevemarple
Copy link

Tests for existence of a build_props.txt file in the sketch
directory. If present reads properties similar to those found in the
hardware and board files, allowing the user to easily customise the
build for a specific sketch. Most useful when containing lines similar
to

compiler.c.extra_flags=-D NDEBUG
compiler.cpp.extra_flags=-D NDEBUG -D MYLIBRARY_BUFSIZE=100

which enables the user to have macros defined for all compilation
units, including libraries.

Signed-off-by: Steve Marple [email protected]

Tests for existence of a build_props.txt file in the sketch
directory. If present reads properties similar to those found in the
hardware and board files, allowing the user to easily customise the
build for a specific sketch. Most useful when containing lines similar
to

    compiler.c.extra_flags=-D NDEBUG
    compiler.cpp.extra_flags=-D NDEBUG -D MYLIBRARY_BUFSIZE=100

which enables the user to have macros defined for all compilation
units, including libraries.

Signed-off-by: Steve Marple <[email protected]>
@stevemarple
Copy link
Author

One point of consideration: adding sketch-specific build properties allows the user to override build.path (which is removed when all compilation units must be rebuilt), commands such as compiler.cmd and paths such as compiler.path. Sketches and their build_props.txt file taken from untrusted sources could therefore be considered harmful. This could be mitigated by requiring a user-preference to be set before sketch-specific build properties are enabled. Alternatively the properties could be limited to a subset (eg by excluding *.path, *.cmd, and recipe.*).

@stevemarple
Copy link
Author

Addresses #15

@ffissore
Copy link
Contributor

ffissore commented Oct 5, 2015

Assigning to @cmaglie: he will explain why such external defines are considered harmful

@ffissore
Copy link
Contributor

ffissore commented Oct 5, 2015

btw, nice code, thank you very much

@FrankBoesing
Copy link

ping..
nothing happened.. are you going to merge this, or not ?

@luelista
Copy link

luelista commented Sep 9, 2017

Hey, @arduino, @ffissore, @cmaglie
... I think this pull request implements a very useful and missing feature - what do you think about merging it?

@ffissore
Copy link
Contributor

@max-weller sorry you missed the news. I no longer work for arduino https://groups.google.com/a/arduino.cc/forum/#!msg/developers/YJLX6AZHem4/kpsLef7XBAAJ

@ricardojlrufino
Copy link

+1

@CLAassistant
Copy link

CLAassistant commented Apr 9, 2021

CLA assistant check
All committers have signed the CLA.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
status: on hold Do not proceed at this time
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants