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:
parent
70db63449c
commit
261069f131
@ -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"
|
||||
|
||||
@ -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
|
||||
|
||||
|
||||
@ -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
|
||||
|
||||
@ -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
|
||||
|
||||
|
||||
@ -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
|
||||
|
||||
@ -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
|
||||
|
||||
@ -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
|
||||
|
||||
@ -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
|
||||
|
||||
@ -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
|
||||
|
||||
@ -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
|
||||
|
||||
@ -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
|
||||
|
||||
@ -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
|
||||
|
||||
@ -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
|
||||
|
||||
@ -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
|
||||
|
||||
@ -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
|
||||
|
||||
@ -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
|
||||
|
||||
@ -37,7 +37,7 @@ DEBUGFLAGS = # -DSTACKCHECK -DFNSTKCHECK
|
||||
|
||||
DFLAGS = $(XFLAGS) \
|
||||
$(DEBUGFLAGS) \
|
||||
-DOS5 -DBYTESWAP -DLOGINT \
|
||||
-DOS5 -DLOGINT \
|
||||
-DLOCK_X_UPDATES \
|
||||
-DRELEASE=351
|
||||
|
||||
|
||||
@ -38,7 +38,7 @@ DEBUGFLAGS = # -DSTACKCHECK -DFNSTKCHECK
|
||||
DFLAGS = $(XFLAGS) \
|
||||
$(DEBUGFLAGS) \
|
||||
-DOS5 -DUSE_DLPI \
|
||||
-DBYTESWAP -DLOGINT \
|
||||
-DLOGINT \
|
||||
-DLOCK_X_UPDATES \
|
||||
-I$(OPENWINHOME)/include \
|
||||
-DRELEASE=210
|
||||
|
||||
@ -37,7 +37,7 @@ DEBUGFLAGS = # -DSTACKCHECK -DFNSTKCHECK
|
||||
|
||||
DFLAGS = $(XFLAGS) \
|
||||
$(DEBUGFLAGS) \
|
||||
-DOS5 -DBYTESWAP -DLOGINT \
|
||||
-DOS5 -DLOGINT \
|
||||
-DLOCK_X_UPDATES \
|
||||
-DUSE_DLPI \
|
||||
-DRELEASE=351
|
||||
|
||||
@ -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
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user