Erwin Rol wrote:
> Is that patch acceptable ?

not yet, see comments inline:

> [email protected] wrote:
>> From: Erwin Rol <[email protected]>
>>
>> - Adds a target version of squashf-tools
>>
>> Signed-off-by: Erwin Rol <[email protected]>
>> ---
>>  patches/squashfs3.4/series             |    1 +
>>  patches/squashfs3.4/squashfs_libs.diff |   34 ++++++++++++++
>>  patches/squashfs4.0/series             |    1 +
>>  patches/squashfs4.0/squashfs_libs.diff |   34 ++++++++++++++
>>  rules/host-squashfs-tools.make         |   15 +------
>>  rules/squashfs-tools.in                |   24 ++++++++++
>>  rules/squashfs-tools.make              |   78
>> ++++++++++++++++++++++++++++++++
>>  7 files changed, 173 insertions(+), 14 deletions(-)
>>  create mode 100644 patches/squashfs3.4/series
>>  create mode 100644 patches/squashfs3.4/squashfs_libs.diff
>>  create mode 100644 patches/squashfs4.0/series
>>  create mode 100644 patches/squashfs4.0/squashfs_libs.diff
>>  create mode 100644 rules/squashfs-tools.in
>>  create mode 100644 rules/squashfs-tools.make
>>
>> diff --git a/patches/squashfs3.4/series b/patches/squashfs3.4/series
>> new file mode 100644
>> index 0000000..de458cd
>> --- /dev/null
>> +++ b/patches/squashfs3.4/series
>> @@ -0,0 +1 @@
>> +squashfs_libs.diff
>> diff --git a/patches/squashfs3.4/squashfs_libs.diff
>> b/patches/squashfs3.4/squashfs_libs.diff
>> new file mode 100644
>> index 0000000..382e42d
>> --- /dev/null
>> +++ b/patches/squashfs3.4/squashfs_libs.diff
>> @@ -0,0 +1,34 @@
>> +Subject: Add way to change linker settings
>> +From: Erwin Rol <[email protected]>
>> +
>> +When cross compiling the linker can not find libz, this patch
>> +adds a LIBS variable that makes it possible to pass the right
>> +linker flags.
>> +
>> +Signed-off-by: Erwin Rol <[email protected]>
>> +
>> +--- squashfs3.4/squashfs-tools/Makefile.orig    2010-02-27
>> 00:01:56.000000000 +0100
>> ++++ squashfs3.4/squashfs-tools/Makefile    2010-02-27
>> 00:02:46.000000000 +0100
>> +@@ -4,10 +4,12 @@
>> + + CFLAGS := -I$(INCLUDEDIR) -D_FILE_OFFSET_BITS=64
>> -D_LARGEFILE_SOURCE -D_GNU_SOURCE -O2
>> + ++LIBS := -lz -lpthread -lm ++
>> + all: mksquashfs unsquashfs
>> + + mksquashfs: mksquashfs.o read_fs.o sort.o
>> +-    $(CC) mksquashfs.o read_fs.o sort.o -lz -lpthread -lm -o $@
>> ++    $(CC) mksquashfs.o read_fs.o sort.o $(LIBS) -o $@
                                                    ^^
add a variable LDFLAGS here

>> + + mksquashfs.o: mksquashfs.c squashfs_fs.h mksquashfs.h global.h sort.h
>> + +@@ -16,7 +18,7 @@
>> + sort.o: sort.c squashfs_fs.h global.h sort.h
>> + + unsquashfs: unsquashfs.o
>> +-    $(CC) unsquashfs.o -lz -lpthread -lm -o $@
>> ++    $(CC) unsquashfs.o $(LIBS) -o $@
                                  ^^
add a variable LDFLAGS here

