1bin_PROGRAMS = hugo
2
3if NETPLAY
4
5bin_PROGRAMS += hugod
6
7hugod_SOURCES = hugod.c netplay.c
8
9endif
10
11hugo_SOURCES = pce.c hard_pce.c sprite.c h6280.c view_zp.c edit_ram.c debug.c format.c \
12  subs_eagle.c cd.c hcd.c lsmp3.c sound.c mix.c followop.c dis.c optable.c \
13  view_inf.c lang.c list_rom.c iniconfig.c trans_fx.c cheat.c gfx.c bp.c bios.c \
14  hugo.c pcecd.c utils.c
15
16if SDL_LINUX
17hugo_SOURCES += osd_linux_cd.c osd_linux_snd.c osd_keyboard.c osd_sdl_gfx.c osd_linux_sdl_machine.c
18endif
19
20if ZLIB
21hugo_SOURCES += unzip.c miniunz.c
22endif
23
24if GTK
25
26hugo_SOURCES += support.c interface.c callbacks.c gtk_main.c
27hugo_LDADD = @GTK_LIBS@
28
29if NETPLAY
30hugod_SOURCES += support.c interface-server.c callbacks-server.c gtk_main-server.c
31hugod_LDADD = @GTK_LIBS@
32
33endif NETPLAY
34
35endif GTK
36
37if NETPLAY
38hugo_SOURCES += netplay.c
39endif
40
41if SDL_MIXER_LINUX
42hugo_SOURCES += osd_linux_sdl_music.c
43endif
44
45if ZE_HCD_OGG_SUPPORT
46hugo_SOURCES += ogglength.c
47endif
48
49if ALLEGRO_LINUX
50hugo_SOURCES += osd_linux_cd.c osd_linux_snd.c osd_keyboard.c osd_linux_allegro_gfx.c osd_linux_allegro_machine.c
51endif
52
53if SDL_WIN32
54hugo_SOURCES += osd_win_cd.c osd_win_snd.c osd_keyboard.c osd_sdl_gfx.c osd_win_sdl_machine.c
55endif
56
57if ALLEGRO_WIN32
58hugo_SOURCES += osd_win_cd.c osd_win_snd.c osd_keyboard.c osd_win_allegro_gfx.c osd_win_allegro_machine.c
59endif
60
61if ALLEGRO_DJGPP
62hugo_SOURCES += osd_dos_cd.c osd_dos_snd.c osd_keyboard.c osd_dos_gfx.c osd_dos_machine.c
63endif
64
65if SDL_FREEBSD
66hugo_SOURCES += osd_freebsd_cd.c osd_linux_snd.c osd_keyboard.c osd_sdl_gfx.c osd_linux_sdl_machine.c
67endif
68
69if SDL_SOLARIS
70hugo_SOURCES += osd_solaris_cd.c osd_linux_snd.c osd_keyboard.c osd_sdl_gfx.c osd_unix_sdl_machine.c
71endif
72
73EXTRA_hugo_SOURCES = osd_dos_cd.c osd_dos_cd.h osd_dos_gfx.c osd_dos_gfx.h \
74  osd_dos_machine.c osd_dos_machine.h \
75	osd_linux_allegro_gfx.c osd_linux_allegro_gfx.h osd_linux_allegro_machine.c \
76	osd_linux_allegro_machine.h osd_linux_cd.c osd_linux_cd.h \
77	osd_linux_sdl_machine.c \
78	osd_linux_sdl_machine.h osd_linux_snd.c osd_linux_snd.h osd_win_allegro_gfx.c \
79	osd_win_allegro_gfx.h osd_win_allegro_machine.c osd_win_allegro_machine.h osd_win_cd.c \
80	osd_win_cd.h osd_keyboard.c osd_keyboard.h osd_sdl_gfx.c osd_sdl_gfx.h \
81	osd_win_sdl_machine.c osd_win_sdl_machine.h osd_win_snd.c osd_win_snd.h \
82	pce.h sys_cd.h sys_dep.h sys_gfx.h sys_inp.h sys_misc.h sys_snd.h cleantyp.h hard_pce.h \
83	cheat.h bios.h cd.h crc_ctl.h debug.h dis.h dis_cst.h dis_runtime.h edit_ram.h followop.h \
84	lang.h hcd.h h6280.h list_rom.h menu.h mix.h optable.h format.h view_zp.h globals.h \
85	defs.h interupt.h gui.h trans_fx.h sprite.h sound.h lsmp3.h libamp.h iso_ent.h bp.h \
86	view_inf.h iniconfig.h interf.h gfx.h shared_memory.h \
87	osd_freebsd_cd.c osd_freebsd_cd.h hugo.c hugo.h	support.c support.h callbacks.c callbacks.h \
88	interface.c interface.h gtk_main.c gtk_main.h akrip32.h myaspi32.h manual.h manual_convert.pl \
89	ogglength.c ogglength.h osd_linux_sdl_music.c osd_linux_sdl_music.h \
90	unzip.c unzip.h miniunz.c miniunz.h pcecd.c utils.c utils.h pcecd.h osd_solaris_cd.h \
91	osd_unix_sdl_machine.h osd_unix_sdl_machine.c osd_solaris_cd.c hugod.c hugod.h \
92	netplay.c netplay.h interface-server.h interface-server.c callbacks-server.h \
93	callbacks-server.c gtk_main-server.h gtk_main-server.c
94
95AM_CFLAGS = @GTK_CFLAGS@ @CFLAGS@ -D@HUGO_TARGET_MACHINE@ @HUGO_TARGET_LIBRARY@
96
97hugo_LDFLAGS = @HUGO_TARGET_LIBRARY_LD@
98hugod_LDFLAGS = -lSDL_net
99
100install-data-local:
101	@$(NORMAL_INSTALL)
102	if test -d $(srcdir)/pixmaps; then \
103	  $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)/pixmaps; \
104	  for pixmap in $(srcdir)/pixmaps/*; do \
105	    if test -f $$pixmap; then \
106	      $(INSTALL_DATA) $$pixmap $(DESTDIR)$(pkgdatadir)/pixmaps; \
107	    fi \
108	  done \
109	fi && \
110	if test -d $(srcdir)/doc; then \
111	  $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)/doc; \
112	  for doc in $(srcdir)/doc/*.{html,txt,css}; do \
113	    if test -f $$doc; then \
114	      $(INSTALL_DATA) $$doc $(DESTDIR)$(pkgdatadir)/doc; \
115	    fi \
116	  done \
117	fi
118
119uninstall-local:
120	@$(NORMAL_UNINSTALL)
121	rm -rf $(DESTDIR)$(pkgdatadir)/{pixmaps,doc};
122
123dist-hook: doc
124	if test -d pixmaps; then \
125	  mkdir $(distdir)/pixmaps; \
126	  for pixmap in pixmaps/*; do \
127	    if test -f $$pixmap; then \
128	      cp -p $$pixmap $(distdir)/pixmaps; \
129	    fi \
130	  done \
131	fi && \
132	if test -d extra_dev; then \
133	  mkdir $(distdir)/extra_dev; \
134	  for extra_dev in extra_dev/*; do \
135	    if test -f $$extra_dev; then \
136	      cp -p $$extra_dev $(distdir)/extra_dev; \
137	    fi \
138	  done \
139	fi
140
141manual.h : doc/quickstart.txt manual_convert.pl
142	  ./manual_convert.pl > manual.h
143
144gtk_main.o : gtk_main.c manual.h gtk_main.h
145
146# Installation targets
147
148WINE=wine
149LYX=lyx
150LATEX2HTML=latex2html
151TIDY=tidy
152UNIX2DOS=unix2dos
153SED=sed
154
155INNOSETUP_LOCATION=~/.wine/fake_windows/Program\ Files/Inno\ Setup\ 4/ISCC.exe
156LATEX2HTML_FLAGS= -split 0 -local_icons -no_navigation -info 0
157LYX_DOC=$(wildcard doc/*.lyx)
158HTML_DOC=$(patsubst %.lyx,%.html,$(LYX_DOC))
159TXT_DOC=$(patsubst %.lyx,%.txt,$(LYX_DOC))
160
161EXTRA_DIST = setup.iss doc/hugo_manual.css doc/index.html doc/README.old.txt $(HTML_DOC) $(TXT_DOC) $(LYX_DOC)
162
163.PHONY: doc html txt
164
165Output/setup.exe: setup.iss hugo.exe hugod.exe doc
166	$(UNIX2DOS) $<
167	$(WINE) $(INNOSETUP_LOCATION) $<
168
169doc: $(AVAILABLE_DOC_TARGETS)
170
171if HAVE_TOOLS_FOR_HTML_DOC
172html: $(HTML_DOC)
173%.html: %.tex
174	test -d /tmp/latex2html.tmp || mkdir /tmp/latex2html.tmp
175	$(LATEX2HTML) $(LATEX2HTML_FLAGS) -dir /tmp/latex2html.tmp `test -f '$<' || echo '$(srcdir)/'`$<
176	test -d $(@D) || mkdir $(@D)
177	$(SED) s/$(patsubst %.tex,%.css,$(<F))/hugo_manual.css/ $(patsubst %.tex,%.html,/tmp/latex2html.tmp/$(<F)) > $@
178	-$(TIDY) -im $@
179endif
180
181if HAVE_TOOLS_FOR_TXT_DOC
182txt: $(TXT_DOC)
183%.txt: %.lyx
184	test -d $(@D) || mkdir $(@D)
185	LANG=C $(LYX) -e text `test -f '$<' || echo '$(srcdir)/'`$<
186endif
187
188%.tex: %.lyx
189	test -d $(@D) || mkdir $(@D)
190	$(LYX) -e latex `test -f '$<' || echo '$(srcdir)/'`$<
191