Signed-off-by: Mans Rullgard <mans@mansr.com>tags/n0.9
| @@ -122,9 +122,11 @@ alltools: $(TOOLS) | |||||
| tools/%$(EXESUF): tools/%.o | tools/%$(EXESUF): tools/%.o | ||||
| $(LD) $(FF_LDFLAGS) -o $@ $< $(FF_EXTRALIBS) | $(LD) $(FF_LDFLAGS) -o $@ $< $(FF_EXTRALIBS) | ||||
| tools/%.o: tools/%.c | |||||
| tools/%.o: tools/%.c | tools | |||||
| $(CC) $(CPPFLAGS) $(CFLAGS) -c $(CC_O) $< | $(CC) $(CPPFLAGS) $(CFLAGS) -c $(CC_O) $< | ||||
| OBJDIRS += tools | |||||
| -include $(wildcard tools/*.d) | -include $(wildcard tools/*.d) | ||||
| VERSION_SH = $(SRC_PATH)/version.sh | VERSION_SH = $(SRC_PATH)/version.sh | ||||
| @@ -185,6 +187,9 @@ check: test checkheaders | |||||
| include $(SRC_PATH)/doc/Makefile | include $(SRC_PATH)/doc/Makefile | ||||
| include $(SRC_PATH)/tests/Makefile | include $(SRC_PATH)/tests/Makefile | ||||
| $(sort $(OBJDIRS)): | |||||
| $(Q)mkdir -p $@ | |||||
| # Dummy rule to stop make trying to rebuild removed or renamed headers | # Dummy rule to stop make trying to rebuild removed or renamed headers | ||||
| %.h: | %.h: | ||||
| @: | @: | ||||
| @@ -34,6 +34,12 @@ $(HOSTOBJS): %.o: %.c | |||||
| $(HOSTPROGS): %$(HOSTEXESUF): %.o | $(HOSTPROGS): %$(HOSTEXESUF): %.o | ||||
| $(HOSTCC) $(HOSTLDFLAGS) -o $@ $< $(HOSTLIBS) | $(HOSTCC) $(HOSTLDFLAGS) -o $@ $< $(HOSTLIBS) | ||||
| $(OBJS): | $(dir $(OBJS)) | |||||
| $(HOSTOBJS): | $(dir $(HOSTOBJS)) | |||||
| $(TESTOBJS): | $(dir $(TESTOBJS)) | |||||
| OBJDIRS := $(OBJDIRS) $(dir $(OBJS) $(HOSTOBJS) $(TESTOBJS)) | |||||
| CLEANSUFFIXES = *.d *.o *~ *.ho *.map *.ver | CLEANSUFFIXES = *.d *.o *~ *.ho *.map *.ver | ||||
| DISTCLEANSUFFIXES = *.pc | DISTCLEANSUFFIXES = *.pc | ||||
| LIBSUFFIXES = *.a *.lib *.so *.so.* *.dylib *.dll *.def *.dll.a *.exp | LIBSUFFIXES = *.a *.lib *.so *.so.* *.dylib *.dll *.def *.dll.a *.exp | ||||
| @@ -875,9 +875,9 @@ apply(){ | |||||
| } | } | ||||
| cp_if_changed(){ | cp_if_changed(){ | ||||
| cmp -s "$1" "$2" && | |||||
| echo "$2 is unchanged" || | |||||
| cp -f "$1" "$2" | |||||
| cmp -s "$1" "$2" && echo "$2 is unchanged" && return | |||||
| mkdir -p "$(dirname $2)" | |||||
| cp -f "$1" "$2" | |||||
| } | } | ||||
| # CONFIG_LIST contains configurable options, while HAVE_LIST is for | # CONFIG_LIST contains configurable options, while HAVE_LIST is for | ||||
| @@ -1675,10 +1675,8 @@ DEPFLAGS='$(CPPFLAGS) $(CFLAGS) -MM' | |||||
| # find source path | # find source path | ||||
| if test -f configure; then | if test -f configure; then | ||||
| source_path=. | source_path=. | ||||
| disable source_path_used | |||||
| else | else | ||||
| source_path=$(cd $(dirname "$0"); pwd) | source_path=$(cd $(dirname "$0"); pwd) | ||||
| enable source_path_used | |||||
| echo "$source_path" | grep -q '[[:blank:]]' && | echo "$source_path" | grep -q '[[:blank:]]' && | ||||
| die "Out of tree builds are impossible with whitespace in source path." | die "Out of tree builds are impossible with whitespace in source path." | ||||
| test -e "$source_path/config.h" && | test -e "$source_path/config.h" && | ||||
| @@ -3180,27 +3178,7 @@ echo "License: $license" | |||||
| echo "Creating config.mak and config.h..." | echo "Creating config.mak and config.h..." | ||||
| # build tree in object directory if source path is different from current one | |||||
| if enabled source_path_used; then | |||||
| DIRS=" | |||||
| doc | |||||
| libavcodec | |||||
| libavcodec/$arch | |||||
| libavdevice | |||||
| libavfilter | |||||
| libavfilter/$arch | |||||
| libavformat | |||||
| libavutil | |||||
| libavutil/$arch | |||||
| libpostproc | |||||
| libswscale | |||||
| libswscale/$arch | |||||
| tests | |||||
| tools | |||||
| " | |||||
| map 'mkdir -p $v' $DIRS; | |||||
| $ln_s "$source_path/Makefile" . | |||||
| fi | |||||
| test -e Makefile || $ln_s "$source_path/Makefile" . | |||||
| config_files="$TMPH config.mak" | config_files="$TMPH config.mak" | ||||
| @@ -3379,6 +3357,7 @@ version=$3 | |||||
| libs=$4 | libs=$4 | ||||
| requires=$5 | requires=$5 | ||||
| enabled ${name#lib} || return 0 | enabled ${name#lib} || return 0 | ||||
| mkdir -p $name | |||||
| cat <<EOF > $name/$name.pc | cat <<EOF > $name/$name.pc | ||||
| prefix=$prefix | prefix=$prefix | ||||
| exec_prefix=\${prefix} | exec_prefix=\${prefix} | ||||
| @@ -24,6 +24,9 @@ doc/%.1: TAG = MAN | |||||
| doc/%.1: doc/%.pod | doc/%.1: doc/%.pod | ||||
| $(M)pod2man --section=1 --center=" " --release=" " $< > $@ | $(M)pod2man --section=1 --center=" " --release=" " $< > $@ | ||||
| $(DOCS): | doc | |||||
| OBJDIRS += doc | |||||
| install-progs-$(CONFIG_DOC): install-man | install-progs-$(CONFIG_DOC): install-man | ||||
| install-man: $(MANPAGES) | install-man: $(MANPAGES) | ||||