Hi Johan,

Thanks for the solution. The problem is really from missing $.

regards,
Irvanda


On Thu, Jan 23, 2014 at 7:18 PM, Johan Dams <johan.dams@wrdsystems.co.uk> wrote:
Hi,

No sure if this will solve your problem, but your line:

(patsubst $(PKGDIR)/%.c, %.c, $(filter-out
$(PKGDIR)/lib/src/ompi/mca/pml/csum/pml_csum_endpoint.c...

Is missing the '$' sign at the beginning, i.e, $(patsubst...


Best regards,
Johan

On Thu, 2014-01-23 at 16:34 +0900, Irvanda Kurniadi wrote:
> Hi,
>
>
> I'm trying to port openmpi. I follow libsdl Makefile structure. This
> is my Makefile:
>
>         PKGDIR          ?= ../..
>         L4DIR           ?= $(PKGDIR)/../..
>
>         TARGET          = libmpi.a libmpi.so
>
>         CONTRIB_INCDIR  = libompi
>         REQUIRES_LIBS   = libc_support_misc l4re_c-util libpthread
>
>         SRC_C = $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/attribute/*.c)) \
>                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/class/*.c)) \
>                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/communicator/*.c)) \
>                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/errhandler/*.c)) \
>                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/file/*.c)) \
>                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/group/*.c)) \
>                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/info/*.c)) \
>                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/allocator/base/*.c)) \
>                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/allocator/basic/*.c)) \
>                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/allocator/bucket/*.c)) \
>                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/bml/base/*.c)) \
>                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/bml/r2/*.c)) \
>                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/btl/base/*.c)) \
>                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/btl/ofud/*.c)) \
>                 $(patsubst $(PKGDIR)/%.c, %.c, $(filter-out
>         $(PKGDIR)/lib/src/ompi/mca/btl/openib/btl_openib_failover.c,
>         $(wildcard $(PKGDIR)/lib/src/ompi/mca/btl/base/connect/*.c)))
>         \
>                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/btl/self/*.c)) \
>                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/btl/sm/*.c)) \
>                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/btl/tcp/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(filter-out
>         $(PKGDIR)/lib/src/ompi/mca/btl/openib/connect/btl_openib_connect_rdmacm.c $(PKGDIR)/lib/src/ompi/mca/bml/openib/connect/btl_openib_connect_sl.c $(PKGDIR)/lib/src/ompi/mca/bml/openib/connect/btl_openib_connect_xoob.c, $(wildcard $(PKGDIR)/lib/src/ompi/mca/btl/openib/connect/*.c))) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/coll/base/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/coll/basic/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/coll/hierarch/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/coll/inter/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/coll/self/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/coll/sm/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/coll/sync/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/coll/tuned/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/crcp/base/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/crcp/bkmrk/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/dpm/base/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/dpm/orte/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/io/based/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/io/romio/romio/adio/common/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/io/romio/romio/mpi-io/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/io/romio/romio/mpi-io/glue/openmpi/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/mpool/base/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/mpool/fake/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/mpool/rdma/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/mpool/sm/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/mtl/base/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/op/base/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/osc/base/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/osc/pt2pt/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/osc/rdma/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/pml/base/*.c)) \
>             (patsubst $(PKGDIR)/%.c, %.c, $(filter-out
>         $(PKGDIR)/lib/src/ompi/mca/pml/csum/pml_csum_endpoint.c,
>         $(wildcard $(PKGDIR)/lib/src/ompi/mca/pml/csum/*.c))) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/pml/cm/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/pml/crcpw/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/pml/ob1/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/pml/v/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/pml/v/mca/vprotocol/base/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/pml/v/mca/vprotocol/pessimist/*.c))
>         \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/pubsub/base/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/pubsub/orte/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/rcache/base/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/rcache/vma/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/topo/base/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mca/topo/unity/*.c)) \
>             lib/src/ompi/mpi/c/attr_fn.c \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/mpi/c/profile/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/op/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/proc/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/request/*.c)) \
>             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
>         $(PKGDIR)/lib/src/ompi/runtime/*.c))
>
>         PRIVATE_INCDIR    = $(PKGDIR)/lib/src/ompi/attribute/ \
>                           $(PKGDIR)/lib/src/ompi/class \
>                           $(PKGDIR)/lib/src/ompi/communictor \
>                           $(PKGDIR)/lib/src/ompi/errhandler \
>                           $(PKGDIR)/lib/src/ompi/file \
>                           $(PKGDIR)/lib/src/ompi/group \
>                           $(PKGDIR)/lib/src/ompi/info \
>                           $(PKGDIR)/lib/src/ompi/mca/allocator/base \
>                           $(PKGDIR)/lib/src/ompi/mca/allocator/basic \
>                           $(PKGDIR)/lib/src/ompi/mca/allocator/bucket
>         \
>                           $(PKGDIR)/lib/src/ompi/mca/bml/base \
>                           $(PKGDIR)/lib/src/ompi/mca/bml/r2 \
>                           $(PKGDIR)/lib/src/ompi/mca/btl/base \
>                           $(PKGDIR)/lib/src/ompi/mca/btl/ofud \
>                           $(PKGDIR)/lib/src/ompi/mca/btl/openib \
>
>         $(PKGDIR)/lib/src/ompi/mca/btl/openib/connect \
>                           $(PKGDIR)/lib/src/ompi/mca/btl/self \
>                           $(PKGDIR)/lib/src/ompi/mca/btl/sm \
>                           $(PKGDIR)/lib/src/ompi/mca/btl/tcp \
>                           $(PKGDIR)/lib/src/ompi/mca/coll/base \
>                           $(PKGDIR)/lib/src/ompi/mca/coll/basic \
>                           $(PKGDIR)/lib/src/ompi/mca/coll/hierarch \
>                           $(PKGDIR)/lib/src/ompi/mca/coll/inter \
>                           $(PKGDIR)/lib/src/ompi/mca/coll/self \
>                           $(PKGDIR)/lib/src/ompi/mca/coll/sm \
>                           $(PKGDIR)/lib/src/ompi/mca/coll/sync \
>                           $(PKGDIR)/lib/src/ompi/mca/coll/tuned \
>                           $(PKGDIR)/lib/src/ompi/mca/crcp/base \
>                           $(PKGDIR)/lib/src/ompi/mca/crcp/bkmrk \
>                           $(PKGDIR)/lib/src/ompi/mca/dpm/base \
>                           $(PKGDIR)/lib/src/ompi/mca/dpm/orte \
>                           $(PKGDIR)/lib/src/ompi/mca/io/base \
>
>         $(PKGDIR)/lib/src/ompi/mca/io/romio/romio/adio/common \
>
>         $(PKGDIR)/lib/src/ompi/mca/io/romio/romio/mpi-io \
>
>         $(PKGDIR)/lib/src/ompi/mca/io/romio/romio/mpi-io/glue/openmpi
>         \
>                           $(PKGDIR)/lib/src/ompi/mca/mpool/base \
>                           $(PKGDIR)/lib/src/ompi/mca/mpool/fake \
>                           $(PKGDIR)/lib/src/ompi/mca/mpool/rdma \
>                           $(PKGDIR)/lib/src/ompi/mca/mpool/sm \
>                           $(PKGDIR)/lib/src/ompi/mca/mtl/base \
>                           $(PKGDIR)/lib/src/ompi/mca/op/base \
>                           $(PKGDIR)/lib/src/ompi/mca/osc/base \
>                           $(PKGDIR)/lib/src/ompi/mca/osc/pt2pt \
>                           $(PKGDIR)/lib/src/ompi/mca/osc/rdma \
>                           $(PKGDIR)/lib/src/ompi/mca/pml/base \
>                           $(PKGDIR)/lib/src/ompi/mca/pml/cm \
>                           $(PKGDIR)/lib/src/ompi/mca/pml/crcpw \
>                           $(PKGDIR)/lib/src/ompi/mca/pml/csum \
>                           $(PKGDIR)/lib/src/ompi/mca/pml/ob1 \
>                           $(PKGDIR)/lib/src/ompi/mca/pml/v \
>
>         $(PKGDIR)/lib/src/ompi/mca/pml/v/mca/vprotocol/base \
>
>         $(PKGDIR)/lib/src/ompi/mca/pml/v/mca/vprotocol/pessimist \
>                           $(PKGDIR)/lib/src/ompi/mca/pubsub/base \
>                           $(PKGDIR)/lib/src/ompi/mca/pubsub/orte \
>                           $(PKGDIR)/lib/src/ompi/mca/rcache/base \
>                           $(PKGDIR)/lib/src/ompi/mca/rcache/vma \
>                           $(PKGDIR)/lib/src/ompi/mca/topo/base \
>                           $(PKGDIR)/lib/src/ompi/mca/topo/unity \
>                           $(PKGDIR)/lib/src/ompi/mpi/c \
>                           $(PKGDIR)/lib/src/ompi/mpi/c/profile \
>                           $(PKGDIR)/lib/src/ompi/op \
>                           $(PKGDIR)/lib/src/ompi/proc \
>                           $(PKGDIR)/lib/src/ompi/request \
>                           $(PKGDIR)/lib/src/ompi/runtime
>
>
>         vpath %.c $(PKGDIR)
>
>         include $(L4DIR)/mk/lib.mk
>
>         CFLAGS := $(filter-out -Wextra -Wall -Wstrict-prototypes
>         -Wmissing-prototypes -Wmissing-declarations,$(CFLAGS))
>
>
>
> Then, I got this error message:
>
> "given paths must be relative"
>
>
> I can't figure out what is wrong with my Makefile. If you notice
> something, please let me know. Thank you
>
>
> regards,
>
> Irvanda
>
> _______________________________________________
> l4-hackers mailing list
> l4-hackers@os.inf.tu-dresden.de
> http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers

--

PGP Public Key: http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x08EDE1CD977FD2AB