All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nathanael D. Noblet <nathanael@gnat.ca>
To: buildroot@busybox.net
Subject: [Buildroot] Make problems
Date: Thu, 25 Jan 2007 09:50:29 -0700	[thread overview]
Message-ID: <45B8DFD5.9040403@gnat.ca> (raw)
In-Reply-To: <D10BFA8BB60FBC43849BFB49875965CC02D9C4@MCHP7IEA.ww002.siemens.net>

Kleegrewe, Christian wrote:
>
> And my hello.mk File
>
> #############################################################
> #
> # Any custom stuff you feel like doing....
> #
> #############################################################
> HELLO_DIR=package/hello
> HELLO_SOURCE_DIR=$(HOME)/embedded_p2p/hello
> HELLO=hello
> HELLO_BINARY=hello
>
> $(HELLO):
>         -cp -af $(HELLO_SOURCE_DIR)/* $(HELLO_DIR)/
>         touch $@
>         touch -c $(HELLO_DIR)/hello.cpp
>
> $(HELLO_DIR)/$(HELLO_BINARY): $(HELLO_DIR)/hello.cpp $(HELLO_DIR)
>         $(MAKE) CFLAGS="$(TARGET_CFLAGS)" DEBUG=true KLIBC=false \
>             KERNEL_INCLUDE_DIR=$(STAGING_DIR)/include \
>             TARGET_DIR=$(TARGET_DIR) -C $(HELLO_SOURCE_DIR) -o 
> $(HELLO_BINARY);
>

if you look at other makefiles in buildroot, you'll see usually the last 
line (though position isn't important)

programname: $(PROGRAM_DIR)/$(TARGET_BINARY) ....

make deals with dependancies and dependency trees, so the line is like so

target: dependancy1 dependancy2
      tasks for target
      tasks for target

dependancy1: dependancy3
     tasks for dependency1

dependancy2:
    tasks for dependency2

dependancy3:
    tasks for dependency3


if I used this makefile directly and did `make target` I would get
tasks for dependency3
tasks for dependency1
tasks for dependency2
tasks for target

so with your makefile, you've made the end target of program name = 
hello, the only thing to run. In your
ifeq ($(strip $(BR2_PACKAGE_HELLO)),y)
TARGETS+=hello
Endif

hello: is added as a target, but your makefile has hello: as a 
dependency free target. it does the first part, but that is it. so 
change it so it is something like
$(HELLO_DIR):
    mkdir $(HELLO_DIR)

$(HELLO_DIR)/hello.cpp: $(HELLO_DIR)
    tasks including your touch $HELLO_DIR/hello.cpp

$(HELLO_DIR)/$(HELLO_BINARY): $(HELLO_DIR)/hello.cpp
       tasks...

hello: $(HELLO_DIR)/$(HELLO_BINARY)

      parent reply	other threads:[~2007-01-25 16:50 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-01-25  9:15 [Buildroot] Make problems Kleegrewe, Christian
2007-01-25 10:55 ` Bernhard Fischer
2007-01-25 16:50 ` Nathanael D. Noblet [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=45B8DFD5.9040403@gnat.ca \
    --to=nathanael@gnat.ca \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.