1
0
mirror of https://github.com/Interlisp/maiko.git synced 2026-01-11 23:43:19 +00:00

Detect byte order from preprocessor definition (#330)

Rather than having to specify or omit -DBYTESWAP in the Makefile
fragment for each system we can detect whether the system requires
byte swapping  based on the __BYTE_ORDER__ C preprocessor definition.

Update CMakeLists.txt to account for this as well.
This commit is contained in:
Nick Briggs 2021-01-31 16:56:35 -08:00 committed by GitHub
parent 70db63449c
commit 261069f131
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
20 changed files with 30 additions and 31 deletions

View File

@ -65,19 +65,6 @@ IF(MAIKO_DISPLAY_X11)
)
ENDIF()
IF(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64" OR
CMAKE_SYSTEM_PROCESSOR STREQUAL "amd64" OR
CMAKE_SYSTEM_PROCESSOR STREQUAL "AMD64" OR
CMAKE_SYSTEM_PROCESSOR STREQUAL "x86" OR
CMAKE_SYSTEM_PROCESSOR STREQUAL "i386" OR
CMAKE_SYSTEM_PROCESSOR STREQUAL "i686" OR
CMAKE_SYSTEM_PROCESSOR MATCHES "arm.*" OR
CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64")
LIST(APPEND MAIKO_DEFINITIONS
"-DBYTESWAP"
)
ENDIF()
IF(CMAKE_SYSTEM_NAME STREQUAL "SunOS")
LIST(APPEND MAIKO_DEFINITIONS
"-DOS5"

View File

@ -5,7 +5,7 @@ OEXT = .o
#For debugging
OPTFLAGS = -g
FPFLAGS =
DFLAGS = -DKBINT -DFLTINT -DNOASM -DOS4 -DI386 -DBYTESWAP -DCHECK -DLOGINT -DSUNDISPLAY
DFLAGS = -DKBINT -DFLTINT -DNOASM -DOS4 -DI386 -DCHECK -DLOGINT -DSUNDISPLAY
LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm
INLINE = $(SRCDIR)disp386i.il

View File

@ -6,7 +6,7 @@ OEXT = .o
OPTFLAGS = -O
DISPOPTFLAGS = -O
FPFLAGS =
DFLAGS = -DKBINT -DOS4 -DI386 -DBYTESWAP -DCHECK -DLOGINT -DDISPLAYBUFFER -DSUNDISPLAY -DNEWBITBLT -DOPDISP
DFLAGS = -DKBINT -DOS4 -DI386 -DCHECK -DLOGINT -DDISPLAYBUFFER -DSUNDISPLAY -DNEWBITBLT -DOPDISP
LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm
INLINE = $(SRCDIR)disp386i.il
BITBLTFILE=$(OBJECTDIR)bitblt386i.o

View File

@ -5,7 +5,7 @@ OEXT = .o
#For debugging
OPTFLAGS = -g
FPFLAGS =
DFLAGS = -DKBINT -DFLTINT -DNOASM -DOS4 -DI386 -DBYTESWAP -DCHECK -DLOGINT -DSUNDISPLAY
DFLAGS = -DKBINT -DFLTINT -DNOASM -DOS4 -DI386 -DCHECK -DLOGINT -DSUNDISPLAY
LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm
INLINE = $(SRCDIR)disp386i.il

View File

@ -6,7 +6,7 @@ OEXT = .o
OPTFLAGS = -O -traditional
DISPOPTFLAGS = -O -traditional
FPFLAGS =
DFLAGS = -DKBINT -DOS4 -DI386 -DBYTESWAP -DCHECK -DLOGINT -DDISPLAYBUFFER -DSUNDISPLAY -DNEWBITBLT -DOPDISP
DFLAGS = -DKBINT -DOS4 -DI386 -DCHECK -DLOGINT -DDISPLAYBUFFER -DSUNDISPLAY -DNEWBITBLT -DOPDISP
LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm
INLINE = $(SRCDIR)disp386i.il
BITBLTFILE=$(OBJECTDIR)bitblt386i.o

View File

@ -20,7 +20,7 @@ XFLAGS = -DXWINDOW
OEXT = .o
# OPTFLAGS is normally -O2.
OPTFLAGS = -O2 -g3
DFLAGS = -DBYTESWAP -DLOGINT $(XFLAGS) -DRELEASE=351
DFLAGS = -DLOGINT $(XFLAGS) -DRELEASE=351
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm

View File

@ -20,7 +20,7 @@ XFLAGS = -I/opt/X11/include -DXWINDOW
OPTFLAGS = -O2 -g
DEBUGFLAGS = # -DDEBUG -DOPTRACE
DFLAGS = $(DEBUGFLAGS) \
-DBYTESWAP -DLOGINT $(XFLAGS) \
-DLOGINT $(XFLAGS) \
-DRELEASE=351 -DSTACKCHECK -DFSBCHECK -DPCTRACE
LDFLAGS = -L/opt/X11/lib -lX11 -lm

View File

@ -20,7 +20,7 @@ XFLAGS = -I/opt/local/include -DXWINDOW
OPTFLAGS = -O1 -g
DEBUGFLAGS = # -DDEBUG -DOPTRACE
DFLAGS = $(DEBUGFLAGS) \
-DBYTESWAP -DLOGINT $(XFLAGS) \
-DLOGINT $(XFLAGS) \
-DRELEASE=351
LDFLAGS = -L/opt/local/lib -lX11 -lm

View File

@ -20,7 +20,7 @@ XFLAGS = -I/opt/X11/include -DXWINDOW
OPTFLAGS = -O1 -g
DEBUGFLAGS = # -DDEBUG -DOPTRACE
DFLAGS = $(DEBUGFLAGS) \
-DBYTESWAP -DLOGINT $(XFLAGS) \
-DLOGINT $(XFLAGS) \
-DRELEASE=351
LDFLAGS = -L/opt/X11/lib -lX11 -lm

View File

@ -6,7 +6,7 @@ ADMINFILES = makefile mkvdate.c
LPFILES = lpmain.obj lpread.obj lpsolve.obj lpwrite.obj lpdual.obj lptran.obj
CFLAGS = -DDOS -DBYTESWAP -DKBINT -DNOPIXRECT \
CFLAGS = -DDOS -DKBINT -DNOPIXRECT \
-DNOVERSION -DLPSOLVE -g
LDFLAGS = -g graphics.lib binmode.lib mouse.lib

View File

@ -19,7 +19,7 @@ XFLAGS = -I/usr/local/include -DXWINDOW
OEXT = .o
# OPTFLAGS is normally -O2.
OPTFLAGS = -O1 -gdwarf-2
DFLAGS = -DBYTESWAP -DLOGINT $(XFLAGS) \
DFLAGS = -DLOGINT $(XFLAGS) \
-DRELEASE=351
LDFLAGS = -L/usr/local/lib -lX11 -lc -lm

View File

@ -18,7 +18,7 @@ XFLAGS = -I/opt/X11/include -DXWINDOW
# OPTFLAGS is normally -O2, for INIT we want unoptimized in case we need to debug it
OPTFLAGS = -O0 -g
DFLAGS = -DBYTESWAP -DLOGINT $(XFLAGS) \
DFLAGS = -DLOGINT $(XFLAGS) \
-DRELEASE=351 -DNOVERSION -DINIT -DTRACE -DOPTRACE
LDFLAGS = -L/usr/X11/lib -lX11 -lm

View File

@ -19,7 +19,7 @@ XFLAGS = -DXWINDOW
OEXT = .o
# OPTFLAGS is normally -O2.
OPTFLAGS = -O2 -g3
DFLAGS = -DBYTESWAP -DLOGINT $(XFLAGS) -DRELEASE=351
DFLAGS = -DLOGINT $(XFLAGS) -DRELEASE=351
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm

View File

@ -19,7 +19,7 @@ XFLAGS = -DXWINDOW
OEXT = .o
# OPTFLAGS is normally -O2.
OPTFLAGS = -O2 -g3
DFLAGS = -DBYTESWAP -DLOGINT $(XFLAGS) -DRELEASE=351
DFLAGS = -DLOGINT $(XFLAGS) -DRELEASE=351
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm

View File

@ -20,7 +20,7 @@ XFLAGS = -DXWINDOW
OEXT = .o
# OPTFLAGS is normally -O2.
OPTFLAGS = -O2 -g3
DFLAGS = -DBYTESWAP -DLOGINT $(XFLAGS) -DRELEASE=351
DFLAGS = -DLOGINT $(XFLAGS) -DRELEASE=351
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm

View File

@ -19,7 +19,7 @@ XFLAGS = -I/usr/X11R6/include -DXWINDOW
OEXT = .o
# OPTFLAGS is normally -O2.
OPTFLAGS = -O2 -g3
DFLAGS = -DBYTESWAP -DLOGINT $(XFLAGS) -DRELEASE=351
DFLAGS = -DLOGINT $(XFLAGS) -DRELEASE=351
LDFLAGS = -L/usr/X11R6/lib -lX11 -lc -lm
LDELDFLAGS = -L/usr/X11R6/lib -lX11 -lc -lm

View File

@ -37,7 +37,7 @@ DEBUGFLAGS = # -DSTACKCHECK -DFNSTKCHECK
DFLAGS = $(XFLAGS) \
$(DEBUGFLAGS) \
-DOS5 -DBYTESWAP -DLOGINT \
-DOS5 -DLOGINT \
-DLOCK_X_UPDATES \
-DRELEASE=351

View File

@ -38,7 +38,7 @@ DEBUGFLAGS = # -DSTACKCHECK -DFNSTKCHECK
DFLAGS = $(XFLAGS) \
$(DEBUGFLAGS) \
-DOS5 -DUSE_DLPI \
-DBYTESWAP -DLOGINT \
-DLOGINT \
-DLOCK_X_UPDATES \
-I$(OPENWINHOME)/include \
-DRELEASE=210

View File

@ -37,7 +37,7 @@ DEBUGFLAGS = # -DSTACKCHECK -DFNSTKCHECK
DFLAGS = $(XFLAGS) \
$(DEBUGFLAGS) \
-DOS5 -DBYTESWAP -DLOGINT \
-DOS5 -DLOGINT \
-DLOCK_X_UPDATES \
-DUSE_DLPI \
-DRELEASE=351

View File

@ -137,6 +137,18 @@
# define MAIKO_ARCH_DETECTED 1
#endif
#if defined(__BYTE_ORDER__)
# if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
# define BYTESWAP 1
# elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
# undef BYTESWAP
# else
# error "Unknown byte order"
# endif
#else
# error "Could not detect byte order"
#endif
#ifndef MAIKO_OS_DETECTED
# error "Could not detect OS."
#endif