]> rtime.felk.cvut.cz Git - frescor/demo.git/blob - build/config.target
Current submodules + fixes to fs script
[frescor/demo.git] / build / config.target
1 # -*- makefile -*-
2 # Config file for compilation by OMK for AQuoSA/Linux OS target
3
4 OMIT_KERNEL_PASSES=y
5
6 # For the FFMPEG2OMK hack, we need RELATIVE_DIR earlier:
7 ifndef RELATIVE_DIR
8 RELATIVE_DIR := $(SOURCES_DIR:$(OUTPUT_DIR)%=%)
9 endif
10
11 ifeq ($(RELATIVE_DIR:ffmpeg%=ffmpeg),ffmpeg)
12
13 # Allow building ffmpeg by OMK
14 define FFMPEG_OMKIZE
15 lib_LIBRARIES:=$(NAME)
16 $(NAME)_SOURCES:=$(OBJS:%.o=%.c) $(OBJS-y:%.o=%.c) $(OBJS-yes:%.o=%.c)
17 renamed_include_HEADERS:=$(foreach h,$(HEADERS),$(h)->lib$(NAME)/$(h) )
18 INCLUDES += -I $(srcdir)/..
19 endef
20
21 CFLAGS+=$(if $(CONFIG_FFMPEG_WITH_FRSH:n=),-DCONFIG_FFMPEG_WITH_FRSH=y)
22
23
24 $(SOURCES_DIR)/Makefile.omk: $(SOURCES_DIR)/Makefile $(MAKERULES_DIR)/ffmpeg/libswscale $(MAKERULES_DIR)/Makefile.omk.ffmpeg
25         @echo "  FFOMK   $@"
26         $(Q)make DEPS="" -C $(SOURCES_DIR) -qp -f $< |sed -ne '/# Pattern-specific Variable Values/,$$ d' -e '/# makefile/,+1 p'|\
27                         sed -e /^define/d -e "/^#/d" -e "/^MAKE/d" > $@
28 #       echo '$(value FFMPEG_OMKIZE)' >> $@ # There is a bug in make
29         $(Q)echo "FFMPEG_SUBDIR=$(RELATIVE_DIR:ffmpeg/%=%)" >> $@
30         $(Q)cat $(MAKERULES_DIR)/Makefile.omk.ffmpeg >> $@
31         $(Q)echo 'CFLAGS := $(CFLAGS) $$(CFLAGS)' >> $@
32
33
34 $(MAKERULES_DIR)/ffmpeg/tools/Makefile:
35         touch $@
36
37 $(MAKERULES_DIR)/ffmpeg/libavcodec/x86/Makefile:
38         touch $@
39
40 $(MAKERULES_DIR)/ffmpeg/libswscale:
41         ln -sf ../../src/libswscale $@
42 endif
43
44
45 # You can override these variables in config.omk
46 AQUOSA_ROOT ?= $(wildcard /usr/local/aquosa)
47 QTDIR ?= $(wildcard /usr/share/qt4)
48
49 export PLATFORM=AQuoSA
50
51 # Create symbolic links to headers instead of copying them. Useful
52 # during development.
53 LN_HEADERS=y
54
55 # We do not want to overwrite original FRESCOR Makefiles
56 USE_LEAF_MAKEFILES=n
57
58 # For demo, we use FORB's inet protocol, to show how FRESCOR works in a
59 # distributed environment
60 CONFIG_FORB_PROTO_UNIX=n
61 CONFIG_FORB_PROTO_INET_DEFAULT=y
62 CONFIG_AQUOSA=y
63
64 ########################################
65 # Setting of compiler
66 ########################################
67
68 # This doesn't work since mgcc script eats multiple -M options
69 #CC=mgcc
70 #CFLAGS=-Wall -g  -O1  -Wuninitialized -D$(PLATFORM)
71
72 # Instead, we call normal gcc with parameters which mgcc adds
73
74 CFLAGS=$(ARCH_GCC_OPTS) -Wall -Wuninitialized -g -O1 $(CFLAGS-y) -D_REENTRANT -D$(PLATFORM) -D_XOPEN_SOURCE=600 -D_BSD_SOURCE
75
76 LDFLAGS=$(ARCH_LD_OPTS) $(LIBS_PATH) $(LIBS)
77 LDFLAGS += '-Wl,-rpath,$$ORIGIN/../lib' -z origin --enable-new-dtags
78
79 IDL_COMPILER = $(OUTPUT_DIR)/$(COMPILED_DIR_NAME)/bin/forb-idl
80
81 FRSH_DISTRIBUTED_MODULE_SUPPORTED=true
82
83 # Disable tests which do not compile with FRSH_FORB
84
85 CONFIG_FRSH_TEST_context_switch=n                             # Needs timespec_operations.h and frsh_os_compatibility.h
86 CONFIG_FRSH_TEST_demo_september2007=n                         # Needs frsh_thread_get_vres_id()
87 CONFIG_FRSH_TEST_demo_september2007_with_signals=n            # Some problem with signal constants and non-int vres_id
88 CONFIG_FRSH_TEST_dl_test=n                                    # Needs different Makefile.omk
89 CONFIG_FRSH_TEST_example_d-ac1_frescor=n                      # Needs int vres_id
90 CONFIG_FRSH_TEST_frsh_shared_obj_test=n                       # Needs eat.h and timespec_operations.h
91 CONFIG_FRSH_TEST_functions=n                                  # Needs timespec_operations.h and frsh_os_compatibility.h
92 CONFIG_FRSH_TEST_jitter_test=n                                # Needs timespec_operations.h and frsh_os_compatibility.h
93 CONFIG_FRSH_TEST_sharedobj_prototype=n                        # Needs frsh_sharedobj_XXX
94 CONFIG_FRSH_TEST_test_bind=n                                  # Needs eat.h and timespec_operations.h
95 CONFIG_FRSH_TEST_test_contract_labels=n                       # Needs eat.h and timespec_operations.h
96 CONFIG_FRSH_TEST_test_eat=n                                   # Needs eat.h
97 CONFIG_FRSH_TEST_test_frsh_performance=n                      # Needs more frsh api - todo
98 CONFIG_FRSH_TEST_test_frsh_renegotiate_async=n                # Needs eat.h and timespec_operations.h
99 CONFIG_FRSH_TEST_test_frsh_synch_obj=n                        # Needs frsh_thread_id_t to be simple type - Aquosa declares it as structure
100 CONFIG_FRSH_TEST_test_memory=n                                # Needs different Makefile.omk and then we will see :)
101 CONFIG_FRSH_TEST_demo_sept07_negotiate_and_send=n             # Needs RTEP
102 CONFIG_FRSH_TEST_demo_sept07_negotiations_limit=n             # Needs RTEP
103 CONFIG_FRSH_TEST_demo_sept07_renegotiate_and_send=n           # Needs RTEP
104 CONFIG_FRSH_TEST_test_endpoints=n                             # Needs RTEP
105 CONFIG_FRSH_TEST_test_frsh_distributed_contract_negotiate=n   # Nedds vres_id to be int
106 CONFIG_FRSH_TEST_test_frsh_distributed_contract_renegotiate=n # Needs RTEP
107 CONFIG_FRSH_TEST_test_frsh_distributed_init=n                 # Needs THE_FRSH_CPU_ID
108 CONFIG_FRSH_TEST_test_frsh_marshal=n                          # Accesses frsh_contract_t fields directly
109 CONFIG_FRSH_TEST_test_frsh_send_receive_basic=n               # Needs RTEP
110 CONFIG_FRSH_TEST_test_get_network_info=n                      # Needs RTEP
111 CONFIG_FRSH_TEST_test_self_bind=n                             # Needs eat.h and timespec_operations.h
112 CONFIG_FRSH_TEST_test_sizes=n                                 # Needs frsh_internal.h - TODO
113 CONFIG_FRSH_TEST_test_spare_capacity=n                        # Needs more frsh api - TODO
114 CONFIG_FRSH_TEST_test_timespec_operations=n                   # Needs timespec_operations.h
115 CONFIG_FRSH_TEST_test_vres_id_bits=n                          # Depends on bit-fields in integer vres_id
116 CONFIG_FSA_TESTS=n                                            # Depends on bit-fields in integer vres_id