diff --git a/ase/Makefile b/ase/Makefile new file mode 100644 index 0000000..2d03e8b --- /dev/null +++ b/ase/Makefile @@ -0,0 +1,76 @@ +# +# Copyright (C) 2011 David Kuehling +# +# OpenWRT package for ASEPrite -- the Allegro Sprite Editor +# +# License GPLv2 or later. NO WARRANTY. + +include $(TOPDIR)/rules.mk + +PKG_NAME:=ase +PKG_VERSION:=0.8.2 +PKG_RELEASE:=1 +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).zip +PKG_SOURCE_URL:=http://aseprite.googlecode.com/files/ +PKG_MD5SUM:=ef941a91a05646c39005748b4d2178ed +PKG_INSTALL:=1 +PKG_BUILD_PARALLEL:=1 + +#PKG_BUILD_DEPENDS := liballegro + +include $(INCLUDE_DIR)/package.mk + +define Package/ase/Default + TITLE:=Allegro Sprite Aditor + SECTION:=utils + CATEGORY:=Utilities + URL:=http://www.aseprite.org/ +endef + +define Package/ase/Default/description +ASE (now ASEPRITE, aka Allegro Sprite Editor) is an open source program to +create animated sprites & pixel art. Sprites are little images that can be +used in your website or in a video game. You can draw characters with +movement, intros, textures, patterns, backgrounds, logos, color palettes, +isometric levels, etc. +endef + +define Package/ase +$(call Package/ase/Default) + TITLE += + DEPENDS:=+liballegro +endef + +define Package/ase/description +$(call Package/ase/Default/description) +endef + +#TARGET_LDFLAGS += -Wl,-rpath-link -Wl,$(STAGING_DIR)/usr/lib +#TARGET_CPPFLAGS += + +TARGET_LDFLAGS += -L$(STAGING_DIR)/usr/lib -lalleg + +define Build/Install + $(INSTALL_DIR) $(PKG_INSTALL_DIR)/usr/{bin,share} +$(call Build/Install/Default) +endef + +MAKE_FLAGS += \ + -f $(PKG_BUILD_DIR)/makefile.linux \ + CONFIGURED=1 RELEASE=1 DEFAULT_PREFIX=/usr \ + CPP="$(TARGET_CXX)" \ + BUILD_CFLAGS="$(TARGET_CFLAGS) $(TARGET_CPPFLAGS) $(EXTRA_CFLAGS)" + +define Package/ase/install + $(INSTALL_DIR) $(1)/usr/{bin,share} + $(INSTALL_DIR) $(1)/etc + $(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/ + $(CP) $(PKG_INSTALL_DIR)/usr/share/* $(1)/usr/share/ +endef + +$(eval $(call BuildPackage,ase)) + +# The following comments configure the Emacs editor. Just ignore them. +# Local Variables: +# compile-command: "cd ~/src/nanonote/ase-0.8.2 && ~/bin/quilt-export target && make -C ~/h/src/qi/openwrt-xburst package/ase/compile -j2 V=99" +# End: diff --git a/ase/patches/010-makefile.patch b/ase/patches/010-makefile.patch new file mode 100644 index 0000000..99a9066 --- /dev/null +++ b/ase/patches/010-makefile.patch @@ -0,0 +1,40 @@ +Index: ase-0.8.2/makefile.gcc +=================================================================== +--- ase-0.8.2.orig/makefile.gcc 2011-06-13 12:05:31.000000000 +0200 ++++ ase-0.8.2/makefile.gcc 2011-06-13 12:20:00.000000000 +0200 +@@ -21,15 +21,16 @@ + LFLAGS += $(THIRD_PARTY_LIBS) + + ifdef PROFILE +- CFLAGS += -pg -O3 -DNDEBUG +- LFLAGS += -pg -O3 -DNDEBUG ++ CFLAGS += -pg -DNDEBUG ++ LFLAGS += -pg -DNDEBUG + else + ifdef DEBUGMODE + CFLAGS += -g3 -DDEBUGMODE + LFLAGS += -g3 + else +- CFLAGS += -s -O3 -DNDEBUG +- LFLAGS += -s -O3 -DNDEBUG ++ # order of include dirs important, need to add BUILD_CFLAGS after -I above ++ CFLAGS += -DNDEBUG $(BUILD_CFLAGS) ++ LFLAGS += -DNDEBUG + endif + endif + +Index: ase-0.8.2/makefile.linux +=================================================================== +--- ase-0.8.2.orig/makefile.linux 2011-06-13 12:05:31.000000000 +0200 ++++ ase-0.8.2/makefile.linux 2011-06-13 12:19:25.000000000 +0200 +@@ -18,8 +18,8 @@ + CFLAGS = `allegro-config --cflags debug` + LFLAGS = `allegro-config --libs debug` + else +-CFLAGS = `allegro-config --cflags` +-LFLAGS = `allegro-config --libs` ++CFLAGS = ++LFLAGS = $(LDFLAGS) + endif + + ###################################################################### diff --git a/ase/patches/030-pointer-casts.patch b/ase/patches/030-pointer-casts.patch new file mode 100644 index 0000000..cdf9415 --- /dev/null +++ b/ase/patches/030-pointer-casts.patch @@ -0,0 +1,31 @@ +Index: ase-0.8.2/src/widgets/groupbut.cpp +=================================================================== +--- ase-0.8.2.orig/src/widgets/groupbut.cpp 2010-11-28 18:47:26.000000000 +0100 ++++ ase-0.8.2/src/widgets/groupbut.cpp 2011-06-13 11:33:18.000000000 +0200 +@@ -101,7 +101,7 @@ + JWidget sel = find_selected(group); + + if (sel) +- return (int)sel->user_data[1]; ++ return (long)sel->user_data[1]; + else + return -1; + } +@@ -110,7 +110,7 @@ + { + JWidget sel = find_selected(group); + +- if (!sel || (int)sel->user_data[1] != index) { ++ if (!sel || (long)sel->user_data[1] != index) { + sel->setSelected(false); + select_button(group, index); + } +@@ -137,7 +137,7 @@ + JLink link; + + if (widget->type == JI_RADIO) { +- if ((int)widget->user_data[1] == index) { ++ if ((long)widget->user_data[1] == index) { + widget->setSelected(true); + return true; + } diff --git a/ase/patches/050-gfx-mode.patch b/ase/patches/050-gfx-mode.patch new file mode 100644 index 0000000..f27c69a --- /dev/null +++ b/ase/patches/050-gfx-mode.patch @@ -0,0 +1,24 @@ +Index: ase-0.8.2/src/modules/gui.cpp +=================================================================== +--- ase-0.8.2.orig/src/modules/gui.cpp 2011-06-13 13:08:58.000000000 +0200 ++++ ase-0.8.2/src/modules/gui.cpp 2011-06-13 13:19:44.000000000 +0200 +@@ -221,8 +221,8 @@ + has_desktop = get_desktop_resolution(&dsk_w, &dsk_h) == 0; + + /* we must extract some space for the windows borders */ +- dsk_w -= 16; +- dsk_h -= 32; ++ // dsk_w -= 16; ++ // dsk_h -= 32; + + /* try to get desktop resolution */ + if (has_desktop) { +@@ -397,7 +397,7 @@ + w = get_config_int("GfxMode", "Width", 0); + h = get_config_int("GfxMode", "Height", 0); + bpp = get_config_int("GfxMode", "Depth", 0); +- fullscreen = get_config_bool("GfxMode", "FullScreen", false); ++ fullscreen = get_config_bool("GfxMode", "FullScreen", true); + screen_scaling = get_config_int("GfxMode", "Scale", 1); + screen_scaling = MID(1, screen_scaling, 4); +