Expanding path variable in makefile using SED on Windows Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern) Data science time! April 2019 and salary with experience The Ask Question Wizard is Live!What is the difference between the GNU Makefile variable assignments =, ?=, := and +=?How do you use a variable in a regular expression?How can I replace a newline (n) using sed?Using Sed to expand environment variables inside filesSet a path variable with spaces in the path in a Windows .cmd file or batch fileWhat is the purpose of .PHONY in a makefile?makefile pathing issues on OSXExport variable in MakefileExpand environment variables using sed scriptAltering Makefile variable with sed
Did any compiler fully use 80-bit floating point?
How to make triangles with rounded sides and corners? (squircle with 3 sides)
Determine whether an integer is a palindrome
How could a hydrazine and N2O4 cloud (or it's reactants) show up in weather radar?
Why is there so little support for joining EFTA in the British parliament?
Found this skink in my tomato plant bucket. Is he trapped? Or could he leave if he wanted?
Adapting the Chinese Remainder Theorem (CRT) for integers to polynomials
Getting representations of the Lie group out of representations of its Lie algebra
Where and when has Thucydides been studied?
3D Masyu - A Die
Random body shuffle every night—can we still function?
Any stored/leased 737s that could substitute for grounded MAXs?
What is "Lambda" in Heston's original paper on stochastic volatility models?
How do you write "wild blueberries flavored"?
First paper to introduce the "principal-agent problem"
newbie Q : How to read an output file in one command line
Fit odd number of triplets in a measure?
Marquee sign letters
Why can't fire hurt Daenerys but it did to Jon Snow in season 1?
"Destructive power" carried by a B-52?
What does 丫 mean? 丫是什么意思?
Is there a verb for listening stealthily?
NIntegrate on a solution of a matrix ODE
Calculation of line of sight system gain
Expanding path variable in makefile using SED on Windows
Announcing the arrival of Valued Associate #679: Cesar Manara
Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern)
Data science time! April 2019 and salary with experience
The Ask Question Wizard is Live!What is the difference between the GNU Makefile variable assignments =, ?=, := and +=?How do you use a variable in a regular expression?How can I replace a newline (n) using sed?Using Sed to expand environment variables inside filesSet a path variable with spaces in the path in a Windows .cmd file or batch fileWhat is the purpose of .PHONY in a makefile?makefile pathing issues on OSXExport variable in MakefileExpand environment variables using sed scriptAltering Makefile variable with sed
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;
On Windows machine, a makefile is taking path option and creating another file by appending this path value.
My problem is that path variable is not expanding correct in resultant file.
For example
$ make var=c:testkernel
by using below makefile code this $(var) value is being appending to output file
all:
@sed -i '1 iexport PATH := $(var)' output.txt
Expected result
export PATH := c:testkernel
But instead I'm getting
export PATH := c: estkernel
So, how I can fix this problem in makefile?
regex sed cmd makefile
add a comment |
On Windows machine, a makefile is taking path option and creating another file by appending this path value.
My problem is that path variable is not expanding correct in resultant file.
For example
$ make var=c:testkernel
by using below makefile code this $(var) value is being appending to output file
all:
@sed -i '1 iexport PATH := $(var)' output.txt
Expected result
export PATH := c:testkernel
But instead I'm getting
export PATH := c: estkernel
So, how I can fix this problem in makefile?
regex sed cmd makefile
Looks like thet
inc:testkernel
is interpreted as a tab, escape the backslashes (with another one)
– LotPings
Mar 22 at 12:43
What are you running that provides sed, make, and a shell? cygwin, mingw, ???
– lit
Mar 22 at 12:53
add a comment |
On Windows machine, a makefile is taking path option and creating another file by appending this path value.
My problem is that path variable is not expanding correct in resultant file.
For example
$ make var=c:testkernel
by using below makefile code this $(var) value is being appending to output file
all:
@sed -i '1 iexport PATH := $(var)' output.txt
Expected result
export PATH := c:testkernel
But instead I'm getting
export PATH := c: estkernel
So, how I can fix this problem in makefile?
regex sed cmd makefile
On Windows machine, a makefile is taking path option and creating another file by appending this path value.
My problem is that path variable is not expanding correct in resultant file.
For example
$ make var=c:testkernel
by using below makefile code this $(var) value is being appending to output file
all:
@sed -i '1 iexport PATH := $(var)' output.txt
Expected result
export PATH := c:testkernel
But instead I'm getting
export PATH := c: estkernel
So, how I can fix this problem in makefile?
regex sed cmd makefile
regex sed cmd makefile
edited Mar 22 at 14:45
Taylor Spark
3610
3610
asked Mar 22 at 12:30
Equation SolverEquation Solver
179113
179113
Looks like thet
inc:testkernel
is interpreted as a tab, escape the backslashes (with another one)
– LotPings
Mar 22 at 12:43
What are you running that provides sed, make, and a shell? cygwin, mingw, ???
– lit
Mar 22 at 12:53
add a comment |
Looks like thet
inc:testkernel
is interpreted as a tab, escape the backslashes (with another one)
– LotPings
Mar 22 at 12:43
What are you running that provides sed, make, and a shell? cygwin, mingw, ???
– lit
Mar 22 at 12:53
Looks like the
t
in c:testkernel
is interpreted as a tab, escape the backslashes (with another one)– LotPings
Mar 22 at 12:43
Looks like the
t
in c:testkernel
is interpreted as a tab, escape the backslashes (with another one)– LotPings
Mar 22 at 12:43
What are you running that provides sed, make, and a shell? cygwin, mingw, ???
– lit
Mar 22 at 12:53
What are you running that provides sed, make, and a shell? cygwin, mingw, ???
– lit
Mar 22 at 12:53
add a comment |
1 Answer
1
active
oldest
votes
First, I strongly urge you to always use forward slashes in paths even on Windows, especially when working with make. There are very few programs on Windows that won't work with forward-slashes (mainly old-school CMD commands etc.) and using backslashes in tools which have their provenance in UNIX will always be an uncomfortable fit.
For your situation you can do something like this:
all:
@sed -i '1 iexport PATH := $(subst ,\,$(var))' output.txt
to convert your backslashes to escaped backslashes.
you really save my day, big thanks
– Equation Solver
Mar 22 at 13:19
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55299646%2fexpanding-path-variable-in-makefile-using-sed-on-windows%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
First, I strongly urge you to always use forward slashes in paths even on Windows, especially when working with make. There are very few programs on Windows that won't work with forward-slashes (mainly old-school CMD commands etc.) and using backslashes in tools which have their provenance in UNIX will always be an uncomfortable fit.
For your situation you can do something like this:
all:
@sed -i '1 iexport PATH := $(subst ,\,$(var))' output.txt
to convert your backslashes to escaped backslashes.
you really save my day, big thanks
– Equation Solver
Mar 22 at 13:19
add a comment |
First, I strongly urge you to always use forward slashes in paths even on Windows, especially when working with make. There are very few programs on Windows that won't work with forward-slashes (mainly old-school CMD commands etc.) and using backslashes in tools which have their provenance in UNIX will always be an uncomfortable fit.
For your situation you can do something like this:
all:
@sed -i '1 iexport PATH := $(subst ,\,$(var))' output.txt
to convert your backslashes to escaped backslashes.
you really save my day, big thanks
– Equation Solver
Mar 22 at 13:19
add a comment |
First, I strongly urge you to always use forward slashes in paths even on Windows, especially when working with make. There are very few programs on Windows that won't work with forward-slashes (mainly old-school CMD commands etc.) and using backslashes in tools which have their provenance in UNIX will always be an uncomfortable fit.
For your situation you can do something like this:
all:
@sed -i '1 iexport PATH := $(subst ,\,$(var))' output.txt
to convert your backslashes to escaped backslashes.
First, I strongly urge you to always use forward slashes in paths even on Windows, especially when working with make. There are very few programs on Windows that won't work with forward-slashes (mainly old-school CMD commands etc.) and using backslashes in tools which have their provenance in UNIX will always be an uncomfortable fit.
For your situation you can do something like this:
all:
@sed -i '1 iexport PATH := $(subst ,\,$(var))' output.txt
to convert your backslashes to escaped backslashes.
answered Mar 22 at 13:05
MadScientistMadScientist
48.4k55470
48.4k55470
you really save my day, big thanks
– Equation Solver
Mar 22 at 13:19
add a comment |
you really save my day, big thanks
– Equation Solver
Mar 22 at 13:19
you really save my day, big thanks
– Equation Solver
Mar 22 at 13:19
you really save my day, big thanks
– Equation Solver
Mar 22 at 13:19
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55299646%2fexpanding-path-variable-in-makefile-using-sed-on-windows%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Looks like the
t
inc:testkernel
is interpreted as a tab, escape the backslashes (with another one)– LotPings
Mar 22 at 12:43
What are you running that provides sed, make, and a shell? cygwin, mingw, ???
– lit
Mar 22 at 12:53