2009-09-08 16:18:59 +00:00
|
|
|
include $(GNUSTEP_MAKEFILES)/common.make
|
|
|
|
|
|
|
|
LIBRARY_NAME = libobjc
|
|
|
|
|
2010-01-25 13:07:16 +00:00
|
|
|
SUBPROJECTS = toydispatch
|
|
|
|
|
2009-09-08 16:18:59 +00:00
|
|
|
libobjc_VERSION = 4
|
|
|
|
|
|
|
|
libobjc_OBJC_FILES = \
|
2009-11-17 21:13:41 +00:00
|
|
|
NSBlocks.m\
|
2009-09-08 16:18:59 +00:00
|
|
|
NXConstStr.m\
|
|
|
|
Object.m\
|
|
|
|
Protocol.m\
|
2009-11-17 21:13:41 +00:00
|
|
|
blocks_runtime.m\
|
|
|
|
mutation.m\
|
|
|
|
properties.m\
|
2009-09-08 16:18:59 +00:00
|
|
|
sync.m
|
|
|
|
|
|
|
|
|
|
|
|
libobjc_C_FILES = \
|
2010-06-02 13:18:24 +00:00
|
|
|
abi_version.c\
|
2010-06-02 22:25:12 +00:00
|
|
|
category_loader.c\
|
2010-01-07 18:22:13 +00:00
|
|
|
class_table.c\
|
2010-06-03 15:17:12 +00:00
|
|
|
dtable.c\
|
2010-06-04 23:40:07 +00:00
|
|
|
encoding2.c\
|
2010-01-25 22:56:54 +00:00
|
|
|
hash_table.c\
|
2009-09-08 16:18:59 +00:00
|
|
|
exception.c\
|
2010-06-01 12:59:57 +00:00
|
|
|
hooks.c\
|
2010-05-13 23:27:17 +00:00
|
|
|
ivar.c\
|
2010-06-02 22:25:12 +00:00
|
|
|
loader.c\
|
2009-09-08 16:18:59 +00:00
|
|
|
misc.c\
|
|
|
|
protocol.c\
|
|
|
|
runtime.c\
|
2010-05-13 22:29:56 +00:00
|
|
|
sarray2.c\
|
|
|
|
selector_table.c\
|
2010-06-03 15:17:12 +00:00
|
|
|
sendmsg2.c\
|
2010-06-02 22:25:12 +00:00
|
|
|
statics_loader.c
|
2010-06-01 12:59:57 +00:00
|
|
|
|
|
|
|
ifneq ($(enable_legacy), no)
|
|
|
|
libobjc_C_FILES += \
|
|
|
|
objects.c\
|
2009-09-08 16:18:59 +00:00
|
|
|
thr.c
|
2010-06-01 12:59:57 +00:00
|
|
|
endif
|
2009-11-17 21:13:41 +00:00
|
|
|
|
2009-09-10 22:09:03 +00:00
|
|
|
libobjc_HEADER_FILES_DIR = objc
|
|
|
|
libobjc_HEADER_FILES_INSTALL_DIR = objc
|
2010-05-26 19:41:03 +00:00
|
|
|
ifneq ($(install_headers), no)
|
2010-05-16 21:33:22 +00:00
|
|
|
libobjc_HEADER_FILES = \
|
2009-09-10 22:09:03 +00:00
|
|
|
Availability.h\
|
|
|
|
NXConstStr.h\
|
|
|
|
Object.h\
|
|
|
|
Protocol.h\
|
|
|
|
blocks_runtime.h\
|
|
|
|
encoding.h\
|
|
|
|
hash.h\
|
|
|
|
objc-api.h\
|
|
|
|
objc-decls.h\
|
|
|
|
objc-list.h\
|
|
|
|
objc.h\
|
|
|
|
runtime-legacy.h\
|
|
|
|
runtime.h\
|
2010-05-17 21:40:07 +00:00
|
|
|
sarray.h\
|
2010-05-14 12:55:07 +00:00
|
|
|
slot.h\
|
2009-09-10 22:09:03 +00:00
|
|
|
thr.h\
|
|
|
|
typedstream.h
|
2010-05-21 13:49:19 +00:00
|
|
|
endif
|
2009-09-08 16:18:59 +00:00
|
|
|
|
2009-12-30 16:01:38 +00:00
|
|
|
libobjc_LIBRARIES_DEPEND_UPON += -lpthread
|
|
|
|
|
2009-09-08 16:18:59 +00:00
|
|
|
# Deprecated functions are only deprecated for external use, not for us because
|
|
|
|
# we are special, precious, little flowers.
|
2009-09-13 11:51:27 +00:00
|
|
|
libobjc_CPPFLAGS += -D__OBJC_RUNTIME_INTERNAL__=1 -D_XOPEN_SOURCE=500
|
2009-09-08 16:18:59 +00:00
|
|
|
# Note to Riccardo. Please do not 'fix' C99isms in this. The new ABI is only
|
|
|
|
# useful on compilers that support C99 (currently only clang), so there is no
|
|
|
|
# benefit from supporting platforms with no C99 compiler.
|
2010-01-25 22:56:54 +00:00
|
|
|
libobjc_CFLAGS += -Werror -std=c99 -g -march=native -fexceptions #-fno-inline
|
2010-03-12 18:53:27 +00:00
|
|
|
libobjc_OBJCFLAGS += -g -std=c99 -march=native
|
2010-01-25 22:56:54 +00:00
|
|
|
libobjc_LDFLAGS += -g -ltoydispatch
|
2010-02-07 05:45:55 +00:00
|
|
|
libobjc_LIB_DIRS += -L toydispatch/obj
|
2009-09-08 16:18:59 +00:00
|
|
|
|
2010-05-14 21:47:35 +00:00
|
|
|
libobjc_CFLAGS += -O3
|
2009-09-08 16:18:59 +00:00
|
|
|
|
|
|
|
ifneq ($(findstring gcc, $(CC)),)
|
|
|
|
libobjc_CFLAGS += -fgnu89-inline
|
|
|
|
endif
|
|
|
|
|
2010-01-25 13:07:16 +00:00
|
|
|
include $(GNUSTEP_MAKEFILES)/aggregate.make
|
2010-02-07 05:45:55 +00:00
|
|
|
include $(GNUSTEP_MAKEFILES)/library.make
|
2010-01-21 17:33:23 +00:00
|
|
|
|
|
|
|
ifeq ($(findstring no, $(debug)),)
|
|
|
|
before-all::
|
|
|
|
@echo
|
|
|
|
@echo
|
|
|
|
@echo WARNING: You are building in debug mode. This will generate a LOT of console \
|
|
|
|
output for every Objective-C program you run. If this is not what you \
|
|
|
|
want, please compile with $(MAKE) debug=no
|
|
|
|
@echo
|
|
|
|
@echo
|
|
|
|
endif
|
2010-01-25 13:07:16 +00:00
|
|
|
|