summaryrefslogtreecommitdiff
path: root/dgclock
diff options
context:
space:
mode:
Diffstat (limited to 'dgclock')
-rw-r--r--dgclock/Makefile75
-rw-r--r--dgclock/files/dgclock.desktop11
-rw-r--r--dgclock/patches/001-use-dejavu-font.patch17
-rw-r--r--dgclock/patches/002-fix-bpp-on-nn.patch47
4 files changed, 150 insertions, 0 deletions
diff --git a/dgclock/Makefile b/dgclock/Makefile
new file mode 100644
index 0000000..da1ebe8
--- /dev/null
+++ b/dgclock/Makefile
@@ -0,0 +1,75 @@
+#
+# Copyright (C) 2010 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=dgclock
+PKG_VERSION:=091222
+PKG_RELEASE:=1
+
+PKG_SOURCE:=dgclock$(PKG_VERSION).zip
+PKG_SOURCE_URL:=http://clogging.web.fc2.com/dingoo/
+PKG_MD5SUM:=2a5143b7a3db464488c917387445e092
+PKG_BUILD_DIR:=$(BUILD_DIR)/dgclock-$(PKG_VERSION)
+
+UNPACK_CMD=unzip -d $(1) $(DL_DIR)/$(PKG_SOURCE)
+
+include $(INCLUDE_DIR)/package.mk
+
+TARGET_CFLAGS += \
+ -I$(STAGING_DIR)/usr/lib/libintl/include/ \
+ -I$(STAGING_DIR)/usr/lib/libiconv/include/ \
+ -I$(STAGING_DIR)/usr/include/SDL
+
+TARGET_LDFLAGS += \
+ -Wl,-rpath-link=$(STAGING_DIR)/usr/lib \
+ -L$(STAGING_DIR)/usr/lib/libintl/lib/ \
+ -L$(STAGING_DIR)/usr/lib/libiconv/lib/ \
+ -lSDL -lSDL_ttf
+
+define Package/dgclock
+ SECTION:=xorg-apps
+ CATEGORY:=Xorg
+ TITLE:=dgclock - sdl based date and time
+ URL:=http://clogging.web.fc2.com/dingoo/
+ DEPENDS:=+libsdl +libsdl-image +libsdl-ttf +dejavu-fonts-ttf
+endef
+
+define Package/dgclock/description
+ Clock and date in sdl
+endef
+
+define Build/Compile
+ ( cd $(PKG_BUILD_DIR) ; \
+ mkdir bin obj ; \
+ $(TARGET_CC) -c $(TARGET_CFLAGS) -o obj/text.o src/text.c ; \
+ $(TARGET_CC) -c $(TARGET_CFLAGS) -o obj/settime.o src/settime.c ; \
+ $(TARGET_CC) -c $(TARGET_CFLAGS) -o obj/main.o src/main.c ; \
+ $(TARGET_CC) -o bin/dgclock obj/text.o obj/main.o obj/settime.o $(TARGET_LDFLAGS) ; \
+ )
+endef
+
+define Package/dgclock/install
+ $(INSTALL_DIR) \
+ $(1)/usr/bin \
+ $(1)/usr/share/icons \
+ $(1)/usr/share/applications
+
+ $(INSTALL_BIN) \
+ $(PKG_BUILD_DIR)/bin/dgclock \
+ $(1)/usr/bin/
+
+ $(INSTALL_DATA) \
+ $(PKG_BUILD_DIR)/dgclock/dgclock.png \
+ $(1)/usr/share/icons/
+
+ $(INSTALL_DATA) \
+ ./files/dgclock.desktop \
+ $(1)/usr/share/applications/
+endef
+
+$(eval $(call BuildPackage,dgclock))
diff --git a/dgclock/files/dgclock.desktop b/dgclock/files/dgclock.desktop
new file mode 100644
index 0000000..0f89137
--- /dev/null
+++ b/dgclock/files/dgclock.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Name=dgclock
+Comment=sdl based date/time displayer
+Encoding=UTF-8
+Version=1.0
+Type=Application
+Exec=dgclock
+Icon=dgclock
+Terminal=false
+Categories=Application
+SingleInstance=false
diff --git a/dgclock/patches/001-use-dejavu-font.patch b/dgclock/patches/001-use-dejavu-font.patch
new file mode 100644
index 0000000..4e58e44
--- /dev/null
+++ b/dgclock/patches/001-use-dejavu-font.patch
@@ -0,0 +1,17 @@
+diff -ruN dgclock/src/main.c dgclock.mod/src/main.c
+--- dgclock/src/main.c 2009-12-21 16:00:00.000000000 +0100
++++ dgclock.mod/src/main.c 2010-02-10 11:30:11.000000000 +0100
+@@ -60,11 +60,11 @@
+
+ SDL_ShowCursor(SDL_DISABLE);
+
+- gTTFFont = TTF_OpenFont ( "mplus-2p-medium.ttf" , 15 );
++ gTTFFont = TTF_OpenFont ( "/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf" , 15 );
+ if (!gTTFFont)
+ return -1;
+
+- gTTFSmall = TTF_OpenFont ( "mplus-2p-medium.ttf" , 10 );
++ gTTFSmall = TTF_OpenFont ( "/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf" , 10 );
+ if (!gTTFSmall)
+ return -1;
+
diff --git a/dgclock/patches/002-fix-bpp-on-nn.patch b/dgclock/patches/002-fix-bpp-on-nn.patch
new file mode 100644
index 0000000..5c3ff70
--- /dev/null
+++ b/dgclock/patches/002-fix-bpp-on-nn.patch
@@ -0,0 +1,47 @@
+diff -ruN dgclock-091222/src/main.c dgclock-091222.mod/src/main.c
+--- dgclock-091222/src/main.c 2010-02-10 11:51:51.000000000 +0100
++++ dgclock-091222.mod/src/main.c 2010-02-10 15:27:40.000000000 +0100
+@@ -7,7 +7,7 @@
+ #include "text.h"
+ #include "settime.h"
+
+-SDL_Surface *gSurfaceMain = NULL;
++SDL_Surface *gSurfaceMain, *gRealScreen = NULL;
+ TTF_Font *gTTFFont = NULL;
+ TTF_Font *gTTFSmall = NULL;
+
+@@ -46,8 +46,9 @@
+ return -1;
+ }
+
+- gSurfaceMain = SDL_SetVideoMode(320,240,16,0);
+-
++ gSurfaceMain = SDL_CreateRGBSurface(SDL_SWSURFACE, 320, 240, 16, 0, 0, 0, 0);
++ gRealScreen = SDL_SetVideoMode(320,240,32,0);
++
+ if (!gSurfaceMain)
+ return -1;
+
+@@ -560,7 +561,8 @@
+ SDL_Surface *pSurfaceText = NULL;
+
+
+- SDL_Flip(gSurfaceMain);
++ SDL_BlitSurface(gSurfaceMain,NULL,gRealScreen,NULL);
++ SDL_Flip(gRealScreen);
+
+ i = 0;
+ quit_flag = 0;
+@@ -612,8 +614,10 @@
+ app_make_time(&lctm);
+ }
+
+- SDL_Flip(gSurfaceMain);
+- SDL_Flip(gSurfaceMain); // seems double buffer
++ SDL_BlitSurface(gSurfaceMain,NULL,gRealScreen,NULL);
++ SDL_Flip(gRealScreen);
++ SDL_Flip(gRealScreen);
++
+ update_flag = 0;
+ }
+