some more NetWare makefile fixes.

This commit is contained in:
Guenter Knauf 2007-07-14 21:04:32 +00:00
parent e0254f3936
commit 84e16944b4
2 changed files with 58 additions and 29 deletions

View File

@ -5,7 +5,7 @@
## ##
## Comments to: Guenter Knauf <eflash@gmx.net> ## Comments to: Guenter Knauf <eflash@gmx.net>
## ##
## $Id: Makefile.netware,v 1.10 2007/07/09 22:47:24 gknauf Exp $ ## $Id: Makefile.netware,v 1.11 2007/07/14 21:04:32 gknauf Exp $
# #
######################################################################### #########################################################################
@ -41,7 +41,7 @@ TARGET = libssh2
VERSION = $(LIBSSH2_VERSION) VERSION = $(LIBSSH2_VERSION)
COPYR = Copyright (c) 2004-2007 Sara Golemon <sarag@libssh2.org> COPYR = Copyright (c) 2004-2007 Sara Golemon <sarag@libssh2.org>
WWWURL = http://www.libssh2.org/ WWWURL = http://www.libssh2.org/
DESCR = libssh2 $(LIBSSH2_VERSION_STR) - $(WWWURL) DESCR = libssh2 $(LIBSSH2_VERSION_STR) ($(LIBARCH)) - $(WWWURL)
MTSAFE = YES MTSAFE = YES
STACK = 64000 STACK = 64000
SCREEN = none SCREEN = none
@ -141,6 +141,7 @@ LDLIBS =
NDK_ROOT = $(NDKBASE)/ndk NDK_ROOT = $(NDKBASE)/ndk
SDK_CLIB = $(NDK_ROOT)/nwsdk SDK_CLIB = $(NDK_ROOT)/nwsdk
SDK_LIBC = $(NDK_ROOT)/libc SDK_LIBC = $(NDK_ROOT)/libc
SNPRINTF = $(NDKBASE)/snprintf
INCLUDES = -I. -I../include INCLUDES = -I. -I../include
@ -208,7 +209,15 @@ OBJECTS = \
transport.o \ transport.o \
userauth.o userauth.o
ifeq ($(LIBARCH),CLIB)
# CLIB lacks of snprint() function - here's a replacement:
# http://www.ijs.si/software/snprintf/
OBJECTS += snprintf.o
vpath %.c $(SNPRINTF)
endif
OBJS := $(addprefix $(OBJDIR)/,$(OBJECTS)) OBJS := $(addprefix $(OBJDIR)/,$(OBJECTS))
OBJL = $(OBJS) $(OBJDIR)/nwlib.o $(LDLIBS) OBJL = $(OBJS) $(OBJDIR)/nwlib.o $(LDLIBS)
all: lib nlm all: lib nlm
@ -323,6 +332,7 @@ endif
ifdef XDCDATA ifdef XDCDATA
@echo $(DL)xdcdata $(XDCDATA)$(DL) >> $@ @echo $(DL)xdcdata $(XDCDATA)$(DL) >> $@
endif endif
@echo $(DL)flag_on 64$(DL) >> $@
ifeq ($(LIBARCH),CLIB) ifeq ($(LIBARCH),CLIB)
@echo $(DL)start _Prelude$(DL) >> $@ @echo $(DL)start _Prelude$(DL) >> $@
@echo $(DL)exit _Stop$(DL) >> $@ @echo $(DL)exit _Stop$(DL) >> $@
@ -332,7 +342,6 @@ ifeq ($(LIBARCH),CLIB)
@echo $(DL)import @$(SDK_CLIB)/imports/socklib.imp$(DL) >> $@ @echo $(DL)import @$(SDK_CLIB)/imports/socklib.imp$(DL) >> $@
@echo $(DL)module clib$(DL) >> $@ @echo $(DL)module clib$(DL) >> $@
else else
@echo $(DL)flag_on 64$(DL) >> $@
@echo $(DL)pseudopreemption$(DL) >> $@ @echo $(DL)pseudopreemption$(DL) >> $@
@echo $(DL)start _LibCPrelude$(DL) >> $@ @echo $(DL)start _LibCPrelude$(DL) >> $@
@echo $(DL)exit _LibCPostlude$(DL) >> $@ @echo $(DL)exit _LibCPostlude$(DL) >> $@
@ -369,6 +378,7 @@ ifeq ($(LIBARCH),CLIB)
@echo $(DL)#define NETDB_USE_INTERNET 1$(DL) >> $@ @echo $(DL)#define NETDB_USE_INTERNET 1$(DL) >> $@
@echo $(DL)#define HAVE_STRICMP 1$(DL) >> $@ @echo $(DL)#define HAVE_STRICMP 1$(DL) >> $@
@echo $(DL)#define socklen_t int$(DL) >> $@ @echo $(DL)#define socklen_t int$(DL) >> $@
@echo $(DL)#define sleep(s) delay(1000 * s)$(DL) >> $@
else else
@echo $(DL)#define OS "i586-pc-libc-NetWare"$(DL) >> $@ @echo $(DL)#define OS "i586-pc-libc-NetWare"$(DL) >> $@
@echo $(DL)#define HAVE_DLFCN_H 1$(DL) >> $@ @echo $(DL)#define HAVE_DLFCN_H 1$(DL) >> $@
@ -484,7 +494,11 @@ libssh2.imp: Makefile.netware
@echo $(DL)# $@ for NetWare target.$(DL) > $@ @echo $(DL)# $@ for NetWare target.$(DL) > $@
@echo $(DL)# Do not edit this file - it is created by make!$(DL) >> $@ @echo $(DL)# Do not edit this file - it is created by make!$(DL) >> $@
@echo $(DL)# All your changes will be lost!!$(DL) >> $@ @echo $(DL)# All your changes will be lost!!$(DL) >> $@
@echo $(DL) (LIBSSH2)$(DL) >> $@ ifeq ($(LIBARCH),CLIB)
@echo $(DL) (CLIB_LIBSSH2)$(DL) >> $@
else
@echo $(DL) (LIBC_LIBSSH2)$(DL) >> $@
endif
@echo $(DL) libssh2_banner_set,$(DL) >> $@ @echo $(DL) libssh2_banner_set,$(DL) >> $@
@echo $(DL) libssh2_channel_close,$(DL) >> $@ @echo $(DL) libssh2_channel_close,$(DL) >> $@
@echo $(DL) libssh2_channel_direct_tcpip_ex,$(DL) >> $@ @echo $(DL) libssh2_channel_direct_tcpip_ex,$(DL) >> $@
@ -557,7 +571,11 @@ $(DEVLDIR)/readme.txt: Makefile.netware
help: $(OBJDIR)/version.inc help: $(OBJDIR)/version.inc
@echo $(DL)===========================================================$(DL) @echo $(DL)===========================================================$(DL)
ifeq ($(LIBARCH),LIBC)
@echo $(DL)Novell LibC NDK = $(SDK_LIBC)$(DL) @echo $(DL)Novell LibC NDK = $(SDK_LIBC)$(DL)
else
@echo $(DL)Novell CLib NDK = $(SDK_CLIB)$(DL)
endif
@echo $(DL)OpenSSL path = $(OPENSSL_PATH)$(DL) @echo $(DL)OpenSSL path = $(OPENSSL_PATH)$(DL)
@echo $(DL)Zlib path = $(ZLIB_PATH)$(DL) @echo $(DL)Zlib path = $(ZLIB_PATH)$(DL)
@echo $(DL)===========================================================$(DL) @echo $(DL)===========================================================$(DL)

