[Compilation Error] Given paths must be relative

Irvanda Kurniadi irvanda.k at gmail.com
Thu Jan 23 08:34:12 CET 2014


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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://os.inf.tu-dresden.de/pipermail/l4-hackers/attachments/20140123/f1789e62/attachment.html>


More information about the l4-hackers mailing list