source: trunk/Maketype @ 5375

Last change on this file since 5375 was 5282, checked in by alno, 8 years ago

Adding LCD support. Read http://streamboard.gmc.to/wbb2/thread.php?postid=382572#post382572 for details

File size: 3.6 KB
Line 
1SHELL       = /bin/sh
2
3ifeq ($(wildcard oscam-boxkeys.np), oscam-boxkeys.np)
4  KFLAG     = -DCS_WITH_BOXKEYS
5endif
6
7WITH_SSL=$(subst ",,$(filter-out \#define, $(shell grep '^\#define WITH_SSL' oscam-config.h)))
8ifeq ($(WITH_SSL), WITH_SSL)
9    LIBSSL=-lssl
10endif
11
12CC      = $(DS_CC)
13AR      = $(DS_AR)
14STRIP       = $(DS_ST)
15RANLIB      = $(DS_RL)
16CFLAGS      = $(DS_OPTS) $(KFLAG) $(DS_CFLAGS)
17LDFLAGS     = $(DS_OPTS) $(DS_LDFLAGS)
18ARFLAGS     = $(DS_ARFLAGS)
19LIBS        = $(DS_LIBS) $(OS_LIBS) $(OS_PTLI) $(LIBSSL)
20export      CC AR STRIP RANLIB CFLAGS LDFLAGS ARFLAGS
21
22GENERAL     = Makefile Maketype globals.h oscam-config.h
23
24ifeq ($(wildcard csgbox), csgbox)
25 VERX   = -gbx-$(subst ",,$(filter-out \#define GBXVERSION,$(shell grep GBXVERSION csgbox/gbox.h)))
26endif
27
28EXEFILE1    = Distribution/oscam-$(VER)$(VERX)-$(subst cygwin,cygwin.exe,$(TYP))
29EXEFILE2    = Distribution/list_smargo-$(VER)$(VERX)-$(subst cygwin,cygwin.exe,$(TYP))
30
31LIBDIR      = lib
32LIBFILE1    = $(LIBDIR)/libcs-$(TYP).a
33LIBFILE2    = $(LIBDIR)/libcscrypt-$(TYP).a
34LIBFILE3    = $(LIBDIR)/libcsctapi-$(TYP).a
35LIBFILE4    = $(LIBDIR)/libminilzo-$(TYP).a
36
37OBJECTS1    = $(LIBFILE1)(oscam-simples.o) \
38          $(LIBFILE1)(oscam-config.o) \
39          $(LIBFILE1)(oscam-log.o) \
40          $(LIBFILE1)(oscam-reader.o) \
41          $(LIBFILE1)(oscam-garbage.o) \
42          $(LIBFILE1)(reader-common.o) \
43          $(LIBFILE1)(reader-irdeto.o) \
44          $(LIBFILE1)(reader-viaccess.o) \
45          $(LIBFILE1)(reader-videoguard1.o) \
46          $(LIBFILE1)(reader-videoguard12.o) \
47          $(LIBFILE1)(reader-videoguard2.o) \
48          $(LIBFILE1)(reader-videoguard-common.o) \
49          $(LIBFILE1)(reader-nds.o) \
50          $(LIBFILE1)(reader-seca.o) \
51          $(LIBFILE1)(reader-cryptoworks.o) \
52          $(LIBFILE1)(reader-conax.o) \
53          $(LIBFILE1)(reader-dre.o) \
54          $(LIBFILE1)(reader-nagra.o) \
55          $(LIBFILE1)(reader-tongfang.o) \
56          $(LIBFILE1)(module-camd33.o) \
57          $(LIBFILE1)(module-camd35.o) \
58          $(LIBFILE1)(module-radegast.o) \
59          $(LIBFILE1)(module-serial.o) \
60          $(LIBFILE1)(module-monitor.o) \
61          $(LIBFILE1)(module-newcamd.o) \
62          $(LIBFILE1)(module-cccam.o) \
63          $(LIBFILE1)(module-cccshare.o) \
64          $(LIBFILE1)(module-gbox.o) \
65          $(LIBFILE1)(module-constcw.o) \
66          $(LIBFILE1)(module-dvbapi.o) \
67          $(LIBFILE1)(module-stat.o) \
68          $(LIBFILE1)(module-datastruct-llist.o) \
69          $(LIBFILE1)(oscam-chk.o) \
70          $(LIBFILE1)(oscam-http.o) \
71          $(LIBFILE1)(oscam-http-helpers.o) \
72          $(LIBFILE1)(oscam-ac.o) \
73          $(LIBFILE1)(module-coolapi.o)\
74          $(LIBFILE1)(module-lcd.o)
75
76ifneq ($(LIBUSB),)
77all:        prepare $(EXEFILE1) $(EXEFILE2)
78else
79all:        prepare $(EXEFILE1)
80endif
81
82prepare:
83        @-echo "-----------------------------------------------------"
84        @-echo "Build for platform $(TYP)"
85        @-echo "-----------------------------------------------------"
86        @echo "$(TYP)" | awk -F- ' \
87          { \
88            printf("#define CS_OSTYPE \"%s\"\n", $$0);  \
89            printf("#define CS_OS_CPU \"%s\"\n", $$1);  \
90            printf("#define CS_OS_HW  \"%s\"\n", $$2);  \
91            printf("#define CS_OS_SYS \"%s\"\n", $$3);  \
92          }' > oscam-ostype.h
93        @[ -d "$(LIBDIR)" ] || mkdir "$(LIBDIR)"
94
95ifeq ($(wildcard csgbox), csgbox)
96        @-echo "#define CS_WITH_GBOX 1" >> oscam-ostype.h
97        $(MAKE) -C csgbox
98endif
99
100        $(MAKE) -C cscrypt
101        $(MAKE) -C csctapi
102        $(MAKE) -C algo
103
104$(EXEFILE1):    oscam.c $(LIBFILE1) $(LIBFILE2) $(LIBFILE3) $(LIBFILE4) $(GENERAL)
105        $(CC) $(LDFLAGS) oscam.c $(LIBFILE1) $(LIBFILE2) $(LIBFILE3) $(LIBFILE4) $(LIBUSB) $(LIBPCSC) $(LIBRT) -o "$@" $(LIBS)
106        $(STRIP) $@
107
108$(EXEFILE2):    utils/list_smargo.c
109        $(CC) $(LDFLAGS) utils/list_smargo.c $(LIBUSB) $(LIBRT) -o "$@" $(LIBS)
110        $(STRIP) $@
111
112$(LIBFILE1):    $(OBJECTS1)
113        -$(RANLIB) $@
114
115$(OBJECTS1):    $(GENERAL)
116
117.c.a:
118        $(CC) $(CFLAGS) -Icsctapi $<
119        $(AR) $(ARFLAGS) $@ $*.o
120        -@rm -f $*.o
121
122.SUFFIXES:  .o .c .a
Note: See TracBrowser for help on using the repository browser.