>> + + unsquashfs.o: unsquashfs.c squashfs_fs.h read_fs.h global.h
>> + diff --git a/patches/squashfs4.0/series b/patches/squashfs4.0/series
>> new file mode 100644
>> index 0000000..de458cd
>> --- /dev/null
>> +++ b/patches/squashfs4.0/series
>> @@ -0,0 +1 @@
>> +squashfs_libs.diff
>> diff --git a/patches/squashfs4.0/squashfs_libs.diff
>> b/patches/squashfs4.0/squashfs_libs.diff
>> new file mode 100644
>> index 0000000..10303d7
>> --- /dev/null
>> +++ b/patches/squashfs4.0/squashfs_libs.diff
>> @@ -0,0 +1,34 @@
>> +Subject: Add way to change linker settings
>> +From: Erwin Rol <[email protected]>
>> +
>> +When cross compiling the linker can not find libz, this patch
>> +adds a LIBS variable that makes it possible to pass the right
>> +linker flags.
>> +
>> +Signed-off-by: Erwin Rol <[email protected]>
>> +
>> +--- squashfs4.0/squashfs-tools/Makefile.orig    2010-02-26
>> 13:25:30.000000000 +0100
>> ++++ squashfs4.0/squashfs-tools/Makefile    2010-02-26
>> 13:26:31.000000000 +0100
>> +@@ -4,10 +4,12 @@
>> + + CFLAGS := -I$(INCLUDEDIR) -D_FILE_OFFSET_BITS=64
>> -D_LARGEFILE_SOURCE -D_GNU_SOURCE -O2
>> + ++LIBS := -lz -lpthread -lm ++
>> + all: mksquashfs unsquashfs
>> + + mksquashfs: mksquashfs.o read_fs.o sort.o swap.o pseudo.o
>> +-    $(CC) mksquashfs.o read_fs.o sort.o swap.o pseudo.o -lz
>> -lpthread -lm -o $@
>> ++    $(CC) mksquashfs.o read_fs.o sort.o swap.o pseudo.o $(LIBS) -o $@

dito

>> + + mksquashfs.o: mksquashfs.c squashfs_fs.h mksquashfs.h global.h
>> sort.h squashfs_swap.h Makefile
>> + +@@ -20,7 +22,7 @@
>> + pseudo.o: pseudo.c pseudo.h Makefile
>> + + unsquashfs: unsquashfs.o unsquash-1.o unsquash-2.o unsquash-3.o
>> unsquash-4.o swap.o
>> +-    $(CC) unsquashfs.o unsquash-1.o unsquash-2.o unsquash-3.o
>> unsquash-4.o swap.o -lz -lpthread -lm -o $@
>> ++    $(CC) unsquashfs.o unsquash-1.o unsquash-2.o unsquash-3.o
>> unsquash-4.o swap.o $(LIBS) -o $@

dot

