mirror of
https://github.com/Interlisp/maiko.git
synced 2026-04-28 21:18:15 +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:
@@ -65,19 +65,6 @@ IF(MAIKO_DISPLAY_X11)
|
|||||||
)
|
)
|
||||||
ENDIF()
|
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")
|
IF(CMAKE_SYSTEM_NAME STREQUAL "SunOS")
|
||||||
LIST(APPEND MAIKO_DEFINITIONS
|
LIST(APPEND MAIKO_DEFINITIONS
|
||||||
"-DOS5"
|
"-DOS5"
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ OEXT = .o
|
|||||||
#For debugging
|
#For debugging
|
||||||
OPTFLAGS = -g
|
OPTFLAGS = -g
|
||||||
FPFLAGS =
|
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
|
LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm
|
||||||
INLINE = $(SRCDIR)disp386i.il
|
INLINE = $(SRCDIR)disp386i.il
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ OEXT = .o
|
|||||||
OPTFLAGS = -O
|
OPTFLAGS = -O
|
||||||
DISPOPTFLAGS = -O
|
DISPOPTFLAGS = -O
|
||||||
FPFLAGS =
|
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
|
LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm
|
||||||
INLINE = $(SRCDIR)disp386i.il
|
INLINE = $(SRCDIR)disp386i.il
|
||||||
BITBLTFILE=$(OBJECTDIR)bitblt386i.o
|
BITBLTFILE=$(OBJECTDIR)bitblt386i.o
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ OEXT = .o
|
|||||||
#For debugging
|
#For debugging
|
||||||
OPTFLAGS = -g
|
OPTFLAGS = -g
|
||||||
FPFLAGS =
|
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
|
LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm
|
||||||
INLINE = $(SRCDIR)disp386i.il
|
INLINE = $(SRCDIR)disp386i.il
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ OEXT = .o
|
|||||||
OPTFLAGS = -O -traditional
|
OPTFLAGS = -O -traditional
|
||||||
DISPOPTFLAGS = -O -traditional
|
DISPOPTFLAGS = -O -traditional
|
||||||
FPFLAGS =
|
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
|
LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm
|
||||||
INLINE = $(SRCDIR)disp386i.il
|
INLINE = $(SRCDIR)disp386i.il
|
||||||
BITBLTFILE=$(OBJECTDIR)bitblt386i.o
|
BITBLTFILE=$(OBJECTDIR)bitblt386i.o
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ XFLAGS = -DXWINDOW
|
|||||||
OEXT = .o
|
OEXT = .o
|
||||||
# OPTFLAGS is normally -O2.
|
# OPTFLAGS is normally -O2.
|
||||||
OPTFLAGS = -O2 -g3
|
OPTFLAGS = -O2 -g3
|
||||||
DFLAGS = -DBYTESWAP -DLOGINT $(XFLAGS) -DRELEASE=351
|
DFLAGS = -DLOGINT $(XFLAGS) -DRELEASE=351
|
||||||
|
|
||||||
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
|
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
|
||||||
LDELDFLAGS = -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
|
OPTFLAGS = -O2 -g
|
||||||
DEBUGFLAGS = # -DDEBUG -DOPTRACE
|
DEBUGFLAGS = # -DDEBUG -DOPTRACE
|
||||||
DFLAGS = $(DEBUGFLAGS) \
|
DFLAGS = $(DEBUGFLAGS) \
|
||||||
-DBYTESWAP -DLOGINT $(XFLAGS) \
|
-DLOGINT $(XFLAGS) \
|
||||||
-DRELEASE=351 -DSTACKCHECK -DFSBCHECK -DPCTRACE
|
-DRELEASE=351 -DSTACKCHECK -DFSBCHECK -DPCTRACE
|
||||||
|
|
||||||
LDFLAGS = -L/opt/X11/lib -lX11 -lm
|
LDFLAGS = -L/opt/X11/lib -lX11 -lm
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ XFLAGS = -I/opt/local/include -DXWINDOW
|
|||||||
OPTFLAGS = -O1 -g
|
OPTFLAGS = -O1 -g
|
||||||
DEBUGFLAGS = # -DDEBUG -DOPTRACE
|
DEBUGFLAGS = # -DDEBUG -DOPTRACE
|
||||||
DFLAGS = $(DEBUGFLAGS) \
|
DFLAGS = $(DEBUGFLAGS) \
|
||||||
-DBYTESWAP -DLOGINT $(XFLAGS) \
|
-DLOGINT $(XFLAGS) \
|
||||||
-DRELEASE=351
|
-DRELEASE=351
|
||||||
|
|
||||||
LDFLAGS = -L/opt/local/lib -lX11 -lm
|
LDFLAGS = -L/opt/local/lib -lX11 -lm
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ XFLAGS = -I/opt/X11/include -DXWINDOW
|
|||||||
OPTFLAGS = -O1 -g
|
OPTFLAGS = -O1 -g
|
||||||
DEBUGFLAGS = # -DDEBUG -DOPTRACE
|
DEBUGFLAGS = # -DDEBUG -DOPTRACE
|
||||||
DFLAGS = $(DEBUGFLAGS) \
|
DFLAGS = $(DEBUGFLAGS) \
|
||||||
-DBYTESWAP -DLOGINT $(XFLAGS) \
|
-DLOGINT $(XFLAGS) \
|
||||||
-DRELEASE=351
|
-DRELEASE=351
|
||||||
|
|
||||||
LDFLAGS = -L/opt/X11/lib -lX11 -lm
|
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
|
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
|
-DNOVERSION -DLPSOLVE -g
|
||||||
|
|
||||||
LDFLAGS = -g graphics.lib binmode.lib mouse.lib
|
LDFLAGS = -g graphics.lib binmode.lib mouse.lib
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ XFLAGS = -I/usr/local/include -DXWINDOW
|
|||||||
OEXT = .o
|
OEXT = .o
|
||||||
# OPTFLAGS is normally -O2.
|
# OPTFLAGS is normally -O2.
|
||||||
OPTFLAGS = -O1 -gdwarf-2
|
OPTFLAGS = -O1 -gdwarf-2
|
||||||
DFLAGS = -DBYTESWAP -DLOGINT $(XFLAGS) \
|
DFLAGS = -DLOGINT $(XFLAGS) \
|
||||||
-DRELEASE=351
|
-DRELEASE=351
|
||||||
|
|
||||||
LDFLAGS = -L/usr/local/lib -lX11 -lc -lm
|
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 is normally -O2, for INIT we want unoptimized in case we need to debug it
|
||||||
OPTFLAGS = -O0 -g
|
OPTFLAGS = -O0 -g
|
||||||
DFLAGS = -DBYTESWAP -DLOGINT $(XFLAGS) \
|
DFLAGS = -DLOGINT $(XFLAGS) \
|
||||||
-DRELEASE=351 -DNOVERSION -DINIT -DTRACE -DOPTRACE
|
-DRELEASE=351 -DNOVERSION -DINIT -DTRACE -DOPTRACE
|
||||||
|
|
||||||
LDFLAGS = -L/usr/X11/lib -lX11 -lm
|
LDFLAGS = -L/usr/X11/lib -lX11 -lm
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ XFLAGS = -DXWINDOW
|
|||||||
OEXT = .o
|
OEXT = .o
|
||||||
# OPTFLAGS is normally -O2.
|
# OPTFLAGS is normally -O2.
|
||||||
OPTFLAGS = -O2 -g3
|
OPTFLAGS = -O2 -g3
|
||||||
DFLAGS = -DBYTESWAP -DLOGINT $(XFLAGS) -DRELEASE=351
|
DFLAGS = -DLOGINT $(XFLAGS) -DRELEASE=351
|
||||||
|
|
||||||
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
|
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
|
||||||
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
|
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ XFLAGS = -DXWINDOW
|
|||||||
OEXT = .o
|
OEXT = .o
|
||||||
# OPTFLAGS is normally -O2.
|
# OPTFLAGS is normally -O2.
|
||||||
OPTFLAGS = -O2 -g3
|
OPTFLAGS = -O2 -g3
|
||||||
DFLAGS = -DBYTESWAP -DLOGINT $(XFLAGS) -DRELEASE=351
|
DFLAGS = -DLOGINT $(XFLAGS) -DRELEASE=351
|
||||||
|
|
||||||
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
|
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
|
||||||
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
|
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ XFLAGS = -DXWINDOW
|
|||||||
OEXT = .o
|
OEXT = .o
|
||||||
# OPTFLAGS is normally -O2.
|
# OPTFLAGS is normally -O2.
|
||||||
OPTFLAGS = -O2 -g3
|
OPTFLAGS = -O2 -g3
|
||||||
DFLAGS = -DBYTESWAP -DLOGINT $(XFLAGS) -DRELEASE=351
|
DFLAGS = -DLOGINT $(XFLAGS) -DRELEASE=351
|
||||||
|
|
||||||
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
|
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
|
||||||
LDELDFLAGS = -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
|
OEXT = .o
|
||||||
# OPTFLAGS is normally -O2.
|
# OPTFLAGS is normally -O2.
|
||||||
OPTFLAGS = -O2 -g3
|
OPTFLAGS = -O2 -g3
|
||||||
DFLAGS = -DBYTESWAP -DLOGINT $(XFLAGS) -DRELEASE=351
|
DFLAGS = -DLOGINT $(XFLAGS) -DRELEASE=351
|
||||||
|
|
||||||
LDFLAGS = -L/usr/X11R6/lib -lX11 -lc -lm
|
LDFLAGS = -L/usr/X11R6/lib -lX11 -lc -lm
|
||||||
LDELDFLAGS = -L/usr/X11R6/lib -lX11 -lc -lm
|
LDELDFLAGS = -L/usr/X11R6/lib -lX11 -lc -lm
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ DEBUGFLAGS = # -DSTACKCHECK -DFNSTKCHECK
|
|||||||
|
|
||||||
DFLAGS = $(XFLAGS) \
|
DFLAGS = $(XFLAGS) \
|
||||||
$(DEBUGFLAGS) \
|
$(DEBUGFLAGS) \
|
||||||
-DOS5 -DBYTESWAP -DLOGINT \
|
-DOS5 -DLOGINT \
|
||||||
-DLOCK_X_UPDATES \
|
-DLOCK_X_UPDATES \
|
||||||
-DRELEASE=351
|
-DRELEASE=351
|
||||||
|
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ DEBUGFLAGS = # -DSTACKCHECK -DFNSTKCHECK
|
|||||||
DFLAGS = $(XFLAGS) \
|
DFLAGS = $(XFLAGS) \
|
||||||
$(DEBUGFLAGS) \
|
$(DEBUGFLAGS) \
|
||||||
-DOS5 -DUSE_DLPI \
|
-DOS5 -DUSE_DLPI \
|
||||||
-DBYTESWAP -DLOGINT \
|
-DLOGINT \
|
||||||
-DLOCK_X_UPDATES \
|
-DLOCK_X_UPDATES \
|
||||||
-I$(OPENWINHOME)/include \
|
-I$(OPENWINHOME)/include \
|
||||||
-DRELEASE=210
|
-DRELEASE=210
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ DEBUGFLAGS = # -DSTACKCHECK -DFNSTKCHECK
|
|||||||
|
|
||||||
DFLAGS = $(XFLAGS) \
|
DFLAGS = $(XFLAGS) \
|
||||||
$(DEBUGFLAGS) \
|
$(DEBUGFLAGS) \
|
||||||
-DOS5 -DBYTESWAP -DLOGINT \
|
-DOS5 -DLOGINT \
|
||||||
-DLOCK_X_UPDATES \
|
-DLOCK_X_UPDATES \
|
||||||
-DUSE_DLPI \
|
-DUSE_DLPI \
|
||||||
-DRELEASE=351
|
-DRELEASE=351
|
||||||
|
|||||||
@@ -137,6 +137,18 @@
|
|||||||
# define MAIKO_ARCH_DETECTED 1
|
# define MAIKO_ARCH_DETECTED 1
|
||||||
#endif
|
#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
|
#ifndef MAIKO_OS_DETECTED
|
||||||
# error "Could not detect OS."
|
# error "Could not detect OS."
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user