11 # Contributors: |
11 # Contributors: |
12 # |
12 # |
13 # Description: DRM Crypto Library build configuration |
13 # Description: DRM Crypto Library build configuration |
14 # |
14 # |
15 |
15 |
16 TMPROOT:=$(subst \,/,$(EPOCROOT)) |
16 ifeq ($(_CRYPTOPREP_FLM_),) |
17 EPOCROOT:=$(patsubst %/,%,$(TMPROOT))/ |
17 # first instance of this FLM |
|
18 _CRYPTOPREP_FLM_:= 1 |
18 |
19 |
19 CREATABLEPATH:=$(EXTENSION_ROOT)/../drmengine/drmcrypto/build |
20 # darios: changing the value of EPOCROOT while make is running |
20 CLEANTARGETS:=$(CREATABLEPATH)/cmlacrypto.cpp $(CREATABLEPATH)/omacrypto.cpp |
21 # messes up the target dependecies |
|
22 # also these two lines are not needed for this flm |
|
23 #TMPROOT:=$(subst \,/,$(EPOCROOT)) |
|
24 #EPOCROOT:=$(patsubst %/,%,$(TMPROOT))/ |
|
25 |
|
26 # NB: abspath doesn't like Windows drive letters |
|
27 CRYPTO_SOURCE_DRIVE:=$(firstword $(subst :, ,$(EXTENSION_ROOT))) |
|
28 ifeq ($(CRYPTO_SOURCE_DRIVE),$(EXTENSION_ROOT)) |
|
29 CREATABLEPATH:=$(abspath $(EXTENSION_ROOT)/../drmengine/drmcrypto/build)) |
|
30 else |
|
31 CRYPTO_ABSPATH:=$(abspath $(subst $(CRYPTO_SOURCE_DRIVE):,,$(EXTENSION_ROOT)/../drmengine/drmcrypto/build)) |
|
32 CREATABLEPATH:=$(CRYPTO_SOURCE_DRIVE):$(CRYPTO_ABSPATH) |
|
33 endif |
21 |
34 |
22 crypto_files:=$(wildcard $(EXTENSION_ROOT)/../drmengine/drmcrypto/CMLA/*.cpp) |
35 crypto_files:=$(wildcard $(EXTENSION_ROOT)/../drmengine/drmcrypto/CMLA/*.cpp) |
23 |
36 |
|
37 ifeq ($(crypto_files),) |
|
38 CMLA_CRYPTO_SOURCE:=$(CREATABLEPATH)/../stub/CmlaCryptoStub.cpp |
|
39 else |
|
40 CMLA_CRYPTO_SOURCE:=$(CREATABLEPATH)/../CMLA/CmlaCrypto.cpp |
|
41 endif |
24 |
42 |
25 GUARD:=done_$(call sanitise,$(CLEANTARGETS)) |
43 $(CREATABLEPATH)/cmlacrypto.cpp: $(CMLA_CRYPTO_SOURCE) |
26 ifeq ($($(GUARD)),) |
44 $(GNUCP) $< $@ |
27 $(GUARD):=1 |
|
28 |
|
29 BITMAP :: $(CREATABLEPATH) |
|
30 |
|
31 ifeq ($(crypto_files),) |
|
32 $(GNUCP) $(CREATABLEPATH)/../stub/CmlaCryptoStub.cpp $(CREATABLEPATH)/cmlacrypto.cpp |
|
33 else |
|
34 $(GNUCP) $(CREATABLEPATH)/../CMLA/CmlaCrypto.cpp $(CREATABLEPATH)/cmlacrypto.cpp |
|
35 endif |
|
36 $(GNUCP) $(CREATABLEPATH)/../src/OmaCrypto.cpp $(CREATABLEPATH)/omacrypto.cpp |
|
37 $(GNUCHMOD) u+w $(CREATABLEPATH)/cmlacrypto.cpp |
|
38 $(GNUCHMOD) u+w $(CREATABLEPATH)/omacrypto.cpp |
|
39 |
45 |
40 # Create dirs |
46 # Create dirs |
41 $(call makepath,$(CREATABLEPATH)) |
47 $(call makepath,$(CREATABLEPATH)) |
42 |
48 |
43 ## Clean up |
49 ## Clean up |
44 $(eval $(call GenerateStandardCleanTarget,$(CLEANTARGETS))) |
50 $(eval $(call GenerateStandardCleanTarget,$(CLEANTARGETS))) |
45 |
51 |
46 ## What |
52 $(info <debug>$(PLATFORM) $(CFG), selecting $(CMLA_CRYPTO_SOURCE)</debug>) |
47 $(eval $(call whatmacro,$(CLEANTARGETS))) |
|
48 |
|
49 |
53 |
50 else |
54 else |
51 $(info <debug>$(PLATFORM) $(CFG), up-to-date $(CLEANTARGETS)</debug>) |
55 $(info <debug>$(PLATFORM) $(CFG), already handled $(CMLA_CRYPTO_SOURCE)</debug>) |
|
56 # FLM already included - don't duplicate the targets |
52 |
57 |
53 endif |
58 endif |