summaryrefslogtreecommitdiff
path: root/beos/Makefile.target
blob: 8cb837530e7d3f6f2850050b30f025999905a26d (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
# ----------------------------------------------------------------------------
# BeOS target setup
# ----------------------------------------------------------------------------


  $(eval $(call feature_enabled,PNG,-DWITH_PNG,-lpng,PNG (libpng)  ))

  LDFLAGS += -L/boot/home/config/lib
  # for Haiku
  LDFLAGS += -L/boot/common/lib
  # some people do *not* have libm...
  LDFLAGS += -lxml2 -lcurl -liconv
  LDFLAGS += -lssl -lcrypto -lhubbub -lcss -lparserutils -lwapcaplet

  CFLAGS += -I. -O $(WARNFLAGS) -Dnsbeos		\
		-D_BSD_SOURCE -D_POSIX_C_SOURCE		\
		-Drestrict="" -Wno-multichar 
  # DEBUG
  CFLAGS += -g -O0
  # -DDEBUG=1

  BEOS_BERES := beres
  BEOS_RC := rc
  BEOS_XRES := xres
  BEOS_SETVER := setversion
  BEOS_MIMESET := mimeset
  VERSION_FULL := $(shell sed -n '/"/{s/.*"\(.*\)".*/\1/;p;}' desktop/version.c)
  VERSION_MAJ := $(shell sed -n '/_major/{s/.* = \([0-9]*\).*/\1/;p;}' desktop/version.c)
  VERSION_MIN := $(shell sed -n '/_minor/{s/.* = \([0-9]*\).*/\1/;p;}' desktop/version.c)
  RSRC_BEOS = $(addprefix $(OBJROOT)/,$(subst /,_,$(patsubst %.rdef,%.rsrc,$(RDEF_BEOS))))
  RESOURCES = $(RSRC_BEOS)
  ifeq ($(HOST),beos)
    CFLAGS += -I/boot/home/config/include		\
		-I/boot/home/config/include/libxml2	\
		-I/boot/home/config/include/libmng	\
		-I/boot/home/config/include/hubbub	\
		-I/boot/home/config/include/libcss	\
		-I/boot/home/config/include/parserutils
    ifneq ($(wildcard /boot/develop/lib/*/libzeta.so),)
      LDFLAGS += -lzeta
    endif
    ifneq ($(wildcard /boot/develop/lib/*/libnetwork.so),)
      # Haiku
      CFLAGS += -I/boot/common/include		\
		-I/boot/common/include/libxml2	\
		-I/boot/common/include/libmng	\
		-I/boot/common/include/hubbub	\
		-I/boot/common/include/libcss	\
		-I/boot/common/include/parserutils
      NETLDFLAGS := -lnetwork
    else
      ifneq ($(wildcard /boot/develop/lib/*/libbind.so),)
        # BONE
        NETLDFLAGS := -lsocket -lbind
      else
        # net_server, will probably never work
        NETLDFLAGS := -lnet
      endif
    endif
  else
    # cross: Haiku ?
    NETLDFLAGS := -lnetwork
  endif
  LDFLAGS += -lbe -ltranslation $(NETLDFLAGS)

  $(eval $(call feature_enabled,NSSVG,-DWITH_NS_SVG,-lsvgtiny,SVG (libsvgtiny)))
  ifeq ($(HOST),beos)
    CFLAGS += -I$(PREFIX)/include
    LDFLAGS += -L$(PREFIX)/lib
    $(eval $(call feature_enabled,BMP,-DWITH_BMP,-lnsbmp,BMP (libnsbmp)))
    $(eval $(call feature_enabled,GIF,-DWITH_GIF,-lnsgif,GIF (libnsgif)))
    $(eval $(call feature_enabled,PNG,-DWITH_PNG,-lpng,PNG (libpng)  ))
  else
    NETSURF_FEATURE_BMP_CFLAGS := -DWITH_BMP
    NETSURF_FEATURE_GIF_CFLAGS := -DWITH_GIF
    NETSURF_FEATURE_PNG_CFLAGS := -DWITH_PNG
    $(eval $(call pkg_config_find_and_add,BMP,libnsbmp,BMP))
    $(eval $(call pkg_config_find_and_add,GIF,libnsgif,GIF))
    $(eval $(call pkg_config_find_and_add,PNG,libpng,PNG  ))
  endif

# ----------------------------------------------------------------------------
# Source file setup
# ----------------------------------------------------------------------------

# S_BEOS are sources purely for the BeOS build
S_BEOS := beos_about.cpp beos_bitmap.cpp beos_fetch_rsrc.cpp		\
	beos_filetype.cpp beos_font.cpp beos_gui.cpp beos_login.cpp	\
	beos_options.cpp beos_plotters.cpp beos_save_complete.cpp	\
	beos_scaffolding.cpp beos_search.cpp beos_schedule.cpp		\
	beos_thumbnail.cpp beos_treeview.cpp beos_throbber.cpp		\
	beos_window.cpp system_colour.cpp
S_BEOS := $(addprefix beos/,$(S_BEOS))
RDEF_BEOS := beos_res.rdef
RDEF_BEOS := $(addprefix beos/,$(RDEF_BEOS))
RDEP_BEOS := adblock.css beosdefault.css default.css ca-bundle.txt	\
	messages
RDEP_BEOS := $(addprefix beos/res/,$(RDEP_BEOS))			\
	$(wildcard beos/res/throbber/throbber*.png)


# complete source file list
SOURCES := $(S_COMMON) $(S_IMAGE) $(S_BROWSER) $(S_BEOS)
EXETARGET := NetSurf