r1946 - in trunk/user/pixil
dslinux_amadeus at dslinux.in-berlin.de
dslinux_amadeus at dslinux.in-berlin.de
Sat Sep 29 08:22:16 CEST 2007
Author: amadeus
Date: 2007-09-29 08:22:11 +0200 (Sat, 29 Sep 2007)
New Revision: 1946
Log:
Enable date applet
Modified: trunk/user/pixil/scripts/platforms/dslinux/defaults.xml.in
===================================================================
--- trunk/user/pixil/scripts/platforms/dslinux/defaults.xml.in 2007-09-28 20:54:15 UTC (rev 1945)
+++ trunk/user/pixil/scripts/platforms/dslinux/defaults.xml.in 2007-09-29 06:22:11 UTC (rev 1946)
@@ -194,7 +194,7 @@
<bgstyle>bottom</bgstyle>
<applets>
-<applet name="date">@prefix@/share/pixilwm/date.so</applet>
+<applet name="date">date</applet>
</applets>
<colors>
Modified: trunk/user/pixil/sys/pixilwm/Makefile
===================================================================
--- trunk/user/pixil/sys/pixilwm/Makefile 2007-09-28 20:54:15 UTC (rev 1945)
+++ trunk/user/pixil/sys/pixilwm/Makefile 2007-09-29 06:22:11 UTC (rev 1946)
@@ -9,9 +9,10 @@
TARGET=pixilwm
ifeq ($(EN_SHARED),--enable-shared)
-LIBTYPE=.so
+LIBTYPE :=.so
else
-LIBTYPE=.o
+LIBTYPE :=.o
+CFLAGS += -DSTATIC_LINK
endif
# These are extra targets that are defined locally
@@ -41,6 +42,12 @@
OBJS-$(CONFIG_PIXILWM_THEMES) += themes.o themesconfig.o
OBJS-$(CONFIG_PIXILWM_MENUS) += sys_menu.o
+ifeq ($(LIBTYPE),.o)
+OBJS-y += applets/date$(LIBTYPE)
+# xAMADEUS OBJS-$(CONFIG_PIXILWM_PM) += applets/backlight$(LIBTYPE)
+# xAMADEUS OBJS-$(CONFIG_PIXILWM_PM) += applets/battery$(LIBTYPE)
+endif
+
OBJS := $(OBJS-y)
LIBS+= -lwm -lpixil -lnano-X
Modified: trunk/user/pixil/sys/pixilwm/applets/date.c
===================================================================
--- trunk/user/pixil/sys/pixilwm/applets/date.c 2007-09-28 20:54:15 UTC (rev 1945)
+++ trunk/user/pixil/sys/pixilwm/applets/date.c 2007-09-29 06:22:11 UTC (rev 1946)
@@ -7,6 +7,11 @@
#include "nanowm.h"
#include "applets.h"
+#ifdef STATIC_LINK
+#define applet_init date_applet_init
+#define applet_close date_applet_close
+#endif
+
static GR_WINDOW_ID wid;
static GR_FONT_ID fontid;
Modified: trunk/user/pixil/sys/pixilwm/applets.c
===================================================================
--- trunk/user/pixil/sys/pixilwm/applets.c 2007-09-28 20:54:15 UTC (rev 1945)
+++ trunk/user/pixil/sys/pixilwm/applets.c 2007-09-29 06:22:11 UTC (rev 1946)
@@ -46,11 +46,10 @@
#include "config.h"
#include "applets.h"
-#if 1 // xAMADEUS
-#define dlopen(x,y) 0
-#define dlsym(x,y) 0
-#define dlclose(x) 0
-#define dlerror() 0
+#ifdef STATIC_LINK
+extern int date_applet_init(int id, int *x, int y, int h);
+extern int date_applet_close(void);
+#define dlclose(x) 0
#endif
static int g_applet_id = 0;
@@ -249,25 +248,37 @@
applet = (applet_t *) calloc(1, sizeof(applet_t));
if (!applet) return -1;
+#ifndef STATIC_LINK
applet->handle = dlopen(filename, RTLD_LAZY | RTLD_GLOBAL);
if (!applet->handle) {
printf("Unable to load applet [%s] [%s]\n", filename, dlerror());
goto load_error;
}
+#endif
/* Get the hooks for the applet */
+#ifdef STATIC_LINK
+ /* This is an ugly hack */
+ if (strcmp(filename, "date") == 0) {
+ applet->init = date_applet_init;
+ applet->close = date_applet_close;
+ }
+#else
applet->init = (int (*)(int, int *, int, int))
dlsym(applet->handle, "applet_init");
applet->close = (int (*)(void))
dlsym(applet->handle, "applet_close");
+#endif
/* Set the applet id */
applet->applet_id = g_applet_id++;
/* Initalize the applet */
+ if (!applet->init)
+ goto load_error;
if (applet->init(applet->applet_id, &applet_x, applet_y, applet_h))
goto load_error;
More information about the dslinux-commit
mailing list