>> + + unsquashfs.o: unsquashfs.h unsquashfs.c squashfs_fs.h
>> squashfs_swap.h squashfs_compat.h global.h Makefile
>> + diff --git a/rules/host-squashfs-tools.make
>> b/rules/host-squashfs-tools.make
>> index 504365f..cd42c2a 100644
>> --- a/rules/host-squashfs-tools.make
>> +++ b/rules/host-squashfs-tools.make
>> @@ -16,23 +16,10 @@ HOST_PACKAGES-$(PTXCONF_HOST_SQUASHFS_TOOLS) +=
>> host-squashfs-tools
>>  #
>>  # Paths and names
>>  #
>> -HOST_SQUASHFS_TOOLS_VERSION    := $(call ptx/ifdef,
>> PTXCONF_HOST_SQUASHFS_TOOLS_V3X, 3.4, 4.0)
>> -HOST_SQUASHFS_TOOLS        := squashfs$(HOST_SQUASHFS_TOOLS_VERSION)
>> -HOST_SQUASHFS_TOOLS_SUFFIX    := tar.gz
>> -HOST_SQUASHFS_TOOLS_URL        :=
>> $(PTXCONF_SETUP_SFMIRROR)/squashfs/$(HOST_SQUASHFS_TOOLS).$(HOST_SQUASHFS_TOOLS_SUFFIX)
>>
>> -HOST_SQUASHFS_TOOLS_SOURCE    :=
>> $(SRCDIR)/$(HOST_SQUASHFS_TOOLS).$(HOST_SQUASHFS_TOOLS_SUFFIX)
>> -HOST_SQUASHFS_TOOLS_DIR        :=
>> $(HOST_BUILDDIR)/$(HOST_SQUASHFS_TOOLS)
>> +HOST_SQUASHFS_TOOLS_DIR        := $(HOST_BUILDDIR)/$(SQUASHFS_TOOLS)
>>  HOST_SQUASHFS_TOOLS_SUBDIR    := squashfs-tools
>>  
>>  #
>> ----------------------------------------------------------------------------
>>
>> -# Get
>> -#
>> ----------------------------------------------------------------------------
>>
>> -
>> -$(HOST_SQUASHFS_TOOLS_SOURCE):
>> -    @$(call targetinfo)
>> -    @$(call get, HOST_SQUASHFS_TOOLS)
>> -
>> -#
>> ----------------------------------------------------------------------------
>>
>>  # Compile
>>  #
>> ----------------------------------------------------------------------------
>>
>>  
>> diff --git a/rules/squashfs-tools.in b/rules/squashfs-tools.in
>> new file mode 100644
>> index 0000000..8e17402
>> --- /dev/null
>> +++ b/rules/squashfs-tools.in
>> @@ -0,0 +1,24 @@
>> +## SECTION=disk_and_file
>> +
>> +menuconfig SQUASHFS_TOOLS
>> +    tristate
>> +    select ZLIB
>> +    prompt "squashfs-tools"
>> +    help
>> +      Squashfs is a highly compressed read-only filesystem for Linux.
>> +      It uses zlib compression to compress both files, inodes and
>> directories.
>> +      Inodes in the system are very small and all blocks are packed
>> to minimise
>> +      data overhead. Block sizes greater than 4K are supported up to
>> a maximum
>> +      of 1Mbytes (default block size 128K).
>> +
>> +if SQUASHFS_TOOLS
>> +
>> +config SQUASHFS_TOOLS_MKSQUASHFS
>> +    bool
>> +    prompt "Install mksquashfs"
>> +
>> +config SQUASHFS_TOOLS_UNSQUASHFS
>> +    bool
>> +    prompt "Install unsquashfs"
>> +
>> +endif
>> diff --git a/rules/squashfs-tools.make b/rules/squashfs-tools.make
>> new file mode 100644
>> index 0000000..a0d3a99
>> --- /dev/null
>> +++ b/rules/squashfs-tools.make
>> @@ -0,0 +1,78 @@
>> +# -*-makefile-*-
>> +#
>> +# Copyright (C) 2010 by Erwin Rol
>> +#
>> +# See CREDITS for details about who has contributed to this project.
>> +#
>> +# For further information about the PTXdist project and license
>> conditions
>> +# see the README file.
>> +#
>> +
>> +#
>> +# We provide this package
>> +#
>> +PACKAGES-$(PTXCONF_SQUASHFS_TOOLS) += squashfs-tools
>> +
>> +#
>> +# Paths and names
>> +#
>> +SQUASHFS_TOOLS_VERSION     = $(call ptx/ifdef,

the := disappeared

try to indent with tabs, here

>> PTXCONF_HOST_SQUASHFS_TOOLS_V3X, 3.4, 4.0)
>> +SQUASHFS_TOOLS        := squashfs$(SQUASHFS_TOOLS_VERSION)
>> +SQUASHFS_TOOLS_SUFFIX    := tar.gz
>> +SQUASHFS_TOOLS_URL    :=
>> $(PTXCONF_SETUP_SFMIRROR)/squashfs/$(SQUASHFS_TOOLS).$(SQUASHFS_TOOLS_SUFFIX)
>>
>> +SQUASHFS_TOOLS_SOURCE    :=
>> $(SRCDIR)/$(SQUASHFS_TOOLS).$(SQUASHFS_TOOLS_SUFFIX)
>> +SQUASHFS_TOOLS_DIR    := $(BUILDDIR)/$(SQUASHFS_TOOLS)
>> +SQUASHFS_TOOLS_SUBDIR    := squashfs-tools
>> +SQUASHFS_TOOLS_LICENSE    := unknown
>> +
>> +#
>> ----------------------------------------------------------------------------
>>
>> +# Get
>> +#
>> ----------------------------------------------------------------------------
>>
>> +
>> +$(SQUASHFS_TOOLS_SOURCE):
>> +    @$(call targetinfo)
>> +    @$(call get, SQUASHFS_TOOLS)
>> +
>> +#
>> ----------------------------------------------------------------------------
>>
>> +# Prepare
>> +#
>> ----------------------------------------------------------------------------
>>
>> +
>> +SQUASHFS_TOOLS_MAKE_OPT := \
>> +    $(CROSS_ENV) \
>> +    LIBS="$(CROSS_LDFLAGS) -lz -lpthread -lm"

