mirror of
https://github.com/darlinghq/darling-libobjc2.git
synced 2025-02-21 17:20:29 +00:00

The protocols table and the class table will now grow as required. Protocols are now added to the protocols table as they are created, so you should get something sensible and introspectable back when you look up a protocol by name.
95 lines
1.9 KiB
Makefile
95 lines
1.9 KiB
Makefile
include $(GNUSTEP_MAKEFILES)/common.make
|
|
|
|
LIBRARY_NAME = libobjc
|
|
|
|
SUBPROJECTS = toydispatch
|
|
|
|
libobjc_VERSION = 4
|
|
|
|
libobjc_OBJC_FILES = \
|
|
NSBlocks.m\
|
|
NXConstStr.m\
|
|
Object.m\
|
|
Protocol.m\
|
|
blocks_runtime.m\
|
|
linking.m\
|
|
mutation.m\
|
|
properties.m\
|
|
sync.m
|
|
|
|
|
|
libobjc_C_FILES = \
|
|
class.c\
|
|
class_table.c\
|
|
encoding.c\
|
|
hash_table.c\
|
|
exception.c\
|
|
gc.c\
|
|
hash.c\
|
|
init.c\
|
|
misc.c\
|
|
nil_method.c\
|
|
objects.c\
|
|
protocol.c\
|
|
runtime.c\
|
|
sarray.c\
|
|
selector.c\
|
|
sendmsg.c\
|
|
thr.c
|
|
|
|
libobjc_HEADER_FILES_DIR = objc
|
|
libobjc_HEADER_FILES_INSTALL_DIR = objc
|
|
libobjc_HEADER_FILES = \
|
|
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\
|
|
sarray.h\
|
|
thr.h\
|
|
typedstream.h
|
|
|
|
libobjc_LIBRARIES_DEPEND_UPON += -lpthread
|
|
|
|
# Deprecated functions are only deprecated for external use, not for us because
|
|
# we are special, precious, little flowers.
|
|
libobjc_CPPFLAGS += -D__OBJC_RUNTIME_INTERNAL__=1 -D_XOPEN_SOURCE=500
|
|
# 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.
|
|
libobjc_CFLAGS += -Werror -std=c99 -g -march=native -fexceptions #-fno-inline
|
|
libobjc_OBJCFLAGS += -g -std=c99
|
|
libobjc_LDFLAGS += -g -ltoydispatch
|
|
|
|
|
|
ifneq ($(findstring gcc, $(CC)),)
|
|
libobjc_CFLAGS += -fgnu89-inline
|
|
endif
|
|
|
|
ifneq ($(findstring mingw, $(GNUSTEP_HOST_OS)),)
|
|
libobjc_C_FILES += libobjc_entry.c
|
|
endif
|
|
|
|
include $(GNUSTEP_MAKEFILES)/library.make
|
|
include $(GNUSTEP_MAKEFILES)/aggregate.make
|
|
|
|
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
|
|
|