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 ifeq ($(_CRYPTOPREP_FLM_),) |
|
17 # first instance of this FLM |
|
18 _CRYPTOPREP_FLM_:= 1 |
|
19 |
16 TMPROOT:=$(subst \,/,$(EPOCROOT)) |
20 TMPROOT:=$(subst \,/,$(EPOCROOT)) |
17 EPOCROOT:=$(patsubst %/,%,$(TMPROOT))/ |
21 EPOCROOT:=$(patsubst %/,%,$(TMPROOT))/ |
18 |
22 |
19 CREATABLEPATH:=$(EXTENSION_ROOT)/../drmengine/drmcrypto/build |
23 # NB: abspath doesn't like Windows drive letters |
20 CLEANTARGETS:=$(CREATABLEPATH)/cmlacrypto.cpp $(CREATABLEPATH)/omacrypto.cpp |
24 CRYPTO_SOURCE_DRIVE:=$(firstword $(subst :, ,$(EXTENSION_ROOT))) |
|
25 ifeq ($(CRYPTO_SOURCE_DRIVE),$(EXTENSION_ROOT)) |
|
26 CREATABLEPATH:=$(abspath $(EXTENSION_ROOT)/../drmengine/drmcrypto/build)) |
|
27 else |
|
28 CRYPTO_ABSPATH:=$(abspath $(subst $(CRYPTO_SOURCE_DRIVE):,,$(EXTENSION_ROOT)/../drmengine/drmcrypto/build)) |
|
29 CREATABLEPATH:=$(CRYPTO_SOURCE_DRIVE):$(CRYPTO_ABSPATH) |
|
30 endif |
21 |
31 |
22 crypto_files:=$(wildcard $(EXTENSION_ROOT)/../drmengine/drmcrypto/CMLA/*.cpp) |
32 crypto_files:=$(wildcard $(EXTENSION_ROOT)/../drmengine/drmcrypto/CMLA/*.cpp) |
23 |
|
24 |
33 |
25 GUARD:=done_$(call sanitise,$(CLEANTARGETS)) |
34 GUARD:=done_$(call sanitise,$(CLEANTARGETS)) |
26 ifeq ($($(GUARD)),) |
35 ifeq ($($(GUARD)),) |
27 $(GUARD):=1 |
36 $(GUARD):=1 |
28 |
37 |
29 BITMAP :: $(CREATABLEPATH) |
38 ifeq ($(crypto_files),) |
|
39 CMLA_CRYPTO_SOURCE:=$(CREATABLEPATH)/../stub/CmlaCryptoStub.cpp |
|
40 else |
|
41 CMLA_CRYPTO_SOURCE:=$(CREATABLEPATH)/../CMLA/CmlaCrypto.cpp |
|
42 endif |
30 |
43 |
31 ifeq ($(crypto_files),) |
44 $(CREATABLEPATH)/cmlacrypto.cpp: $(CMLA_CRYPTO_SOURCE) |
32 $(GNUCP) $(CREATABLEPATH)/../stub/CmlaCryptoStub.cpp $(CREATABLEPATH)/cmlacrypto.cpp |
45 $(GNUCP) $< $@ |
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 |
46 |
40 # Create dirs |
47 # Create dirs |
41 $(call makepath,$(CREATABLEPATH)) |
48 $(call makepath,$(CREATABLEPATH)) |
42 |
49 |
43 ## Clean up |
50 ## Clean up |
44 $(eval $(call GenerateStandardCleanTarget,$(CLEANTARGETS))) |
51 $(eval $(call GenerateStandardCleanTarget,$(CLEANTARGETS))) |
45 |
52 |
46 ## What |
53 $(info <debug>$(PLATFORM) $(CFG), selecting $(CMLA_CRYPTO_SOURCE)</debug>) |
47 $(eval $(call whatmacro,$(CLEANTARGETS))) |
|
48 |
|
49 |
54 |
50 else |
55 else |
51 $(info <debug>$(PLATFORM) $(CFG), up-to-date $(CLEANTARGETS)</debug>) |
56 $(info <debug>$(PLATFORM) $(CFG), already handled $(CMLA_CRYPTO_SOURCE)</debug>) |
|
57 # FLM already included - don't duplicate the targets |
52 |
58 |
53 endif |
59 endif |