summaryrefslogtreecommitdiff
blob: 3383c9f5baede569e0dbf010ee2b349849a863aa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
--- bubblemon.c
+++ bubblemon.c
@@ -58,6 +58,7 @@
 #include <gdk/gdk.h>
 #include <gdk/gdkx.h>
 #include <X11/Xresource.h>
+#include <gtk/gtk.h>
 
 #include "include/master.xpm"
 #include "include/bubblemon.h"
@@ -575,7 +576,7 @@
     attri.colormap = gdk_colormap_get_system();
     attri.wmclass_name = "bubblemon";
     attri.wmclass_class = "bubblemon";
-    attri.window_type = GDK_WINDOW_TOPLEVEL;
+    attri.window_type = GDK_WINDOW_CHILD;
 
     bm.iconwin = gdk_window_new(bm.win, &attri,
 				GDK_WA_TITLE | GDK_WA_WMCLASS);
@@ -593,7 +594,6 @@
     wmhints.window_group = win;
     wmhints.flags =
 	StateHint | IconWindowHint | IconPositionHint | WindowGroupHint;
-    XSetWMHints(GDK_WINDOW_XDISPLAY(bm.win), win, &wmhints);
 
     bm.gc = gdk_gc_new(bm.win);
 
@@ -606,6 +606,7 @@
     gdk_window_set_back_pixmap(bm.iconwin, bm.pixmap, False);
 
     gdk_window_show(bm.win);
+    XSetWMHints(GDK_WINDOW_XDISPLAY(bm.win), win, &wmhints);
 #ifdef KDE_DOCKAPP
     /* makes the dockapp visible inside KDE wm */
     gdk_window_show(bm.iconwin);
--- Makefile
+++ Makefile
@@ -11,30 +11,49 @@
 
 # no user serviceable parts below
 EXTRA += $(WMAN)
+# gtk cflags and gtk lib flags
+GTK2_CFLAGS = $(shell pkg-config gtk+-2.0 --cflags)
+GTK2_LIBS = $(shell pkg-config gtk+-2.0 --libs)
+
+
 # optimization cflags
-CFLAGS = -O3 -ansi -Wall `gtk-config --cflags` ${EXTRA}
+#CFLAGS = -O3 -Wall ${EXTRA}
+CFLAGS = ${GENTOO_CFLAGS} ${EXTRA}
+
 # profiling cflags
-# CFLAGS = -ansi -Wall -pg -O3 `gtk-config --cflags` ${EXTRA} -DPRO
+# CFLAGS = -ansi -Wall -pg -O3 ${EXTRA} -DPRO
 # test coverage cflags
-# CFLAGS = -fprofile-arcs -ftest-coverage -Wall -ansi -g `gtk-config --cflags` ${EXTRA} -DPRO
+# CFLAGS = -fprofile-arcs -ftest-coverage -Wall -ansi -g ${EXTRA} -DPRO
 
 
-SHELL=sh
+SHELL = sh
 OS = $(shell uname -s)
+SRCS = bubblemon.c
 OBJS = bubblemon.o
+BUBBLEMON = bubblemon
+
+LDFLAGS = -shared -Wl
+
+STRIP = strip
+
 CC = gcc
+INSTALLMAN = -m 644
+
+
 
 # special things for Linux
 ifeq ($(OS), Linux)
-    OBJS += sys_linux.o
-    LIBS = `gtk-config --libs | sed "s/-lgtk//g"`
-    INSTALL = -m 755
+	SRCS += sys_linux.c
+	OBJS += sys_linux.o
+	INSTALL = -m 755
+	INSTALLMAN = -m 644
 endif
 
 # special things for FreeBSD
 ifeq ($(OS), FreeBSD)
+	SRCS += sys_freebsd.c
     OBJS += sys_freebsd.o
-    LIBS = `gtk-config --libs | sed "s/-lgtk//g"` -lkvm
+    LIBS = -lkvm
     INSTALL = -c -g kmem -m 2755 -o root
 endif
 
@@ -62,17 +81,21 @@
     ifeq ($(COMPILER), gcc)
 	CFLAGS=-O3 -Wall
     endif
-    CFLAGS +=`gtk-config --cflags` ${EXTRA}
+    CFLAGS += ${EXTRA}
+	SRCS += sys_sunos.c
     OBJS += sys_sunos.o
-    LIBS = `gtk-config --libs` -lkstat -lm
+    LIBS = -lkstat -lm
     INSTALL = -m 755
 endif
 
+all: $(BUBBLEMON)
 
-all: bubblemon
+bubblemon: clean_obj
+	$(CC) $(GTK2_CFLAGS) $(CFLAGS) -o $(BUBBLEMON) \
+		$(LIBS) $(GTK2_LIBS) $(SRCS)
 
-bubblemon: $(OBJS)
-	$(CC) $(CFLAGS) -o bubblemon $(OBJS) $(LIBS)
+clean_obj:
+	rm -rf *.o
 
 clean:
 	rm -f bubblemon *.o *.bb* *.gcov gmon.* *.da *~