diff --git a/GNUmakefile b/GNUmakefile index 76442bb..3210263 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -21,9 +21,9 @@ else # # Start of GNUstep-make specific section. # --include version.make PACKAGE_NAME = gnustep-objc2 +VERSION=4.6.0 SVN_MODULE_NAME = libobjc2 SVN_BASE_URL = svn+ssh://svn.gna.org/svn/gnustep/libs SVN_TAG_NAME=objc2 diff --git a/Makefile b/Makefile index 8fc30a3..4d91a9b 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,10 @@ .SUFFIXES: .cc .c .m .o .S --include version.make +MAJOR_VERSION = 4 +MINOR_VERSION = 6 +SUBMINOR_VERSION = 0 +VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(SUBMINOR_VERSION) LIBOBJCLIBNAME=objc LIBOBJC=libobjc @@ -15,12 +18,6 @@ CXXFLAGS += -fPIC -fexceptions CPPFLAGS += -DTYPE_DEPENDENT_DISPATCH -DGNUSTEP CPPFLAGS += -D__OBJC_RUNTIME_INTERNAL__=1 -D_XOPEN_SOURCE=500 -D__BSD_VISIBLE=1 -D_BSD_SOURCE=1 -ifeq ($(CC),clang) -ASMFLAGS += -no-integrated-as -else -ASMFLAGS += -endif - STRIP=`if [ "$(strip)" = "yes" ] ; then echo -s ; fi` # Suppress warnings about incorrect selectors @@ -101,7 +98,7 @@ $(LIBOBJC).a: $(OBJECTS) .S.o: Makefile $(SILENT)echo Assembling `basename $<`... - $(SILENT)$(CC) $(CPPFLAGS) $(ASMFLAGS) -c $< -o $@ + $(SILENT)$(CC) $(CPPFLAGS) -no-integrated-as -c $< -o $@ install: all $(SILENT)echo Installing libraries... diff --git a/Makefile.clang b/Makefile.clang index a8466a8..a137f58 100644 --- a/Makefile.clang +++ b/Makefile.clang @@ -1,8 +1,8 @@ .POSIX: -.SUFFIXES: .c .cc .bc .m .S .o +.SUFFIXES: .c .bc .m --include version.make +VERSION = 4 #CC=clang @@ -23,7 +23,6 @@ OBJECTS = \ abi_version.bc\ alias_table.bc\ blocks_runtime.bc\ - block_to_imp.bc\ caps.bc\ category_loader.bc\ class_table.bc\ @@ -45,37 +44,17 @@ OBJECTS = \ statics_loader.bc\ toydispatch.bc -NATIVE_OBJECTS=\ - block_trampolines.o\ - objc_msgSend.o - -CXX_OBJECTS=\ - objcxx_eh.bc - -all: libobjc.so.$(VERSION) libobjc.a libobjcxx.so.$(VERSION) - @echo "'Makefile.clang' is deprecated. Please use 'Makefile' or 'GNUmakefile'" - -libobjcxx.so.$(VERSION): libobjc.so.$(VERSION) libobjcxx.o - @echo Linking shared C++ library... - @clang++ -shared -o $@ libobjcxx.o -L./ -lobjc - -libobjcxx.o: libobjcxx.bc - @echo Generating native C++ object code... - @llc -relocation-model=pic -O3 -filetype=obj -o $@ libobjcxx.bc - -libobjcxx.bc: $(CXX_OBJECTS) - @echo Linking C++ bitcode... - @llvm-ld -internalize -link-as-library -native -o libobjcxx.bc $(CXX_OBJECTS) +all: libobjc.so.$(VERSION) libobjc.a libobjc.so.$(VERSION): libobjc.o @echo Linking shared library... @clang -shared -o $@ libobjc.o -lpthread -libobjc.a: libobjc.o $(NATIVE_OBJECTS) +libobjc.a: libobjc.o @echo Linking static library... - @ld -r -s -o $@ libobjc.o $(NATIVE_OBJECTS) + @ld -r -s -o $@ libobjc.o -libobjc.o: libobjc.bc +libobjc.o: libobjc.bc @echo Generating native object code... @llc -relocation-model=pic -O3 -filetype=obj -o libobjc.o libobjc.bc @@ -87,19 +66,10 @@ libobjc.bc: $(OBJECTS) @echo Compiling $<... @clang $(CPPFLAGS) $(CFLAGS) -emit-llvm -c $< -o $@ -.cc.bc: - @echo Compiling $<... - @clang++ $(CPPFLAGS) $(CFLAGS) -emit-llvm -c $< -o $@ - .m.bc: @echo Compiling $<... @clang $(CPPFLAGS) $(CFLAGS) -emit-llvm -c $< -o $@ -.S.o: - @echo Assembling `basename $<`... - @clang $(CPPFLAGS) -no-integrated-as -c $< -o $@ - - install: all install -m 444 libobjc.so.$(VERSION) $(LIB_DIR) install -m 444 libobjc.a $(LIB_DIR) @@ -109,8 +79,4 @@ install: all clean: @echo Cleaning... - @rm -f $(NATIVE_OBJECTS) - @rm -f $(OBJECTS) - @rm -f $(CXX_OBJECTS) - @rm -f libobjc.a libobjc.o libobjcxx.o libobjc.bc libobjcxx.bc - @rm -f libobjc.so.$(VERSION) libobjcxx.so.$(VERSION) + @rm -f obj/* diff --git a/version.make b/version.make deleted file mode 100644 index 4789e38..0000000 --- a/version.make +++ /dev/null @@ -1,5 +0,0 @@ -# Version information for libobjc2 -MAJOR_VERSION = 4 -MINOR_VERSION = 6 -SUBMINOR_VERSION = 0 -VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(SUBMINOR_VERSION)