Navigation Menu

Skip to content

Commit

Permalink
updated.
Browse files Browse the repository at this point in the history
  • Loading branch information
icculus committed Nov 18, 2000
1 parent 0112902 commit deb98b6
Show file tree
Hide file tree
Showing 2 changed files with 78 additions and 20 deletions.
17 changes: 10 additions & 7 deletions CHANGELOG
@@ -1,21 +1,24 @@
2000-11-18 Ryan C. Gordon <icculus@lokigames.com>

* Stubbed DOSism in file2.pas.
* Hacked the FreePascal runtime library to convert DOS paths to Unix on
the fly. Have not checked it, yet.
* upgraded to FreePascal 1.1 CVS. Stuff won't build anymore. Complex AND
and OR statements cause misgenerated ASM code. Attempting to backport
the RTL changes to 1.0.2 ...
* Updated Makefile to be more sane. Compiles just programs (not units),
doesn't smartlink on debug builds, etc...

2000-11-17 Ryan C. Gordon <icculus@lokigames.com>

* Initial work.

* Wrote Makefile.

* filenames -> lowercase, dos2unix'd them.

* Stubbed offending DOSisms, like direct video writes and serial port i/o.

* Commented out "uses overlay" commands.

* Renamed newcommm.pas to newcom.pas ...

* Fixed some other syntax stuff that doesn't fly under Free Pascal.

* Thing builds, has startup issues, since init.pas tries to use DOS paths.

// end of CHANGELOG ...

Expand Down
81 changes: 68 additions & 13 deletions Makefile
Expand Up @@ -24,8 +24,21 @@ PPC386=ppc386
#---------------------------------------------------------------------------
# don't touch anything below this line.

# This is the name of the produced binary. "bbs" should suffice.
# This are the names of the produced binaries.
MAINEXE=bbs
MINITERMEXE=miniterm
INITEXE=init
TPAGEEXE=tpage
IFLEXE=ifl
FINDITEXE=findit
T2TEXE=t2t
OBLITEXE=oblit
MTESTEXE=mtest
BBEXE=bb
CBBSEXE=cbbs
MABSEXE=mabs
COCONFIGEXE=coconfig
SPDATEEXE=spdate

ifeq ($(strip $(verbose)),true)
PPC386FLAGS += -vwnh
Expand All @@ -44,6 +57,8 @@ else
PPC386FLAGS += -Xs # strip the binary.
PPC386FLAGS += -O2 # Level 2 optimizations.
PPC386FLAGS += -OG # Optimize for speed, not size.
PPC386FLAGS += -XD # Dynamic linkage.
PPC386FLAGS += -CX # Smartlink the binary, removing unused code.

ifeq ($(strip $(cpu)),386)
PPC386FLAGS += -OP1
Expand All @@ -58,46 +73,86 @@ else
endif
endif

# Borland TP7.0 compatibility flag.
PPC386FLAGS += -B

# Borland TP7.0 compatibility flag.
PPC386FLAGS += -So

# Allow LABEL and GOTO. STRIVE TO REMOVE THIS COMMAND LINE PARAMETER!
PPC386FLAGS += -Sg

# Support C-style macros.
#PPC386FLAGS += -Sm

# Assembly statements are Intel-like (instead of AT&T-like).
PPC386FLAGS += -Rintel

# Dynamic linkage.
PPC386FLAGS += -XD

# Output target Linux. !!! FIXME: Want win32 compiles?
PPC386FLAGS += -TLINUX

# Smartlink the binary, removing unused code.
PPC386FLAGS += -CX

# Pipe output to assembler, rather than to temp file. This is a little faster.
PPC386FLAGS += -P
#PPC386FLAGS += -P

# Write bins to this directory...
PPC386FLAGS += -FE$(BUILDDIR)

#---------------------------------------------------------------------------
# Build rules...don't touch this, either.

include sources

OBJSx := $(SRCS:.pas=.o)
OBJS := $(foreach feh,$(OBJSx),$(BUILDDIR)/$(feh))
#include sources
#OBJSx := $(SRCS:.pas=.o)
#OBJS := $(foreach feh,$(OBJSx),$(BUILDDIR)/$(feh))

$(BUILDDIR)/%.o : %.pas
$(PPC386) $(PPC386FLAGS) $<

all: $(MAINEXE)
all: $(BUILDDIR) $(MAINEXE) $(MINITERMEXE) $(INITEXE) $(TPAGEEXE) $(IFLEXE) \
$(FINDITEXE) $(T2TEXE) $(OBLITEXE) $(MTESTEXE) $(BBEXE) $(CBBSEXE) \
$(MABSEXE) $(COCONFIGEXE) $(SPDATEEXE)

$(MAINEXE) : $(BUILDDIR) $(OBJS) bbs.pas
$(PPC386) $(PPC386FLAGS) bbs.pas

$(MINITERMEXE) : $(BUILDDIR) $(OBJS) miniterm.pas
$(PPC386) $(PPC386FLAGS) miniterm.pas

$(INITEXE) : $(BUILDDIR) $(OBJS) init.pas
$(PPC386) $(PPC386FLAGS) init.pas

$(TPAGEEXE) : $(BUILDDIR) $(OBJS) tpage.pas
$(PPC386) $(PPC386FLAGS) tpage.pas

$(IFLEXE) : $(BUILDDIR) $(OBJS) ifl.pas
$(PPC386) $(PPC386FLAGS) ifl.pas

$(FINDITEXE) : $(BUILDDIR) $(OBJS) findit.pas
$(PPC386) $(PPC386FLAGS) findit.pas

$(T2TEXE) : $(BUILDDIR) $(OBJS) t2t.pas
$(PPC386) $(PPC386FLAGS) t2t.pas

$(OBLITEXE) : $(BUILDDIR) $(OBJS) t2t.pas
$(PPC386) $(PPC386FLAGS) t2t.pas

$(MTESTEXE) : $(BUILDDIR) $(OBJS) mtest.pas
$(PPC386) $(PPC386FLAGS) mtest.pas

$(BBEXE) : $(BUILDDIR) $(OBJS) bb.pas
$(PPC386) $(PPC386FLAGS) bb.pas

$(CBBSEXE) : $(BUILDDIR) $(OBJS) cbbs.pas
$(PPC386) $(PPC386FLAGS) cbbs.pas

$(MABSEXE) : $(BUILDDIR) $(OBJS) mabs.pas
$(PPC386) $(PPC386FLAGS) mabs.pas

$(COCONFIGEXE) : $(BUILDDIR) $(OBJS) coconfig.pas
$(PPC386) $(PPC386FLAGS) coconfig.pas

$(SPDATEEXE) : $(BUILDDIR) $(OBJS) spdate.pas
$(PPC386) $(PPC386FLAGS) spdate.pas

$(BUILDDIR): $(cpu)
mkdir $(BUILDDIR)

Expand Down

0 comments on commit deb98b6

Please sign in to comment.