diff options
-rw-r--r-- | kconfig/packages.kconfig | 10 | ||||
-rw-r--r-- | mk/packages.mk | 55 | ||||
-rw-r--r-- | mk/pkgconfig.mk | 61 | ||||
-rw-r--r-- | mk/rootfs.mk | 5 | ||||
-rw-r--r-- | packages/graphics/directfb/directfb.kconfig | 53 | ||||
-rw-r--r-- | packages/graphics/directfb/directfb.mk | 74 | ||||
-rw-r--r-- | packages/graphics/freetype/freetype.kconfig | 53 | ||||
-rw-r--r-- | packages/graphics/freetype/freetype.mk | 63 | ||||
-rw-r--r-- | packages/graphics/libjpeg/libjpeg.kconfig | 31 | ||||
-rw-r--r-- | packages/graphics/libjpeg/libjpeg.mk | 59 | ||||
-rw-r--r-- | packages/graphics/libpng/libpng.kconfig | 46 | ||||
-rw-r--r-- | packages/graphics/libpng/libpng.mk | 60 |
12 files changed, 561 insertions, 9 deletions
diff --git a/kconfig/packages.kconfig b/kconfig/packages.kconfig index ad05628..fec053b 100644 --- a/kconfig/packages.kconfig +++ b/kconfig/packages.kconfig @@ -57,10 +57,17 @@ config EMBTK_ROOTFS_HAVE_MTDUTILS device on an embedded system. endmenu -menu "Networking packages" +menu "Compression packages" endmenu menu "Graphics packages" +source packages/graphics/directfb/directfb.kconfig +source packages/graphics/freetype/freetype.kconfig +source packages/graphics/libjpeg/libjpeg.kconfig +source packages/graphics/libpng/libpng.kconfig +endmenu + +menu "Networking packages" endmenu menu "System packages" @@ -69,3 +76,4 @@ endmenu menu "Miscellaneous packages" endmenu endmenu + diff --git a/mk/packages.mk b/mk/packages.mk index 370b0da..83b0d47 100644 --- a/mk/packages.mk +++ b/mk/packages.mk @@ -22,8 +22,12 @@ # \date May 2009 ################################################################################ - +################################################################################ #################### Common include for target and host ######################## +################################################################################ + +include $(EMBTK_ROOT)/mk/zlib.mk +include $(EMBTK_ROOT)/mk/lzo.mk #gdb ifeq ($(CONFIG_EMBTK_HAVE_GDB),y) @@ -31,7 +35,9 @@ include $(EMBTK_ROOT)/mk/termcap.mk include $(EMBTK_ROOT)/mk/gdb.mk endif +################################################################################ ############################# Packages for TARGET ############################## +################################################################################ #Busybox ifeq ($(CONFIG_EMBTK_ROOTFS_HAVE_BB),y) @@ -49,26 +55,65 @@ ifeq ($(CONFIG_EMBTK_HAVE_GDBSERVER_ON_TARGET),y) ROOTFS_COMPONENTS += gdbserver_target_install endif +#strace +ifeq ($(CONFIG_EMBTK_ROOTFS_HAVE_STRACE),y) +include $(EMBTK_ROOT)/mk/strace.mk +ROOTFS_COMPONENTS += strace_install +endif + +######################## Flash manipulation tools ############################## + #mtd-utils ifeq ($(CONFIG_EMBTK_ROOTFS_HAVE_MTDUTILS),y) ROOTFS_COMPONENTS += mtd-utils_target_install ROOTFS_COMPONENTS_CLEAN += mtd-utils_target_clean endif -#strace -ifeq ($(CONFIG_EMBTK_ROOTFS_HAVE_STRACE),y) -include $(EMBTK_ROOT)/mk/strace.mk -ROOTFS_COMPONENTS += strace_install +######################## Compression packages ################################## + +########################### Graphics packages ################################## + +#DirectFB +ifeq ($(CONFIG_EMBTK_HAVE_DIRECTFB),y) +include $(EMBTK_ROOT)/packages/graphics/directfb/directfb.mk +ROOTFS_COMPONENTS += directfb_install +endif + +#FreeType +ifeq ($(CONFIG_EMBTK_HAVE_FREETYPE),y) +include $(EMBTK_ROOT)/packages/graphics/freetype/freetype.mk +ROOTFS_COMPONENTS += freetype_install +endif + +#libjpeg +ifeq ($(CONFIG_EMBTK_HAVE_LIBJPEG),y) +include $(EMBTK_ROOT)/packages/graphics/libjpeg/libjpeg.mk +ROOTFS_COMPONENTS += libjpeg_install endif +#libpng +ifeq ($(CONFIG_EMBTK_HAVE_LIBPNG),y) +include $(EMBTK_ROOT)/packages/graphics/libpng/libpng.mk +ROOTFS_COMPONENTS += libpng_install +endif +########################## Networking packages ################################# + +############################ System packages ################################### + +########################## Miscellaneous packages ############################## + +################################################################################ ########################## Packages for HOST MACHINE ########################### +################################################################################ #gdb ifeq ($(CONFIG_EMBTK_HAVE_GDB_ON_HOST),y) HOSTTOOLS_COMPONENTS += gdb_host_install endif +################################################################################ ########################### Targets for HOST MACHINE ########################### +################################################################################ host_packages_build: ifeq ($(HOSTTOOLS_COMPONENTS),) else diff --git a/mk/pkgconfig.mk b/mk/pkgconfig.mk new file mode 100644 index 0000000..353647b --- /dev/null +++ b/mk/pkgconfig.mk @@ -0,0 +1,61 @@ +################################################################################ +# GAYE Abdoulaye Walsimou, <walsimou@walsimou.com> +# Copyright(C) 2009 GAYE Abdoulaye Walsimou. All rights reserved. +# +# This program is free software; you can distribute it and/or modify it +# under the terms of the GNU General Public License +# (Version 2 or later) published by the Free Software Foundation. +# +# This program is distributed in the hope it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. +################################################################################ +# +# \file pkgconfig.mk +# \brief pkgconfig.mk of Embtoolkit +# \author GAYE Abdoulaye Walsimou, <walsimou@walsimou.com> +# \date October 2009 +################################################################################ + +PKGCONFIG_VERSION := 0.23 +PKGCONFIG_SITE := http://pkgconfig.freedesktop.org/releases +PKGCONFIG_PACKAGE := pkg-config-$(PKGCONFIG_VERSION).tar.gz +PKGCONFIG_BUILD_DIR := $(TOOLS_BUILD)/pkg-config-$(PKGCONFIG_VERSION) +PKGCONFIG_DIR := $(HOSTTOOLS)/usr/local/pkg-config +PKGCONFIG_BIN := $(PKGCONFIG_DIR)/bin/pkg-config + +export PKGCONFIG_BIN + +pkgconfig_install: $(PKGCONFIG_BUILD_DIR)/.installed + +$(PKGCONFIG_BUILD_DIR)/.installed: download_pkgconfig \ + $(PKGCONFIG_BUILD_DIR)/.decompressed $(PKGCONFIG_BUILD_DIR)/.configured + @$(MAKE) -C $(PKGCONFIG_BUILD_DIR) $(J) + @$(MAKE) -C $(PKGCONFIG_BUILD_DIR) install + @touch $@ + +download_pkgconfig: + $(call EMBTK_GENERIC_MESSAGE,"Downloading $(PKGCONFIG_PACKAGE) if \ + necessary...") + @test -e $(DOWNLOAD_DIR)/$(PKGCONFIG_PACKAGE) || \ + wget -O $(DOWNLOAD_DIR)/$(PKGCONFIG_PACKAGE) \ + $(PKGCONFIG_SITE)/$(PKGCONFIG_PACKAGE) + +$(PKGCONFIG_BUILD_DIR)/.decompressed: + $(call EMBTK_GENERIC_MESSAGE,"Decompressing $(PKGCONFIG_PACKAGE)...") + @tar -C $(TOOLS_BUILD) -xzf $(DOWNLOAD_DIR)/$(PKGCONFIG_PACKAGE) + @touch $@ + +$(PKGCONFIG_BUILD_DIR)/.configured: + $(call EMBTK_GENERIC_MESSAGE,"Configuring \ + pkg-config-$(PKGCONFIG_VERSION)...") + @cd $(PKGCONFIG_BUILD_DIR); \ + ./configure \ + --prefix=$(PKGCONFIG_DIR) --build=$(HOST_BUILD) --host=$(HOST_ARCH) + @touch $@ + diff --git a/mk/rootfs.mk b/mk/rootfs.mk index 214a24b..f070dba 100644 --- a/mk/rootfs.mk +++ b/mk/rootfs.mk @@ -30,7 +30,8 @@ include $(EMBTK_ROOT)/mk/fs.mk #host tools in order to build root filesystems: fakeroot and makedevs. include $(EMBTK_ROOT)/mk/fakeroot.mk include $(EMBTK_ROOT)/mk/makedevs.mk -ROOTFS_HOSTTOOLS += makedevs_install fakeroot_install +include $(EMBTK_ROOT)/mk/pkgconfig.mk +ROOTFS_HOSTTOOLS += makedevs_install fakeroot_install pkgconfig_install #Does CPIO archive for initramfs selected? ifeq ($(CONFIG_EMBTK_ROOTFS_HAVE_INITRAMFS_CPIO),y) @@ -39,9 +40,7 @@ endif #Does jffs2 filesystem selected? ifeq ($(CONFIG_EMBTK_ROOTFS_HAVE_JFFS2),y) -include $(EMBTK_ROOT)/mk/lzo.mk include $(EMBTK_ROOT)/mk/mtd-utils.mk -include $(EMBTK_ROOT)/mk/zlib.mk ROOTFS_HOSTTOOLS += mtd-utils_host_install ROOTFS_HOSTTOOLS_CLEAN += mtd-utils_host_clean FILESYSTEMS += build_jffs2_rootfs diff --git a/packages/graphics/directfb/directfb.kconfig b/packages/graphics/directfb/directfb.kconfig new file mode 100644 index 0000000..8a2b7a5 --- /dev/null +++ b/packages/graphics/directfb/directfb.kconfig @@ -0,0 +1,53 @@ +################################################################################ +# GAYE Abdoulaye Walsimou, <walsimou@walsimou.com> +# Copyright(C) 2009 GAYE Abdoulaye Walsimou. All rights reserved. +# +# This program is free software; you can distribute it and/or modify it +# under the terms of the GNU General Public License +# (Version 2 or later) published by the Free Software Foundation. +# +# This program is distributed in the hope it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. +################################################################################ +# +# \file directfb.kconfig +# \brief directfb.kconfig of Embtoolkit +# \author GAYE Abdoulaye Walsimou, <walsimou@walsimou.com> +# \date October 2009 +################################################################################ + +config EMBTK_HAVE_DIRECTFB + bool "Have DirectFB" + select EMBTK_HAVE_LIBPNG + select EMBTK_HAVE_LIBJPEG + select EMBTK_HAVE_FREETYPE + help + DirectFB is a graphics library which was designed with embedded + systems in mind. It offers maximum hardware accelerated performance + at a minimum of resource usage and overhead. + Check http://www.directfb.org/ for more and up to date infos. + +choice + prompt "DirectFB version you wish" + default EMBTK_DIRECTFB_VERSION_1_4_2 + depends on EMBTK_HAVE_DIRECTFB + help + Here you can choose which version of DirectFB you want to use. + + config EMBTK_DIRECTFB_VERSION_1_4_2 + bool "DirectFB-1.4.2" +endchoice + +config EMBTK_DIRECTFB_VERSION_STRING + string + default "1.4.2" if EMBTK_DIRECTFB_VERSION_1_4_2 +config EMBTK_DIRECTFB_BRANCH_STRING + string + default "DirectFB-1.4" if EMBTK_DIRECTFB_VERSION_1_4_2 + diff --git a/packages/graphics/directfb/directfb.mk b/packages/graphics/directfb/directfb.mk new file mode 100644 index 0000000..b92ea83 --- /dev/null +++ b/packages/graphics/directfb/directfb.mk @@ -0,0 +1,74 @@ +################################################################################ +# GAYE Abdoulaye Walsimou, <walsimou@walsimou.com> +# Copyright(C) 2009 GAYE Abdoulaye Walsimou. All rights reserved. +# +# This program is free software; you can distribute it and/or modify it +# under the terms of the GNU General Public License +# (Version 2 or later) published by the Free Software Foundation. +# +# This program is distributed in the hope it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. +################################################################################ +# +# \file directfb.mk +# \brief directfb.mk of Embtoolkit +# \author GAYE Abdoulaye Walsimou, <walsimou@walsimou.com> +# \date October 2009 +################################################################################ + +DIRECTFB_VERSION := $(subst ",,$(strip $(CONFIG_EMBTK_DIRECTFB_VERSION_STRING))) +DIRECTFB_BRANCH := $(subst ",,$(strip $(CONFIG_EMBTK_DIRECTFB_BRANCH_STRING))) +DIRECTFB_SITE := http://www.directfb.org/downloads/Core/$(DIRECTFB_BRANCH) +DIRECTFB_PACKAGE := DirectFB-$(DIRECTFB_VERSION).tar.gz +DIRECTFB_BUILD_DIR := $(PACKAGES_BUILD)/DirectFB-$(DIRECTFB_VERSION) + +directfb_install: $(DIRECTFB_BUILD_DIR)/.installed + +$(DIRECTFB_BUILD_DIR)/.installed: libpng_install libjpeg_install \ + freetype_install download_directfb \ + $(DIRECTFB_BUILD_DIR)/.decompressed $(DIRECTFB_BUILD_DIR)/.configured + $(call EMBTK_GENERIC_MESSAGE,"Compiling and installing \ + DirectFB-$(DIRECTFB_VERSION) in your root filesystem...") + $(Q)cd $(DIRECTFB_BUILD_DIR); $(MAKE) $(J) ; $(MAKE) install + $(Q)mkdir -p $(SYSROOT)/usr/lib/pkgconfig + $(Q)cp $(ROOTFS)/usr/lib/pkgconfig/* $(SYSROOT)/usr/lib/pkgconfig/ + $(Q)-cp $(ROOTFS)/usr/lib32/pkgconfig/* $(SYSROOT)/usr/lib32/pkgconfig/ + $(Q)rm -rf $(ROOTFS)/usr/lib/pkgconfig + $(Q)-rm -rf $(ROOTFS)/usr/lib32/pkgconfig + @touch $@ + +download_directfb: + $(call EMBTK_GENERIC_MESSAGE,"Downloading $(DIRECTFB_PACKAGE) \ + if necessary...") + @test -e $(DOWNLOAD_DIR)/$(DIRECTFB_PACKAGE) || \ + wget -O $(DOWNLOAD_DIR)/$(DIRECTFB_PACKAGE) \ + $(DIRECTFB_SITE)/$(DIRECTFB_PACKAGE) + +$(DIRECTFB_BUILD_DIR)/.decompressed: + $(call EMBTK_GENERIC_MESSAGE,"Decompressing $(DIRECTFB_PACKAGE) ...") + @tar -C $(PACKAGES_BUILD) -xzvf $(DOWNLOAD_DIR)/$(DIRECTFB_PACKAGE) + @touch $@ + +$(DIRECTFB_BUILD_DIR)/.configured: + cd $(DIRECTFB_BUILD_DIR); \ + PKG_CONFIG=$(PKGCONFIG_BIN) \ + PKG_CONFIG_PATH="$(SYSROOT)/usr/lib/pkgconfig \ + $(SYSROOT)/usr/lib32/pkgconfig" \ + CC=$(TARGETCC_CACHED) CFLAGS=$(TARGET_CFLAGS) \ + LDFLAGS="-L$(ROOTFS)/usr/lib -L$(ROOTFS)/usr/lib32 \ + -L$(ROOTFS)/lib -L$(ROOTFS)/lib32 \ + -L$(SYSROOT)/usr/lib -L$(SYSROOT)/usr/lib32 \ + -L$(SYSROOT)/lib -L$(SYSROOT)/lib32" \ + CPPFLAGS="-I$(SYSROOT)/usr/include" \ + ./configure --build=$(HOST_BUILD) --host=$(STRICT_GNU_TARGET) \ + --target=$(STRICT_GNU_TARGET) --prefix=$(ROOTFS)/usr \ + --includedir=$(SYSROOT)/usr/include --datarootdir=$(SYSROOT)/usr \ + --enable-static=no + @touch $@ + diff --git a/packages/graphics/freetype/freetype.kconfig b/packages/graphics/freetype/freetype.kconfig new file mode 100644 index 0000000..6a02ddd --- /dev/null +++ b/packages/graphics/freetype/freetype.kconfig @@ -0,0 +1,53 @@ +################################################################################ +# GAYE Abdoulaye Walsimou, <walsimou@walsimou.com> +# Copyright(C) 2009 GAYE Abdoulaye Walsimou. All rights reserved. +# +# This program is free software; you can distribute it and/or modify it +# under the terms of the GNU General Public License +# (Version 2 or later) published by the Free Software Foundation. +# +# This program is distributed in the hope it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. +################################################################################ +# +# \file freetype.kconfig +# \brief freetype.kconfig of Embtoolkit +# \author GAYE Abdoulaye Walsimou, <walsimou@walsimou.com> +# \date October 2009 +################################################################################ + +config EMBTK_HAVE_FREETYPE + bool "Have FreeType" + help + FreeType 2 is a software font engine that is designed to be small, + efficient, highly customizable, and portable while capable of producing + high-quality output (glyph images). It can be used in graphics + libraries, display servers, font conversion tools, text image + generation tools, and many other products as well. + Note that FreeType 2 is a font service and doesn't provide APIs to + perform higher-level features like text layout or graphics processing + (e.g., colored text rendering, ‘hollowing’, etc.). However, it greatly + simplifies these tasks by providing a simple, easy to use, and uniform + interface to access the content of font files. + +choice + prompt "FreeType version you wish" + default EMBTK_FREETYPE_VERSION_2_3_9 + depends on EMBTK_HAVE_FREETYPE + help + Here you can choose which version of libpng you want to use. + + config EMBTK_FREETYPE_VERSION_2_3_9 + bool "FreeType-2.3.9" +endchoice + +config EMBTK_FREETYPE_VERSION_STRING + string + default "2.3.9" if EMBTK_FREETYPE_VERSION_2_3_9 + diff --git a/packages/graphics/freetype/freetype.mk b/packages/graphics/freetype/freetype.mk new file mode 100644 index 0000000..32e5f53 --- /dev/null +++ b/packages/graphics/freetype/freetype.mk @@ -0,0 +1,63 @@ +################################################################################ +# GAYE Abdoulaye Walsimou, <walsimou@walsimou.com> +# Copyright(C) 2009 GAYE Abdoulaye Walsimou. All rights reserved. +# +# This program is free software; you can distribute it and/or modify it +# under the terms of the GNU General Public License +# (Version 2 or later) published by the Free Software Foundation. +# +# This program is distributed in the hope it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. +################################################################################ +# +# \file freetype.mk +# \brief freetype.mk of Embtoolkit +# \author GAYE Abdoulaye Walsimou, <walsimou@walsimou.com> +# \date October 2009 +################################################################################ + +FREETYPE_VERSION := $(subst ",,$(strip $(CONFIG_EMBTK_FREETYPE_VERSION_STRING))) +FREETYPE_SITE := http://mirrors.linhub.com/savannah/freetype +FREETYPE_PACKAGE := freetype-$(FREETYPE_VERSION).tar.bz2 +FREETYPE_BUILD_DIR := $(PACKAGES_BUILD)/freetype-$(FREETYPE_VERSION) + +freetype_install: $(FREETYPE_BUILD_DIR)/.installed + +$(FREETYPE_BUILD_DIR)/.installed: zlib_target_install download_freetype \ + $(FREETYPE_BUILD_DIR)/.decompressed $(FREETYPE_BUILD_DIR)/.configured + $(call EMBTK_GENERIC_MESSAGE,"Compiling and installing \ + freetype-$(FREETYPE_VERSION) in your root filesystem...") + $(Q)cd $(FREETYPE_BUILD_DIR); $(MAKE) $(J) ; $(MAKE) install + $(Q)mkdir -p $(SYSROOT)/usr/lib/pkgconfig + $(Q)cp $(ROOTFS)/usr/lib/pkgconfig/* $(SYSROOT)/usr/lib/pkgconfig + $(Q)-cp $(ROOTFS)/usr/lib32/pkgconfig/* $(SYSROOT)/usr/lib32/pkgconfig + $(Q)rm -rf $(ROOTFS)/usr/lib/pkgconfig + $(Q)-rm -rf $(ROOTFS)/usr/lib32/pkgconfig + @touch $@ + +download_freetype: + $(call EMBTK_GENERIC_MESSAGE,"Downloading $(FREETYPE_PACKAGE) \ + if necessary...") + @test -e $(DOWNLOAD_DIR)/$(FREETYPE_PACKAGE) || \ + wget -O $(DOWNLOAD_DIR)/$(FREETYPE_PACKAGE) \ + $(FREETYPE_SITE)/$(FREETYPE_PACKAGE) + +$(FREETYPE_BUILD_DIR)/.decompressed: + $(call EMBTK_GENERIC_MESSAGE,"Decompressing $(FREETYPE_PACKAGE) ...") + @tar -C $(PACKAGES_BUILD) -xjvf $(DOWNLOAD_DIR)/$(FREETYPE_PACKAGE) + @touch $@ + +$(FREETYPE_BUILD_DIR)/.configured: + $(Q)cd $(FREETYPE_BUILD_DIR); \ + CC=$(TARGETCC_CACHED) CFLAGS=$(TARGET_CFLAGS) \ + ./configure --build=$(HOST_BUILD) --host=$(STRICT_GNU_TARGET) \ + --prefix=$(ROOTFS)/usr --includedir=$(SYSROOT)/usr/include \ + --datarootdir=$(SYSROOT)/usr --enable-static=no + @touch $@ + diff --git a/packages/graphics/libjpeg/libjpeg.kconfig b/packages/graphics/libjpeg/libjpeg.kconfig new file mode 100644 index 0000000..fc902a3 --- /dev/null +++ b/packages/graphics/libjpeg/libjpeg.kconfig @@ -0,0 +1,31 @@ +################################################################################ +# GAYE Abdoulaye Walsimou, <walsimou@walsimou.com> +# Copyright(C) 2009 GAYE Abdoulaye Walsimou. All rights reserved. +# +# This program is free software; you can distribute it and/or modify it +# under the terms of the GNU General Public License +# (Version 2 or later) published by the Free Software Foundation. +# +# This program is distributed in the hope it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. +################################################################################ +# +# \file libjpeg.kconfig +# \brief libjpeg.kconfig of Embtoolkit +# \author GAYE Abdoulaye Walsimou, <walsimou@walsimou.com> +# \date October 2009 +################################################################################ + +config EMBTK_HAVE_LIBJPEG + bool "Have libjpeg" + help + JPEG (pronounced "jay-peg") is a standardized image compression + mechanism. JPEG stands for Joint Photographic Experts Group, the + original name of the committee that wrote the standard. + diff --git a/packages/graphics/libjpeg/libjpeg.mk b/packages/graphics/libjpeg/libjpeg.mk new file mode 100644 index 0000000..256f17d --- /dev/null +++ b/packages/graphics/libjpeg/libjpeg.mk @@ -0,0 +1,59 @@ +################################################################################ +# GAYE Abdoulaye Walsimou, <walsimou@walsimou.com> +# Copyright(C) 2009 GAYE Abdoulaye Walsimou. All rights reserved. +# +# This program is free software; you can distribute it and/or modify it +# under the terms of the GNU General Public License +# (Version 2 or later) published by the Free Software Foundation. +# +# This program is distributed in the hope it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. +################################################################################ +# +# \file libjpeg.mk +# \brief libjpeg.mk of Embtoolkit +# \author GAYE Abdoulaye Walsimou, <walsimou@walsimou.com> +# \date October 2009 +################################################################################ + +LIBJPEG_VERSION := v7 +LIBJPEG_SITE := http://www.ijg.org/files +LIBJPEG_PACKAGE := jpegsrc.$(LIBJPEG_VERSION).tar.gz +LIBJPEG_BUILD_DIR := $(PACKAGES_BUILD)/jpeg-7 + +libjpeg_install: $(LIBJPEG_BUILD_DIR)/.installed + +$(LIBJPEG_BUILD_DIR)/.installed: download_libjpeg \ + $(LIBJPEG_BUILD_DIR)/.decompressed $(LIBJPEG_BUILD_DIR)/.configured + $(call EMBTK_GENERIC_MESSAGE,"Compiling and installing \ + jpeg-$(LIBJPEG_VERSION) in your root filesystem...") + $(Q)cd $(LIBJPEG_BUILD_DIR); $(MAKE) $(J) ; $(MAKE) install + @touch $@ + +download_libjpeg: + $(call EMBTK_GENERIC_MESSAGE,"Downloading $(LIBJPEG_PACKAGE) \ + if necessary...") + @test -e $(DOWNLOAD_DIR)/$(LIBJPEG_PACKAGE) || \ + wget -O $(DOWNLOAD_DIR)/$(LIBJPEG_PACKAGE) \ + $(LIBJPEG_SITE)/$(LIBJPEG_PACKAGE) + +$(LIBJPEG_BUILD_DIR)/.decompressed: + $(call EMBTK_GENERIC_MESSAGE,"Decompressing $(LIBJPEG_PACKAGE) ...") + @tar -C $(PACKAGES_BUILD) -xzvf $(DOWNLOAD_DIR)/$(LIBJPEG_PACKAGE) + @touch $@ + +$(LIBJPEG_BUILD_DIR)/.configured: + cd $(LIBJPEG_BUILD_DIR); \ + CC=$(TARGETCC_CACHED) CFLAGS=$(TARGET_CFLAGS) \ + ./configure --build=$(HOST_BUILD) --host=$(STRICT_GNU_TARGET) \ + --target=$(STRICT_GNU_TARGET) \ + --prefix=$(ROOTFS)/usr --includedir=$(SYSROOT)/usr/include \ + --datarootdir=$(SYSROOT)/usr --enable-static=no + @touch $@ + diff --git a/packages/graphics/libpng/libpng.kconfig b/packages/graphics/libpng/libpng.kconfig new file mode 100644 index 0000000..bbdee09 --- /dev/null +++ b/packages/graphics/libpng/libpng.kconfig @@ -0,0 +1,46 @@ +################################################################################ +# GAYE Abdoulaye Walsimou, <walsimou@walsimou.com> +# Copyright(C) 2009 GAYE Abdoulaye Walsimou. All rights reserved. +# +# This program is free software; you can distribute it and/or modify it +# under the terms of the GNU General Public License +# (Version 2 or later) published by the Free Software Foundation. +# +# This program is distributed in the hope it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. +################################################################################ +# +# \file libpng.kconfig +# \brief libpng.kconfig of Embtoolkit +# \author GAYE Abdoulaye Walsimou, <walsimou@walsimou.com> +# \date October 2009 +################################################################################ + +config EMBTK_HAVE_LIBPNG + bool "Have libpng" + help + libpng is the reference library for use in applications that read, + create, and manipulate PNG (Portable Network Graphics) raster image + files. + +choice + prompt "libpng version you wish" + default EMBTK_LIBPNG_VERSION_1_2_40 + depends on EMBTK_HAVE_LIBPNG + help + Here you can choose which version of libpng you want to use. + + config EMBTK_LIBPNG_VERSION_1_2_40 + bool "libpng-1.2.40" +endchoice + +config EMBTK_LIBPNG_VERSION_STRING + string + default "1.2.40" if EMBTK_LIBPNG_VERSION_1_2_40 + diff --git a/packages/graphics/libpng/libpng.mk b/packages/graphics/libpng/libpng.mk new file mode 100644 index 0000000..69c0e8e --- /dev/null +++ b/packages/graphics/libpng/libpng.mk @@ -0,0 +1,60 @@ +################################################################################ +# GAYE Abdoulaye Walsimou, <walsimou@walsimou.com> +# Copyright(C) 2009 GAYE Abdoulaye Walsimou. All rights reserved. +# +# This program is free software; you can distribute it and/or modify it +# under the terms of the GNU General Public License +# (Version 2 or later) published by the Free Software Foundation. +# +# This program is distributed in the hope it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. +################################################################################ +# +# \file libpng.mk +# \brief libpng.mk of Embtoolkit +# \author GAYE Abdoulaye Walsimou, <walsimou@walsimou.com> +# \date October 2009 +################################################################################ + +LIBPNG_VERSION := $(subst ",,$(strip $(CONFIG_EMBTK_LIBPNG_VERSION_STRING))) +LIBPNG_SITE := http://download.sourceforge.net/libpng +LIBPNG_PACKAGE := libpng-$(LIBPNG_VERSION).tar.gz +LIBPNG_BUILD_DIR := $(PACKAGES_BUILD)/libpng-$(LIBPNG_VERSION) + +libpng_install: $(LIBPNG_BUILD_DIR)/.installed + +$(LIBPNG_BUILD_DIR)/.installed: zlib_target_install download_libpng \ + $(LIBPNG_BUILD_DIR)/.decompressed $(LIBPNG_BUILD_DIR)/.configured + $(call EMBTK_GENERIC_MESSAGE,"Compiling and installing \ + libpng-$(LIBPNG_VERSION) in your root filesystem...") + $(Q)cd $(LIBPNG_BUILD_DIR); $(MAKE) $(J) ; $(MAKE) install + @touch $@ + +download_libpng: + $(call EMBTK_GENERIC_MESSAGE,"Downloading $(LIBPNG_PACKAGE) \ + if necessary...") + @test -e $(DOWNLOAD_DIR)/$(LIBPNG_PACKAGE) || \ + wget -O $(DOWNLOAD_DIR)/$(LIBPNG_PACKAGE) \ + $(LIBPNG_SITE)/$(LIBPNG_PACKAGE) + +$(LIBPNG_BUILD_DIR)/.decompressed: + $(call EMBTK_GENERIC_MESSAGE,"Decompressing $(LIBPNG_PACKAGE) ...") + @tar -C $(PACKAGES_BUILD) -xzvf $(DOWNLOAD_DIR)/$(LIBPNG_PACKAGE) + @touch $@ + +$(LIBPNG_BUILD_DIR)/.configured: + cd $(LIBPNG_BUILD_DIR); \ + CC=$(TARGETCC_CACHED) CFLAGS=$(TARGET_CFLAGS) \ + ./configure --build=$(HOST_BUILD) --host=$(STRICT_GNU_TARGET) \ + --prefix=$(ROOTFS)/usr --includedir=$(SYSROOT)/usr/include \ + --datarootdir=$(SYSROOT)/usr \ + --with-pkgconfigdir=$(SYSROOT)/usr/lib/pkgconfig \ + --enable-static=no + @touch $@ + |