mirror of
https://github.com/ctm/executor.git
synced 2024-11-27 01:49:33 +00:00
GNU Build system appears to work for hardcoded SDL front end and SDL sound.
This commit is contained in:
parent
058ad8d226
commit
edb51b569f
@ -2,7 +2,7 @@
|
||||
|
||||
bin_PROGRAMS = executor
|
||||
|
||||
noinst_PROGRAMS = map_to_c mkseedtables mkultable mksspairtable
|
||||
noinst_PROGRAMS = map_to_c mkseedtables mkultable mksspairtable opfind
|
||||
|
||||
ctl_bitmap_c_files = arrow_up_active.c arrow_up_inactive.c \
|
||||
arrow_down_active.c arrow_down_inactive.c \
|
||||
@ -33,6 +33,10 @@ mkultable_SOURCES = mkultable.c
|
||||
|
||||
mksspairtable_SOURCES = mksspairtable.c
|
||||
|
||||
opfind_SOURCES = config/arch/i386/opfind.c
|
||||
|
||||
opfind_CPPFLAGS = -DCOMPILE_FOR_BUILD $(AM_CPPFLAGS)
|
||||
|
||||
seedtables.c: mkseedtables
|
||||
./mkseedtables > $@
|
||||
|
||||
@ -85,7 +89,7 @@ qd_sources = qBit.c qCConv.c qCGrafPort.c qCRegular.c qColor.c qColorMgr.c \
|
||||
qColorutil.c qCursor.c qGrafport.c qIMIV.c qIMV.c qIMVxfer.c \
|
||||
qMisc.c qPaletteMgr.c qPen.c qPicstuff.c qPicture.c \
|
||||
qPixMapConv.c qPoint.c qPoly.c qRect.c qRegion.c qRegular.c \
|
||||
qScale.c qStandard.c qStdArc.c qStdBits.c qStdLine.cq qStdOval.c \
|
||||
qScale.c qStandard.c qStdArc.c qStdBits.c qStdLine.c qStdOval.c \
|
||||
qStdPic.c qStdPoly.c qStdRRect.c qStdRect.c qStdRgn.c \
|
||||
qStdText.c qText.c qGWorld.c qGDevice.c qIMVI.c qHooks.c \
|
||||
xdata.c xdblt.c rawpatblt.c rawsrcblt.c dirtyrect.c srcblt.c \
|
||||
@ -121,14 +125,70 @@ misc_sources = desk.c device.c disk.c diskinit.c dump.c trapname.c font.c \
|
||||
splash.c icon.c redrawscreen.c ini.c checkpoint.c qt.c cleanup.c \
|
||||
paramline.c fauxdbm.c custom.c commtool.c cfm.c local_charset.c pef_hash.c \
|
||||
interfacelib.c mixed_mode.c suffix_maps.c appearance.c lockrange.c \
|
||||
emutrap.c emutraptables.c emustubs.c
|
||||
emutrap.c emutraptables.c emustubs.c unix_like.c parse.y check_structs.c \
|
||||
executor.c mkvol/mkvol.c crc.c
|
||||
|
||||
executor_SOURCES = $(ctl_sources) $(dial_sources) $(file_sources) \
|
||||
$(hfs_sources) $(list_sources) $(menu_sources) \
|
||||
$(print_sources) $(qd_sources) $(res_sources) \
|
||||
$(te_sources) $(wind_sources) $(ae_sources) \
|
||||
$(sound_sources) $(num_sources) $(misc_sources)
|
||||
front_end_sdl_sources = config/front-ends/sdl/SDL_bmp.c \
|
||||
config/front-ends/sdl/sdlevents.c \
|
||||
config/front-ends/sdl/sdl_mem.c \
|
||||
config/front-ends/sdl/sdlquit.c \
|
||||
config/front-ends/sdl/sdlscrap.c \
|
||||
config/front-ends/sdl/sdlwin.c \
|
||||
config/front-ends/sdl/sdlwm.c \
|
||||
config/front-ends/sdl/sdlX.c \
|
||||
config/front-ends/sdl/syswm_map.c \
|
||||
config/front-ends/sdl/winmain.c
|
||||
|
||||
sound_sdl_sources = config/sound/sdl/sdl-sound.c
|
||||
|
||||
os_linux_sources = config/os/linux/linux.c \
|
||||
config/os/linux/linux_except.c \
|
||||
config/os/linux/lowglobals-mem.c
|
||||
|
||||
arch_i386_sources = config/arch/i386/x86patblt.S \
|
||||
config/arch/i386/x86srcblt.S \
|
||||
config/arch/i386/xdstubtables.c \
|
||||
config/arch/i386/sbstubtables.c \
|
||||
config/arch/i386/i386.c
|
||||
|
||||
x86patblt.$(OBJEXT): pat-blitters.s
|
||||
|
||||
x86srcblt.$(OBJEXT): src-blitters.s
|
||||
|
||||
pat-blitters-stamp pat-blitters.h pat-blitters.s: \
|
||||
config/arch/i386/opfind.c config/arch/i386/opfind.h \
|
||||
config/arch/i386/metaasm.pl config/arch/i386/pat-blitters.meta
|
||||
$(srcdir)/config/arch/i386/metaasm.pl $(METAASM_ARGS)\
|
||||
$(srcdir)/config/arch/i386/pat-blitters.meta\
|
||||
pat-blitters.s pat-blitters.h\
|
||||
config/arch/i386/opfind.c
|
||||
$(RM) opfind asmsamples.h
|
||||
touch pat-blitters-stamp
|
||||
|
||||
# We have src-blitters-stamp depend on pat-blitters-stamp so we don't
|
||||
# try to do two metaasm's at once. They would fight over `opfind'.
|
||||
src-blitters-stamp src-blitters.h src-blitters.s: \
|
||||
config/arch/i386/opfind.c config/arch/i386/opfind.h \
|
||||
config/arch/i386/metaasm.pl \
|
||||
config/arch/i386/src-blitters.meta \
|
||||
config/arch/i386/src-shift.meta \
|
||||
config/arch/i386/src-noshift.meta \
|
||||
config/arch/i386/src-shift-fgbk.meta \
|
||||
config/arch/i386/src-noshift-fgbk.meta \
|
||||
pat-blitters-stamp config/arch/i386/src-blitters-core.meta
|
||||
$(srcdir)/config/arch/i386/metaasm.pl -define DST_SEG= $(METAASM_ARGS)\
|
||||
$(srcdir)/config/arch/i386/src-blitters.meta\
|
||||
src-blitters.s src-blitters.h\
|
||||
config/arch/i386/opfind.c
|
||||
$(RM) opfind
|
||||
touch src-blitters-stamp
|
||||
|
||||
executor_SOURCES = $(ctl_sources) $(dial_sources) $(file_sources) \
|
||||
$(hfs_sources) $(list_sources) $(menu_sources) \
|
||||
$(print_sources) $(qd_sources) $(res_sources) \
|
||||
$(te_sources) $(wind_sources) $(ae_sources) \
|
||||
$(sound_sources) $(num_sources) $(misc_sources) \
|
||||
$(front_end_sdl_sources) $(sound_sdl_sources) \
|
||||
$(os_linux_sources) $(arch_i386_sources)
|
||||
|
||||
AM_CPPFLAGS=-I$(srcdir)/include -I$(srcdir)/config/front-ends/$(front_end) -I$(srcdir)/config/os/$(host_os) -I$(srcdir)/config/arch/$(host_cpu)
|
||||
|
20
src/TODO
20
src/TODO
@ -1,7 +1,21 @@
|
||||
Make it so people can select the front-end and the sound, but that
|
||||
we default to SDL if it's available
|
||||
GNU build fixes
|
||||
|
||||
Make it so if we don't find libsyn68k, we die properly
|
||||
Make it so people can select the front-end and the
|
||||
sound, but that we default to SDL if it's available
|
||||
|
||||
Make it so if we don't find libsyn68k, we die properly
|
||||
(unless we're on a 68k)
|
||||
|
||||
See if there's a more elegant way to identify the build
|
||||
parameters than our current per-target override using
|
||||
-DCOMPILE_FOR_BUILD
|
||||
|
||||
See if there's a more elegant solution to the blitters
|
||||
code (can we nuke the config/arch/i386 prefixes in the
|
||||
dependencies? should we make it so both source and pattern
|
||||
blitters can be done in parallel?
|
||||
|
||||
test parallel builds
|
||||
|
||||
CToPascalCall -- look hard for arguments that sometimes take a pointer
|
||||
and sometimes take a long
|
||||
|
@ -162,8 +162,8 @@ os_init (void)
|
||||
void
|
||||
msdos_print_info (void)
|
||||
{
|
||||
printf ("This is %s, compiled %s.\n",
|
||||
ROMlib_executor_full_name, ROMlib_executor_build_time);
|
||||
printf ("This is %s.\n",
|
||||
ROMlib_executor_full_name);
|
||||
|
||||
/* Print out CPU type. */
|
||||
if (arch_type == ARCH_TYPE_I386)
|
||||
|
@ -12,6 +12,7 @@ AC_PROG_CC
|
||||
AM_PROG_CC_C_O
|
||||
AC_PROG_RANLIB
|
||||
AM_PROG_AS
|
||||
AC_PROG_YACC
|
||||
|
||||
AC_CHECK_PROG([PERL], [perl], [perl])
|
||||
AC_ARG_VAR([PERL], [perl for generating blitters])
|
||||
@ -22,23 +23,47 @@ AC_SYS_LARGEFILE
|
||||
|
||||
AC_CHECK_LIB(syn68k, initialize_68k_emulator)
|
||||
|
||||
# TODO: may not want to look for SDL if people have chosen an alternate
|
||||
# front-end.
|
||||
# Right now we blindly look for the libraries we need for the SDL Linux
|
||||
# port since that's the first one I'll get going with the this file.
|
||||
|
||||
AC_CHECK_LIB(sdl, SDL_Init)
|
||||
AC_CHECK_LIB(SDL, SDL_Init)
|
||||
AC_CHECK_LIB(db, __db_ndbm_open)
|
||||
AC_CHECK_LIB(X11, XInitThreads)
|
||||
AC_CHECK_LIB(m, pow)
|
||||
|
||||
AC_CONFIG_FILES([Makefile])
|
||||
|
||||
|
||||
# Normalize to our old names
|
||||
|
||||
case ${build_cpu} in
|
||||
i[[3456]]86)
|
||||
build_cpu=i386
|
||||
;;
|
||||
esac
|
||||
|
||||
case ${host_cpu} in
|
||||
i[[3456]]86)
|
||||
host_cpu=i386
|
||||
;;
|
||||
esac
|
||||
|
||||
case ${build_os} in
|
||||
darwin*)
|
||||
build_os=macosx
|
||||
;;
|
||||
linux*)
|
||||
build_os=linux
|
||||
;;
|
||||
esac
|
||||
|
||||
case ${host_os} in
|
||||
darwin*)
|
||||
host_os=macosx
|
||||
;;
|
||||
linux*)
|
||||
host_os=linux
|
||||
;;
|
||||
esac
|
||||
|
||||
# This is a temporary cheat that forces us to use SDL.
|
||||
|
@ -278,11 +278,11 @@ err_vprintf (const char *fmt, va_list ap)
|
||||
if (!beenhere_p)
|
||||
{
|
||||
fprintf (fp,
|
||||
"This is %s, compiled %s.\n"
|
||||
"This is %s.\n"
|
||||
"Using %u.%02u MB for applzone, "
|
||||
"%u.%02u MB for syszone, %u.%02u MB for stack\n"
|
||||
"Approximate command line: %s\n",
|
||||
ROMlib_executor_full_name, ROMlib_executor_build_time,
|
||||
ROMlib_executor_full_name,
|
||||
ROMlib_applzone_size / MB,
|
||||
(ROMlib_applzone_size % MB) * 100 / MB,
|
||||
ROMlib_syszone_size / MB,
|
||||
|
@ -23,7 +23,6 @@
|
||||
|
||||
extern const char ROMlib_executor_version[];
|
||||
extern char *ROMlib_executor_full_name;
|
||||
extern const char ROMlib_executor_build_time[];
|
||||
|
||||
#define PLATFORM_MOD 10 /* last decimal digit of serial number is platform */
|
||||
#define COMPOSITE_MOD 100 /* 2nd to last digit is price class */
|
||||
|
@ -1052,8 +1052,8 @@ parse_drive_opt (const char *opt_name, const char *opt_value)
|
||||
static void
|
||||
print_info (void)
|
||||
{
|
||||
printf ("This is %s, compiled %s.\n",
|
||||
ROMlib_executor_full_name, ROMlib_executor_build_time);
|
||||
printf ("This is %s, compiled.\n",
|
||||
ROMlib_executor_full_name);
|
||||
|
||||
#if defined (i386)
|
||||
/* Print out CPU type. */
|
||||
|
Loading…
Reference in New Issue
Block a user