added some notes
[k8lst.git] / Jamrules
blobd0b4d6bbe390985988164f98b95aa29299903c4e
1 set-profile ;
2 set-default-target-locations ;
3 OPTIM += -Wall ;
6 iUPtEST = [ Glob "$(TOP)" : ".no_iup" ] ;
8 if $(iUPtEST) {
9   USE_IUP = ;
10 } else {
11   if ! $(USE_IUP) {
12     iUPtEST = [ Glob "$(TOP)/extincs" : "iup.h" ] ;
13     if $(iUPtEST) { USE_IUP = 1 ; }
14   } else {
15     if $(USE_IUP) = "0" { USE_IUP = ; }
16   }
20 if $(FLTK_TEST) {
21   LST_USE_FLTK = tan ;
24 if $(USE_IUP) {
25   LST_USE_IUP = tan ;
28 if ! $(LST_FAST_WRITING) {
29   DEFINES += LST_COMPACT_WRITE_WORD ;
33 if $(WINDOZE) {
34   Echo "MSG: windoze build" ;
35   DEFINES += LST_USE_SOCKET=1 ;
36 } else {
37   #LST_USE_SQLITE = tan ;
38   #DEFINES += LST_USE_SOCKET=1 ;
39   if $(LST_USE_FLTK) {
40     DEFINES += USE_FLTK ;
41     LINKFLAGS += -lfltk -lfltk_images -lfltk_forms ;
42     C++FLAGS += -pthread ;
43     CFLAGS += -pthread ;
44     LINKFLAGS += -pthread ;
45     C++LINKFLAGS += -pthread ;
46   } else if $(LST_USE_IUP) {
47     Echo "MSG: adding IUP GUI interface" ;
48     DEFINES += USE_IUP ;
49     #LINKFLAGS += -L$(TOP)/extlibs ;
50     HDRS += $(TOP)/extincs ;
51     #LINKFLAGS += -liup -liupcontrols -liupimglib ;
52     #LINKLIBS += $(TOP)/extlibs/libiup.a $(TOP)/extlibs/libiupcontrols.a $(TOP)/extlibs/libiupimglib.a ;
53     lib-config "pkg-config gtk+-2.0" ;
54   }
55   lib-config "pkg-config x11" ;
56   lib-config "pkg-config xft" ;
60 HDRS += $(TOP)/src ;
62 if $(LST_USE_SQLITE) {
63   DEFINES += LST_USE_SQLITE=1 ;
64   lib-config "pkg-config sqlite3" ;
65 } else {
66   DEFINES += LST_USE_SQLITE=0 ;
68 DEFINES += LST_USE_FFI=1 ;
70 if $(DEBUG) {
71   DEFINES += DEBUG ;
72   DEFINES += TRACE ;
73 } else {
74   LINKFLAGS += -s ;
77 #LINKLIBS += -lrt ;
80 #####################################################################
81 if $(WINDOZE) {
82   WINDOZE_THREADS = -mthreads ;
83   WINDOZE_THREADS = ;
84   WINE = "wine" ;
85   MGPATH = "wine c:\\\\mingw\\\\bin\\\\" ;
86   MGCC = "mingw32-gcc.exe" ;
87   MG++ = "mingw32-g++.exe -static-libgcc" ;
89   CC = $(MGPATH)$(MGCC) $(WINDOZE_THREADS) ;
90   LINK = $(MGPATH)$(MGCC) $(WINDOZE_THREADS) ;
91   AR = $(MGPATH)ar.exe -ru ;
92   RANLIB = $(MGPATH)ranlib.exe ;
93   C++ = $(MGPATH)$(MG++) $(WINDOZE_THREADS) ;
94   C++LINK = $(MGPATH)$(MG++) $(WINDOZE_THREADS) ;
96   rule UserObject {
97     switch $(>) {
98       case *.rc : ResourceCompiler $(<) : $(>) ;
99       #case *.o : DEPENDS $(<) : $(>) ;
100       case *.o : DummyRule $(<) : $(>) ;
101       case * : ECHO "unknown suffix on" $(>) ;
102     }
103   }
104   rule DummyRule {
105   }
106   rule ResourceCompiler {
107     DEPENDS $(<) : $(>) ;
108     Clean clean : $(<) ;
109   }
110   actions ResourceCompiler {
111     $(MGPATH)windres.exe -i $(>) -o $(<)
112   }
114   LINKLIBS += -lkernel32 -luser32 -ladvapi32 -lws2_32 ;
115   #if $(DO_MAP) {
116   #  LINKFLAGS += -Wl,-Map,zpx2.map ;
117   #}
118   #WINSUBSYS = "windows" ;
119   WINSUBSYS = "console" ;
120   #LINKFLAGS += -Wl,-subsystem,console ;
121   SUFEXE = .exe ;
122   if $(DO_MAP) {
123     LINKFLAGS += "-Wl,-Map,ivan.map,-subsystem,$(WINSUBSYS)" ;
124   } else {
125     LINKFLAGS += "-Wl,-subsystem,$(WINSUBSYS)" ;
126   }
128   #HDRS += wininc wininc/SDL ;
129   #LINKLIBS += -Lwinlib -lm -lSDL ;
130   #C++LINKLIBS += -Lwinlib -lm -lSDL ;
131 } else {
132   LINKFLAGS += -lm ;