a couple changes to: 1) make sure CFLAGS and LDFLAGS are not overwritten link in bzip2. 2) load a modified src/Config/config.linux-fb file at src/config. 3) check explicitly for a PTHREAD macro instead of guessing around it. --- a/src/Makefile.rules 2020-09-03 18:49:18.380000000 +0000 +++ b/src/Makefile.rules 2020-09-03 19:14:49.390000000 +0000 @@ -15,12 +15,12 @@ #$(info MAKELEVEL $(MAKELEVEL)) # Arch.rules will add platform-specific options to these flags -CFLAGS= +#CFLAGS= WARNINGS= # INCLUDEDIRS is += and EXTRAFLAGS= not here for their use in submakefiles before they include Makefile.rules INCLUDEDIRS += -I$(MW_DIR_SRC)/include #LDFLAGS = -L$(MW_DIR_LIB) -LDFLAGS= +LDFLAGS+= -lbz2 DEFINES= HOSTCFLAGS= HOSTLDFLAGS= --- a/src/include/lock.h 2020-09-03 21:09:41.110000000 +0000 +++ b/src/include/lock.h 2020-09-03 21:10:41.780000000 +0000 @@ -21,7 +21,7 @@ #include typedef pthread_mutex_t MWMUTEX; -#if ! (defined(__CYGWIN__) | RTEMS | MACOSX) +#if defined(PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP) /* * This definition doesn't require explicit initialization and -lpthread * --- a/src/config 2020-09-03 18:49:18.380000000 +0000 +++ b/src/config 2020-09-03 21:18:25.370000000 +0000 @@ -2,6 +2,7 @@ # config - Microwindows and Nano-X configuration file # # Set target architecture using ARCH= from options in Arch.rules +# Set drawing method: X11 or FRAMEBUFFER/MOUSE/KEYBOARD options # Set SCREEN/MOUSE/KEYBOARD drivers (typically X11 or FB) # Set various libraries to build or include and their locations # @@ -14,9 +15,9 @@ # Target platform and compilation options # #################################################################### -ARCH = MACOSX -SHAREDLIBS = Y -SHAREDLINK = Y +ARCH = LINUX-NATIVE +SHAREDLIBS = N +SHAREDLINK = N #EXTRAFLAGS = -Wall -Wno-missing-prototypes DEBUG = N OPTIMIZE = Y @@ -30,14 +31,13 @@ # Set SCREEN=X11 for X11, SCREEN=FB for framebuffer drawing # Screen size/depth for X11, FBE and non-dynamic framebuffer systems #################################################################### -SCREEN = X11 -MOUSE = -KEYBOARD = +SCREEN = FB +MOUSE = DEVMICEMOUSE +KEYBOARD = SCANKBD SCREEN_WIDTH = 1024 SCREEN_HEIGHT = 768 -X11LIBLOCATION = /usr/X11/lib -X11HDRLOCATION = /usr/X11/include -EXTENGINELIBS += +#X11LIBLOCATION = /usr/X11/lib +X11HDRLOCATION = ./X11-local #################################################################### # @@ -46,19 +46,19 @@ #################################################################### MICROWIN = Y NANOX = Y -NUKLEARUI = Y +NUKLEARUI = N NX11 = Y ENGINE = N -TINYWIDGETS = Y +TINYWIDGETS = N #################################################################### # # Applications and demos to build # #################################################################### -FBEMULATOR = Y +FBEMULATOR = N MICROWINDEMO = Y -MICROWINMULTIAPP = Y +MICROWINMULTIAPP = N NANOXDEMO = Y HAVE_VNCSERVER_SUPPORT = N VNCSERVER_PTHREADED = N @@ -97,7 +97,7 @@ #################################################################### # JPEG support through libjpeg, see README.txt in contrib/jpeg #################################################################### -HAVE_JPEG_SUPPORT = N +HAVE_JPEG_SUPPORT = Y INCJPEG = LIBJPEG = -ljpeg @@ -129,8 +129,8 @@ #################################################################### HAVE_FREETYPE_2_SUPPORT = Y HAVE_HARFBUZZ_SUPPORT = N -INCFT2LIB = /usr/local/include -LIBFT2LIB = -lfreetype -lbz2 +INCFT2LIB = /usr/include +LIBFT2LIB = -lfreetype #LIBFT2LIB += -lharfbuzz FREETYPE_FONT_DIR = "fonts/truetype" @@ -198,10 +198,10 @@ # set GRAYPALETTE to link with Gray Palette (valid only for 4bpp modes) # set HAVETEXTMODE=Y for systems that can switch between text & graphics. USE_EXPOSURE = Y -VTSWITCH = N +VTSWITCH = Y FBREVERSE = N GRAYPALETTE = N -HAVETEXTMODE = N +HAVETEXTMODE = Y #################################################################### # Screen pixel format @@ -229,8 +229,7 @@ SCREEN_PIXTYPE = MWPF_TRUECOLORARGB #SCREEN_PIXTYPE = MWPF_TRUECOLORABGR #SCREEN_PIXTYPE = MWPF_TRUECOLOR565 -#SCREEN_PIXTYPE = MWPF_PALETTE -SCREEN_DEPTH = 8 +SCREEN_DEPTH = 32 #################################################################### # Screen drivers