with the use of LDFLAGS in the Makefile, this shouldn't be necessary
>> +
>> +SQUASHFS_TOOLS_MAKE_PAR := NO
>> +SQUASHFS_TOOLS_INSTALL_OPT := \
>> +    $(SQUASHFS_TOOLS_MAKE_OPT) \
>> +    INSTALL_DIR="$(SQUASHFS_TOOLS_PKGDIR)/usr/sbin" \

Does it work when adding the INSTALL_DIR to MAKE_OPT?
>> +    install
>> +
>> +#
>> ----------------------------------------------------------------------------
>>
>> +# Target-Install
>> +#
>> ----------------------------------------------------------------------------
>>
>> +
>> +$(STATEDIR)/squashfs-tools.targetinstall:
>> +    @$(call targetinfo)
>> +
>> +    @$(call install_init,  squashfs-tools)
>> +    @$(call install_fixup, squashfs-tools,PACKAGE,squashfs-tools)
>> +    @$(call install_fixup, squashfs-tools,PRIORITY,optional)
>> +    @$(call install_fixup,
>> squashfs-tools,VERSION,$(SQUASHFS_TOOLS_VERSION))
>> +    @$(call install_fixup, squashfs-tools,SECTION,base)
>> +    @$(call install_fixup, squashfs-tools,AUTHOR,"Erwin Rol")
>> +    @$(call install_fixup, squashfs-tools,DEPENDS,)
>> +    @$(call install_fixup, squashfs-tools,DESCRIPTION,missing)
>> +
>> +
>> +ifdef PTXCONF_SQUASHFS_TOOLS_MKSQUASHFS
>> +    @$(call install_copy, squashfs-tools, 0, 0, 0755, -,
>> /usr/sbin/mksquashfs)
>> +endif
>> +ifdef PTXCONF_SQUASHFS_TOOLS_UNSQUASHFS
>> +    @$(call install_copy, squashfs-tools, 0, 0, 0755, -,
>> /usr/sbin/unsquashfs)
>> +endif
>> +
>> +    @$(call install_finish, squashfs-tools)
>> +
>> +    @$(call touch)
>> +
>> +# vim: syntax=make
>>   
> 
> 
> -- 
> ptxdist mailing list
> [email protected]

cheers, Marc

-- 
Pengutronix e.K.                  | Marc Kleine-Budde           |
Industrial Linux Solutions        | Phone: +49-231-2826-924     |
Vertretung West/Dortmund          | Fax:   +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686  | http://www.pengutronix.de   |

Attachment: signature.asc
Description: OpenPGP digital signature

--
ptxdist mailing list
[email protected]

Reply via email to