Improve Makefile to avoid "Argument list too long" error
I wouldn't expect a foreach loop to be prone to this issue but it's not the right way to write a Makefile anyway. Note that conversion failures are now fatal and the dvb-t/ke-Nairobi file is failing to convert at the moment. Signed-off-by: James Le Cuirot <chewi@gentoo.org> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
This commit is contained in:
committed by
Mauro Carvalho Chehab
parent
1c187978d4
commit
3ccfafaa52
16
Makefile
16
Makefile
@@ -17,6 +17,8 @@ DVBV3DIRS = atsc dvb-c dvb-s dvb-t
|
|||||||
DVBV5DIRS = $(DVBV3DIRS) isdb-t
|
DVBV5DIRS = $(DVBV3DIRS) isdb-t
|
||||||
|
|
||||||
DVBV3CHANNELFILES = $(foreach dir,$(DVBV3DIRS),$(wildcard $(dir)/*))
|
DVBV3CHANNELFILES = $(foreach dir,$(DVBV3DIRS),$(wildcard $(dir)/*))
|
||||||
|
DVBV3OUTPUTFILES = $(patsubst %,$(DVBV3OUTPUTDIR)/%,$(DVBV3CHANNELFILES))
|
||||||
|
DVBV5OUTPUTFILES = $(patsubst %,$(DVBV5OUTPUTDIR)/%,$(DVBV3CHANNELFILES))
|
||||||
|
|
||||||
DVBFORMATCONVERT_CHANNEL_DVBV5 = -ICHANNEL -ODVBV5
|
DVBFORMATCONVERT_CHANNEL_DVBV5 = -ICHANNEL -ODVBV5
|
||||||
DVBFORMATCONVERT_CHANNEL_DVBV3 = -IDVBV5 -OCHANNEL
|
DVBFORMATCONVERT_CHANNEL_DVBV3 = -IDVBV5 -OCHANNEL
|
||||||
@@ -42,14 +44,16 @@ ifeq ($(DVBV3DIR),)
|
|||||||
DVBV3DIR = dvbv3
|
DVBV3DIR = dvbv3
|
||||||
endif
|
endif
|
||||||
|
|
||||||
dvbv3:
|
$(DVBV3OUTPUTFILES): $(DVBV3OUTPUTDIR)/%: %
|
||||||
@$(foreach var,$(DVBV3DIRS), $(MKDIR) $(DVBV3OUTPUTDIR)/$(var);)
|
@$(MKDIR) "$(dir $@)"
|
||||||
@$(foreach var,$(DVBV3CHANNELFILES), $(DVBFORMATCONVERT) $(DVBFORMATCONVERT_CHANNEL_DVBV3) $(var) $(DVBV3OUTPUTDIR)/$(var);)
|
@$(DVBFORMATCONVERT) $(DVBFORMATCONVERT_CHANNEL_DVBV3) "$<" "$@"
|
||||||
|
|
||||||
|
$(DVBV5OUTPUTFILES): $(DVBV5OUTPUTDIR)/%: $(DVBV3OUTPUTDIR)/%
|
||||||
|
@$(MKDIR) "$(dir $@)"
|
||||||
|
@$(DVBFORMATCONVERT) $(DVBFORMATCONVERT_CHANNEL_DVBV5) "$<" "$@"
|
||||||
|
|
||||||
dvbv5: $(DVBV3OUTPUTDIR)
|
dvbv3: $(DVBV3OUTPUTFILES)
|
||||||
@$(foreach var,$(DVBV3DIRS), $(MKDIR) $(DVBV5OUTPUTDIR)/$(var);)
|
dvbv5: $(DVBV5OUTPUTFILES)
|
||||||
@$(foreach var,$(DVBV3CHANNELFILES), $(DVBFORMATCONVERT) $(DVBFORMATCONVERT_CHANNEL_DVBV5) $(DVBV3OUTPUTDIR)/$(var) $(DVBV5OUTPUTDIR)/$(var);)
|
|
||||||
|
|
||||||
install:
|
install:
|
||||||
@mkdir -p $(DATADIR)/$(DVBV5DIR)
|
@mkdir -p $(DATADIR)/$(DVBV5DIR)
|
||||||
|
|||||||
Reference in New Issue
Block a user