forked from SynoCommunity/spksrc
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathspksrc.toolkit-fix.mk
49 lines (40 loc) · 1.25 KB
/
spksrc.toolkit-fix.mk
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
### Toolkit fix rules
# Invoke fixes toolkit's libtool files
# Targets are executed in the following order:
# toolkit_fix_msg_target
# pre_toolkit_fix_target (override with PRE_FIX_TARGET)
# toolkit_fix_target (override with FIX_TARGET)
# post_toolkit_fix_target (override with POST_FIX_TARGET)
FIX_COOKIE = $(WORK_DIR)/.$(COOKIE_PREFIX)fix_done
ifeq ($(strip $(PRE_FIX_TARGET)),)
PRE_FIX_TARGET = pre_toolkit_fix_target
else
$(PRE_FIX_TARGET): toolkit_fix_msg
endif
ifeq ($(strip $(FIX_TARGET)),)
FIX_TARGET = toolkit_fix_target
else
$(FIX_TARGET): $(PRE_FIX_TARGET)
endif
ifeq ($(strip $(POST_FIX_TARGET)),)
POST_FIX_TARGET = post_toolkit_fix_target
else
$(POST_FIX_TARGET): $(FIX_TARGET)
endif
.PHONY: toolkit_fix toolkit_fix_msg
.PHONY: $(PRE_FIX_TARGET) $(FIX_TARGET) $(POST_FIX_TARGET)
toolkit_fix_msg:
@$(MSG) "Fixing libtool files for $(NAME)"
pre_toolkit_fix_target: toolkit_fix_msg
toolkit_fix_target: $(PRE_FIX_TARGET)
chmod -R u+w $(WORK_DIR)
@find $(WORK_DIR) -type f -name '*.la' -exec sed -i -e "s|^libdir=.*$$|libdir='$(WORK_DIR)/lib'|" {} \;
post_toolkit_fix_target: $(FIX_TARGET)
ifeq ($(wildcard $(FIX_COOKIE)),)
toolkit_fix: $(FIX_COOKIE)
$(FIX_COOKIE): $(POST_FIX_TARGET)
$(create_target_dir)
@touch -f $@
else
toolkit_fix: ;
endif