View File

@ -5,7 +5,7 @@
## ##
## Comments to: Guenter Knauf <eflash@gmx.net> ## Comments to: Guenter Knauf <eflash@gmx.net>
## ##
## $Id: Makefile.netware,v 1.5 2007/04/21 21:26:54 gknauf Exp $ ## $Id: Makefile.netware,v 1.6 2007/07/14 21:04:32 gknauf Exp $
# #
######################################################################### #########################################################################
@ -32,13 +32,13 @@ TARGETS = scp.nlm sftp.nlm sftpdir.nlm ssh2.nlm
VERSION = $(LIBSSH2_VERSION) VERSION = $(LIBSSH2_VERSION)
COPYR = Copyright (c) 2004-2007, Sara Golemon <sarag@libssh2.org> COPYR = Copyright (c) 2004-2007, Sara Golemon <sarag@libssh2.org>
WWWURL = http://www.libssh2.org/ WWWURL = http://www.libssh2.org/
DESCR = libssh2 $(notdir $(@:.def=)) $(LIBSSH2_VERSION_STR) - $(WWWURL) DESCR = libssh2 $(notdir $(@:.def=)) $(LIBSSH2_VERSION_STR) ($(LIBARCH)) - $(WWWURL)
MTSAFE = YES MTSAFE = YES
STACK = 64000 STACK = 64000
SCREEN = NONE SCREEN = NONE
#SCREEN = libssh2 $(notdir $(@:.def=)) #SCREEN = libssh2 $(notdir $(@:.def=))
# Comment the line below if you dont want to load protected automatically. # Comment the line below if you dont want to load protected automatically.
LDRING = 3 #LDRING = 3
# Edit the var below to point to your lib architecture. # Edit the var below to point to your lib architecture.
ifndef LIBARCH ifndef LIBARCH
@ -56,14 +56,17 @@ ifeq ($(DB),NDEBUG)
OBJDIR = release OBJDIR = release
else else
OPT = -g OPT = -g
OPT += -DLIBSSH2DEBUG
OBJDIR = debug OBJDIR = debug
endif endif
# Include the version info retrieved from xml2ver.h # The following lines defines your compiler.
-include $(OBJDIR)/version.inc ifdef CWFolder
METROWERKS = $(CWFolder)
# The following line defines your compiler. endif
ifdef METROWERKS ifdef METROWERKS
# MWCW_PATH = $(subst \,/,$(METROWERKS))/Novell Support
MWCW_PATH = $(subst \,/,$(METROWERKS))/Novell Support/Metrowerks Support
CC = mwccnlm CC = mwccnlm
else else
CC = gcc CC = gcc
@ -78,8 +81,14 @@ AWK = awk
# http://www.gknw.net/development/prgtools/mkxdc.zip # http://www.gknw.net/development/prgtools/mkxdc.zip
MPKXDC = mkxdc MPKXDC = mkxdc
# LIBARCH_U = $(shell $(AWK) 'BEGIN {print toupper(ARGV[1])}' $(LIBARCH))
LIBARCH_L = $(shell $(AWK) 'BEGIN {print tolower(ARGV[1])}' $(LIBARCH))
# Include the version info retrieved from libssh2.h
-include $(OBJDIR)/version.inc
# Global flags for all compilers # Global flags for all compilers
CFLAGS = $(OPT) -D$(DB) -DNETWARE -nostdinc # -DHAVE_CONFIG_H CFLAGS = $(OPT) -D$(DB) -DNETWARE -nostdinc
ifeq ($(CC),mwccnlm) ifeq ($(CC),mwccnlm)
LD = mwldnlm LD = mwldnlm
@ -94,8 +103,10 @@ ifeq ($(LIBARCH),LIBC)
PRELUDE = $(SDK_LIBC)/imports/libcpre.o PRELUDE = $(SDK_LIBC)/imports/libcpre.o
CFLAGS += -align 4 CFLAGS += -align 4
else else
PRELUDE = "$(METROWERKS)/Novell Support/libraries/runtime/prelude.obj" # PRELUDE = $(SDK_CLIB)/imports/clibpre.o
# CFLAGS += -include "$(METROWERKS)/Novell Support/headers/nlm_prefix.h" # to avoid the __init_* / __deinit_* whoes dont use prelude from NDK
PRELUDE = "$(MWCW_PATH)/libraries/runtime/prelude.obj"
# CFLAGS += -include "$(MWCW_PATH)/headers/nlm_clib_prefix.h"
CFLAGS += -align 1 CFLAGS += -align 1
endif endif
else else
@ -117,16 +128,27 @@ endif
NDK_ROOT = $(NDKBASE)/ndk NDK_ROOT = $(NDKBASE)/ndk
SDK_CLIB = $(NDK_ROOT)/nwsdk SDK_CLIB = $(NDK_ROOT)/nwsdk
SDK_LIBC = $(NDK_ROOT)/libc SDK_LIBC = $(NDK_ROOT)/libc
SDK_LDAP = $(NDK_ROOT)/cldapsdk/netware SNPRINTF = $(NDKBASE)/snprintf
INCLUDES = -I. -I.. -I../../include INCLUDES = -I.. -I../../include
LDLIBS = LDLIBS =
INCLUDES += -I$(OPENSSL_PATH)/outinc_nw_libc -I$(OPENSSL_PATH)/outinc_nw_libc/openssl INCLUDES += -I$(OPENSSL_PATH)/outinc_nw_$(LIBARCH_L) -I$(OPENSSL_PATH)/outinc_nw_$(LIBARCH_L)/openssl
LDLIBS += $(OPENSSL_PATH)/out_nw_libc/ssl.$(LIBEXT) $(OPENSSL_PATH)/out_nw_libc/crypto.$(LIBEXT) LDLIBS += $(OPENSSL_PATH)/out_nw_$(LIBARCH_L)/ssl.$(LIBEXT)
LDLIBS += $(OPENSSL_PATH)/out_nw_$(LIBARCH_L)/crypto.$(LIBEXT)
IMPORTS += GetProcessSwitchCount RunningProcess IMPORTS += GetProcessSwitchCount RunningProcess
ifdef WITH_ZLIB
INCLUDES += -I$(ZLIB_PATH)
ifdef LINK_STATIC
LDLIBS += $(ZLIB_PATH)/nw/$(LIBARCH)/libz.$(LIBEXT)
else
MODULES += libz.nlm
IMPORTS += @$(ZLIB_PATH)/nw/$(LIBARCH)/libz.imp
endif
endif
ifdef LINK_STATIC ifdef LINK_STATIC
LDLIBS += ../libssh2.$(LIBEXT) LDLIBS += ../libssh2.$(LIBEXT)
else else
@ -134,16 +156,6 @@ else
MODULES += libssh2.nlm MODULES += libssh2.nlm
endif endif
ifdef WITH_ZLIB
INCLUDES += -I$(ZLIB_PATH)
ifdef LINK_STATIC
LDLIBS += $(ZLIB_PATH)/nw/libz.$(LIBEXT)
else
IMPORTS += @$(ZLIB_PATH)/nw/libz.imp
MODULES += libz.nlm
endif
endif
ifeq ($(LIBARCH),LIBC) ifeq ($(LIBARCH),LIBC)
INCLUDES += -I$(SDK_LIBC)/include -I$(SDK_LIBC)/include/nks INCLUDES += -I$(SDK_LIBC)/include -I$(SDK_LIBC)/include/nks
# INCLUDES += -I$(SDK_LIBC)/include/winsock # INCLUDES += -I$(SDK_LIBC)/include/winsock
@ -167,7 +179,6 @@ endif
ifeq ($(findstring linux,$(OSTYPE)),linux) ifeq ($(findstring linux,$(OSTYPE)),linux)
DL = ' DL = '
#-include $(NDKBASE)/nlmconv/ncpfs.inc
endif endif
vpath %.c ../../example/simple vpath %.c ../../example/simple