3

I have a script, runScript.sh, that I would like to have run (to setup some environment variables and such) BEFORE making the application.

Using advice from Running a program/script from QMake, in my .pro file, I have on the first line,

QMAKE_POST_LINK += ./runScript.sh

which will, on a make, compile and link my application and THEN run the script.

I've seen examples of how to set the script up as a target in the .pro file,but I am not sure if I quite grasp the concept. Could someone explain it better or (even better) does anyone know how to do what I'm trying to do simpler (I was hoping for a "QMAKE_PRE_LINK" but that does not seem to exist lol)?

Using Qt-4.8.4 & qmake 2.03

Community
  • 1
  • 1
redhotspike
  • 1,056
  • 5
  • 17
  • 39

1 Answers1

7

Link you've posted explains that very well.

extralib.target = extra
extralib.commands = echo "Building extralib.."; \    # Run your programs here
                make -w -C ../my_libraries/extralib; \
                echo "Done building extralib."; \

extralib.depends =
QMAKE_EXTRA_TARGETS += extralib
PRE_TARGETDEPS = extra

So, that could just be rewritten as

    extralib.target = extra
    extralib.commands = echo "Setuping the envirovment.."; \
                            export MYVAR="/usr/src/whatever" \
                            export SECONDVAR="/home/user" \
                            ./runScript.sh

    extralib.depends =



    QMAKE_EXTRA_TARGETS += extralib
    PRE_TARGETDEPS = extra
Eric
  • 19,525
  • 19
  • 84
  • 147
Nemanja Boric
  • 21,627
  • 6
  • 67
  • 91
  • So, `extra` is the target - Aha! like declaring something as `.PHONY` in a makefile? What is `extralib` then - is it like an environment variable? – redhotspike Apr 02 '13 at 14:40
  • Ultimately, could I rename `extralib` or is that a reserved keyword? – redhotspike Apr 02 '13 at 14:43
  • I don't have compiler by myself here, but AFAIK, it is not a reserved keyword, so you could add just more than one in `QMAKE_EXTRA_TARGETS += extralib anotherextralib` and so on... – Nemanja Boric Apr 02 '13 at 15:10