[CMake] Is there analog of source command from bash ?

Magnus Therning magnus at therning.org
Sun May 28 17:14:49 EDT 2017


Denis Kotov <redradist at gmail.com> writes:

> Hi everyone,
>
> I have tried to find solution to the following problem: There is the
> project with environment variable described in *setenv.sh* file
> Old build process looks like:
> source *setenv.sh*
> make release
>
> But I want to accomplish this by *CMake*. But I have realized that
> *CMake* does not have analog of source command that's why the
> following command does not work:
> execute_process(COMMAND bash -c "source ../setenv")
>
> Because *CMake* creates a child process.
> How can I import variables that was set in some sh file ?

What I usually do is rewrite the sh file into a proper CMake package and
then use find_package() to pull it in. Another option is of course to
just include() it.

/M

--
Magnus Therning              OpenPGP: 0x927912051716CE39
email: magnus at therning.org   jabber: magnus at therning.org
twitter: magthe               http://therning.org/magnus

If our ideas of intellectual property are wrong, we must change them,
improve them and return them to their original purpose. When
intellectual property rules diminish the supply of new ideas, they
steal from all of us.
     — Andrew Brown, November 19, 2005, The Guardian
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 832 bytes
Desc: not available
URL: <http://public.kitware.com/pipermail/cmake/attachments/20170528/f229ee16/attachment.sig>


More information about the CMake mailing list