modulefs_DATA = ldiskfs$(KMODEXT) ldiskfs_linux_headers := $(addprefix linux/,$(subst @BACKFS@,ldiskfs,$(notdir $(linux_headers)))) $(filter %.c,$(ldiskfs_patched_sources)): sources $(ldiskfs_linux_headers) $(filter %.h,$(ldiskfs_patched_sources)) ldiskfs_sed_flags = \ -e "s/dx_hash_info/@BACKFS@_dx_hash_info/g" \ -e "s/dir_private_info/@BACKFS@_dir_private_info/g" \ -e "s/DX_HASH/@BACKFSU@_DX_HASH/g" \ -e "s/\ $@ %.h: linux-stage/fs/@BACKFS@/%.h sed $(strip $(ldiskfs_sed_flags)) $< > $@ linux/ldiskfs%.h: linux-stage/include/linux/@BACKFS@%.h sed $(strip $(ldiskfs_sed_flags)) $< > $@ series := @top_srcdir@/kernel_patches/series/ldiskfs-$(LDISKFS_SERIES) patches := @top_srcdir@/kernel_patches/patches sources: $(backfs_sources) $(backfs_headers) $(linux_headers) $(series) rm -rf linux-stage linux sources $(ldiskfs_SOURCES) mkdir -p linux-stage/fs/@BACKFS@ linux-stage/include/linux cp $(backfs_sources) $(backfs_headers) $(backfs_extra) linux-stage/fs/@BACKFS@ if test -n "$(linux_headers)" ; then \ cp $(linux_headers) linux-stage/include/linux; \ fi if USE_QUILT ln -s ../$(patches) linux-stage/patches ln -s ../$(series) linux-stage/series cd linux-stage && quilt push -a -q else @echo -n "Applying @BACKFS@ patches:" @cd linux-stage && for i in $$(<../$(series)) ; do \ echo -n " $$i" ; \ patch -s -p1 < ../$(patches)/$$i || exit 1 ; \ done @echo endif mkdir linux @echo -n "Replacing '@BACKFS@' with 'ldiskfs':" for i in $(notdir $(backfs_headers) $(backfs_sources)) $(new_sources) ; do \ echo -n " $$i" ; \ sed $(strip $(ldiskfs_sed_flags)) \ linux-stage/fs/@BACKFS@/$$i > $$i ; \ done for i in $(subst @BACKFS@,,$(notdir $(backfs_headers))) ; do \ if test -f "@BACKFS@$$i" ; then \ echo -n " @BACKFS@$$i" ; \ mv @BACKFS@$$i ldiskfs$$i ; \ fi ; \ done for i in $(subst @BACKFS@,,$(notdir $(linux_headers) $(new_headers))) ; do \ echo -n " @BACKFS@$$i" ; \ sed $(strip $(ldiskfs_sed_flags)) \ linux-stage/include/linux/@BACKFS@$$i \ > linux/ldiskfs$$i ; \ done sed $(strip $(ldiskfs_sed_flags)) \ linux-stage/include/linux/dynlocks.h \ > linux/dynlocks.h @echo touch sources foo-check: @echo "ldiskfs_sources: $(ldiskfs_sources)" @echo "ldiskfs_SOURCES: $(ldiskfs_SOURCES)" @echo "ldiskfs_headers: $(ldiskfs_headers)" @echo "ldiskfs_objects: $(ldiskfs_objects)" @echo "ldiskfs_OBJECTS: $(ldiskfs_OBJECTS)" @echo "ldiskfs_LDADD: $(ldiskfs_LDADD)" MOSTLYCLEANFILES := @MOSTLYCLEANFILES@ CLEANFILES = sources $(notdir $(linux_headers) $(backfs_headers) $(backfs_sources) $(new_sources) $(new_headers)) clean: clean-am rm -rf linux linux-stage ldiskfs*.h