# # GNUmakefile # # Copyright (C) 1998 MDlink online service center, Helge Hess # # # Author: Helge Hess (helge@mdlink.de) # # This file is part of the MDlink Object Framework 2 (MOF2) # # Permission to use, copy, modify, and distribute this software and its # documentation for any purpose and without fee is hereby granted, provided # that the above copyright notice appear in all copies and that both that # copyright notice and this permission notice appear in supporting # documentation. # # We disclaim all warranties with regard to this software, including all # implied warranties of merchantability and fitness, in no event shall # we be liable for any special, indirect or consequential damages or any # damages whatsoever resulting from loss of use, data or profits, whether in # an action of contract, negligence or other tortious action, arising out of # or in connection with the use or performance of this software. # -include config.make include $(GNUSTEP_MAKEFILES)/common.make PACKAGE_NAME=skyrix-objc VERSION=lf2.95.3 GNUSTEP_INSTALLATION_DIR = $(GNUSTEP_SYSTEM_ROOT) LIBRARY_NAME = libobjc # dce, decosf1, irix, mach, os2, posix, pthreads, single, solaris, vxworks THREADING = single GC_HEADER_FILES_DIR = ./gc/include GC_HEADER_FILES = \ cord.h \ ec.h \ gc.h \ gc_alloc.h \ gc_cpp.h \ gc_inl.h \ gc_inline.h \ gc_typed.h \ weakpointer.h \ libobjc_HEADER_FILES = \ objc-decls.h \ Object.h \ Protocol.h \ encoding.h \ hash.h \ objc-api.h \ objc-list.h \ objc-mem.h \ objc.h \ sarray.h \ thr.h \ typedstream.h \ # NXConstStr.h \ libobjc_OBJC_FILES = \ Object.m \ Protocol.m \ linking.m \ # NXConstStr.m \ libobjc_C_FILES = \ globals.c \ archive.c \ class.c \ encoding.c \ gc.c \ hash.c \ init.c \ misc.c \ nil_method.c \ objects.c \ sarray.c \ selector.c \ sendmsg.c \ thr-backends/$(THREADING).c\ thr.c \ libobjc_entry.c \ ADDITIONAL_CPPFLAGS += \ -pipe \ -DSTDC_HEADERS=1\ -DHAVE_STDLIB_H \ -DOBJC_THREAD_BACKEND='"thr-backends/$(THREADING).h"'\ # -DOBJC_DEBUG=1 \ # -DEBUG_DTABLE=1 \ ADDITIONAL_CFLAGS += -O2 -Wall libobjc_HEADER_FILES_DIR = . libobjc_HEADER_FILES_INSTALL_DIR = /objc libobjc_DLL_DEF = libobjc.def ifeq ($(THREADING), single) ADDITIONAL_CPPFLAGS += -DOBJC_WITHOUT_THREADING endif ifeq ($(gc), yes) ADDITIONAL_CPPFLAGS += -DOBJC_WITH_GC=1 -DGC_DEBUG=1 ADDITIONAL_CPPFLAGS += -DDEBUG_OBJC_GC=0 libobjc_LIBRARIES_DEPEND_UPON += -lgc ifeq ($(THREADING), solaris) ADDITIONAL_CPPFLAGS += -DSOLARIS_THREADS endif else # gc ADDITIONAL_CPPFLAGS += -DOBJC_WITH_GC=0 -DDEBUG_OBJC_GC=0 endif ifeq ($(gc), xyes) GC_OFILES = \ alloc.o reclaim.o allchblk.o misc.o mach_dep.o os_dep.o mark_rts.o \ headers.o mark.o obj_map.o blacklst.o finalize.o new_hblk.o dbg_mlc.o \ malloc.o stubborn.o checksums.o solaris_threads.o irix_threads.o \ typd_mlc.o ptr_chck.o mallocx.o solaris_pthreads.o \ dyn_load.o \ ADDITIONAL_LIBRARY_OBJ_FILES = $(addprefix gc/, $(GC_OFILES)) endif -include config/$(GNUSTEP_TARGET_CPU)/config.make -include config/$(GNUSTEP_TARGET_CPU)/$(GNUSTEP_TARGET_OS)/config.make -include GNUmakefile.preamble include $(GNUSTEP_MAKEFILES)/library.make -include GNUmakefile.postamble