269 lines
		
	
	
		
			9.4 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
		
		
			
		
	
	
			269 lines
		
	
	
		
			9.4 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
|  | 
 | ||
|  | SHELL = /bin/sh | ||
|  | 
 | ||
|  | # V=0 quiet, V=1 verbose.  other values don't work.
 | ||
|  | V = 0 | ||
|  | Q1 = $(V:1=) | ||
|  | Q = $(Q1:0=@) | ||
|  | ECHO1 = $(V:1=@ :) | ||
|  | ECHO = $(ECHO1:0=@ echo) | ||
|  | NULLCMD = : | ||
|  | 
 | ||
|  | #### Start of system configuration section. ####
 | ||
|  | 
 | ||
|  | srcdir = . | ||
|  | topdir = /Users/BenjaminJones/.rvm/rubies/ruby-2.6.3/include/ruby-2.6.0 | ||
|  | hdrdir = $(topdir) | ||
|  | arch_hdrdir = /Users/BenjaminJones/.rvm/rubies/ruby-2.6.3/include/ruby-2.6.0/x86_64-darwin18 | ||
|  | PATH_SEPARATOR = : | ||
|  | VPATH = $(srcdir):$(arch_hdrdir)/ruby:$(hdrdir)/ruby | ||
|  | prefix = $(DESTDIR)/Users/BenjaminJones/.rvm/rubies/ruby-2.6.3 | ||
|  | rubysitearchprefix = $(rubylibprefix)/$(sitearch) | ||
|  | rubyarchprefix = $(rubylibprefix)/$(arch) | ||
|  | rubylibprefix = $(libdir)/$(RUBY_BASE_NAME) | ||
|  | exec_prefix = $(prefix) | ||
|  | vendorarchhdrdir = $(vendorhdrdir)/$(sitearch) | ||
|  | sitearchhdrdir = $(sitehdrdir)/$(sitearch) | ||
|  | rubyarchhdrdir = $(rubyhdrdir)/$(arch) | ||
|  | vendorhdrdir = $(rubyhdrdir)/vendor_ruby | ||
|  | sitehdrdir = $(rubyhdrdir)/site_ruby | ||
|  | rubyhdrdir = $(includedir)/$(RUBY_VERSION_NAME) | ||
|  | vendorarchdir = $(vendorlibdir)/$(sitearch) | ||
|  | vendorlibdir = $(vendordir)/$(ruby_version) | ||
|  | vendordir = $(rubylibprefix)/vendor_ruby | ||
|  | sitearchdir = $(DESTDIR)./.gem.20191020-69875-3w418n | ||
|  | sitelibdir = $(DESTDIR)./.gem.20191020-69875-3w418n | ||
|  | sitedir = $(rubylibprefix)/site_ruby | ||
|  | rubyarchdir = $(rubylibdir)/$(arch) | ||
|  | rubylibdir = $(rubylibprefix)/$(ruby_version) | ||
|  | sitearchincludedir = $(includedir)/$(sitearch) | ||
|  | archincludedir = $(includedir)/$(arch) | ||
|  | sitearchlibdir = $(libdir)/$(sitearch) | ||
|  | archlibdir = $(libdir)/$(arch) | ||
|  | ridir = $(datarootdir)/$(RI_BASE_NAME) | ||
|  | mandir = $(datarootdir)/man | ||
|  | localedir = $(datarootdir)/locale | ||
|  | libdir = $(exec_prefix)/lib | ||
|  | psdir = $(docdir) | ||
|  | pdfdir = $(docdir) | ||
|  | dvidir = $(docdir) | ||
|  | htmldir = $(docdir) | ||
|  | infodir = $(datarootdir)/info | ||
|  | docdir = $(datarootdir)/doc/$(PACKAGE) | ||
|  | oldincludedir = $(SDKROOT)/usr/include | ||
|  | includedir = $(prefix)/include | ||
|  | localstatedir = $(prefix)/var | ||
|  | sharedstatedir = $(prefix)/com | ||
|  | sysconfdir = $(prefix)/etc | ||
|  | datadir = $(datarootdir) | ||
|  | datarootdir = $(prefix)/share | ||
|  | libexecdir = $(exec_prefix)/libexec | ||
|  | sbindir = $(exec_prefix)/sbin | ||
|  | bindir = $(exec_prefix)/bin | ||
|  | archdir = $(rubyarchdir) | ||
|  | 
 | ||
|  | 
 | ||
|  | CC_WRAPPER =  | ||
|  | CC = gcc | ||
|  | CXX = g++ | ||
|  | LIBRUBY = $(LIBRUBY_SO) | ||
|  | LIBRUBY_A = lib$(RUBY_SO_NAME)-static.a | ||
|  | LIBRUBYARG_SHARED = -l$(RUBY_SO_NAME) | ||
|  | LIBRUBYARG_STATIC = -l$(RUBY_SO_NAME)-static -framework Security -framework Foundation $(MAINLIBS) | ||
|  | empty = | ||
|  | OUTFLAG = -o $(empty) | ||
|  | COUTFLAG = -o $(empty) | ||
|  | CSRCFLAG = $(empty) | ||
|  | 
 | ||
|  | RUBY_EXTCONF_H = extconf.h | ||
|  | cflags   = $(optflags) $(debugflags) $(warnflags) | ||
|  | cxxflags = $(optflags) $(debugflags) $(warnflags) | ||
|  | optflags = -O3 | ||
|  | debugflags = -ggdb3 | ||
|  | warnflags =  | ||
|  | cppflags =  | ||
|  | CCDLFLAGS = -fno-common | ||
|  | CFLAGS   = $(CCDLFLAGS) $(cflags)  -fno-common -pipe $(ARCH_FLAG) | ||
|  | INCFLAGS = -I. -I$(arch_hdrdir) -I$(hdrdir)/ruby/backward -I$(hdrdir) -I$(srcdir) | ||
|  | DEFS     =  | ||
|  | CPPFLAGS = -DRUBY_EXTCONF_H=\"$(RUBY_EXTCONF_H)\"  -I/usr/local/opt/libyaml/include -I/usr/local/opt/libksba/include -I/usr/local/opt/readline/include -I/usr/local/opt/zlib/include -I/usr/local/opt/openssl@1.1/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT $(DEFS) $(cppflags) | ||
|  | CXXFLAGS = $(CCDLFLAGS) $(cxxflags) $(ARCH_FLAG) | ||
|  | ldflags  = -L. -fstack-protector-strong -L/usr/local/lib -L/usr/local/opt/libyaml/lib -L/usr/local/opt/libksba/lib -L/usr/local/opt/readline/lib -L/usr/local/opt/zlib/lib -L/usr/local/opt/openssl@1.1/lib | ||
|  | dldflags = -Wl,-undefined,dynamic_lookup -Wl,-multiply_defined,suppress -L/usr/local/opt/libyaml/lib -L/usr/local/opt/libksba/lib -L/usr/local/opt/readline/lib -L/usr/local/opt/zlib/lib -L/usr/local/opt/openssl@1.1/lib  | ||
|  | ARCH_FLAG =  | ||
|  | DLDFLAGS = $(ldflags) $(dldflags) $(ARCH_FLAG) | ||
|  | LDSHARED = $(CC) -dynamic -bundle | ||
|  | LDSHAREDXX = $(CXX) -dynamic -bundle | ||
|  | AR = libtool -static | ||
|  | EXEEXT =  | ||
|  | 
 | ||
|  | RUBY_INSTALL_NAME = $(RUBY_BASE_NAME) | ||
|  | RUBY_SO_NAME = ruby.2.6 | ||
|  | RUBYW_INSTALL_NAME =  | ||
|  | RUBY_VERSION_NAME = $(RUBY_BASE_NAME)-$(ruby_version) | ||
|  | RUBYW_BASE_NAME = rubyw | ||
|  | RUBY_BASE_NAME = ruby | ||
|  | 
 | ||
|  | arch = x86_64-darwin18 | ||
|  | sitearch = $(arch) | ||
|  | ruby_version = 2.6.0 | ||
|  | ruby = $(bindir)/$(RUBY_BASE_NAME) | ||
|  | RUBY = $(ruby) | ||
|  | ruby_headers = $(hdrdir)/ruby.h $(hdrdir)/ruby/backward.h $(hdrdir)/ruby/ruby.h $(hdrdir)/ruby/defines.h $(hdrdir)/ruby/missing.h $(hdrdir)/ruby/intern.h $(hdrdir)/ruby/st.h $(hdrdir)/ruby/subst.h $(arch_hdrdir)/ruby/config.h $(RUBY_EXTCONF_H) | ||
|  | 
 | ||
|  | RM = rm -f | ||
|  | RM_RF = $(RUBY) -run -e rm -- -rf | ||
|  | RMDIRS = rmdir -p | ||
|  | MAKEDIRS = /usr/local/opt/coreutils/bin/gmkdir -p | ||
|  | INSTALL = /usr/local/opt/coreutils/bin/ginstall -c | ||
|  | INSTALL_PROG = $(INSTALL) -m 0755 | ||
|  | INSTALL_DATA = $(INSTALL) -m 644 | ||
|  | COPY = cp | ||
|  | TOUCH = exit > | ||
|  | 
 | ||
|  | #### End of system configuration section. ####
 | ||
|  | 
 | ||
|  | preload =  | ||
|  | libpath = . $(libdir) /usr/local/opt/libyaml/lib /usr/local/opt/libksba/lib /usr/local/opt/readline/lib /usr/local/opt/zlib/lib /usr/local/opt/openssl@1.1/lib | ||
|  | LIBPATH =  -L. -L$(libdir) -L/usr/local/opt/libyaml/lib -L/usr/local/opt/libksba/lib -L/usr/local/opt/readline/lib -L/usr/local/opt/zlib/lib -L/usr/local/opt/openssl@1.1/lib | ||
|  | DEFFILE =  | ||
|  | 
 | ||
|  | CLEANFILES = mkmf.log | ||
|  | DISTCLEANFILES =  | ||
|  | DISTCLEANDIRS =  | ||
|  | 
 | ||
|  | extout =  | ||
|  | extout_prefix =  | ||
|  | target_prefix =  | ||
|  | LOCAL_LIBS =  | ||
|  | LIBS = $(LIBRUBYARG_SHARED)    | ||
|  | ORIG_SRCS = AbstractMemory.c ArrayType.c Buffer.c Call.c ClosurePool.c DynamicLibrary.c Function.c FunctionInfo.c LastError.c LongDouble.c MappedType.c MemoryPointer.c MethodHandle.c Platform.c Pointer.c Struct.c StructByValue.c StructLayout.c Thread.c Type.c Types.c Variadic.c ffi.c | ||
|  | SRCS = $(ORIG_SRCS)  | ||
|  | OBJS = AbstractMemory.o ArrayType.o Buffer.o Call.o ClosurePool.o DynamicLibrary.o Function.o FunctionInfo.o LastError.o LongDouble.o MappedType.o MemoryPointer.o MethodHandle.o Platform.o Pointer.o Struct.o StructByValue.o StructLayout.o Thread.o Type.o Types.o Variadic.o ffi.o | ||
|  | HDRS = $(srcdir)/Type.h $(srcdir)/rbffi_endian.h $(srcdir)/MappedType.h $(srcdir)/Types.h $(srcdir)/LastError.h $(srcdir)/ArrayType.h $(srcdir)/extconf.h $(srcdir)/StructByValue.h $(srcdir)/AbstractMemory.h $(srcdir)/ClosurePool.h $(srcdir)/Call.h $(srcdir)/MethodHandle.h $(srcdir)/Struct.h $(srcdir)/rbffi.h $(srcdir)/Thread.h $(srcdir)/compat.h $(srcdir)/DynamicLibrary.h $(srcdir)/Platform.h $(srcdir)/Function.h $(srcdir)/LongDouble.h $(srcdir)/MemoryPointer.h $(srcdir)/Pointer.h | ||
|  | LOCAL_HDRS =  | ||
|  | TARGET = ffi_c | ||
|  | TARGET_NAME = ffi_c | ||
|  | TARGET_ENTRY = Init_$(TARGET_NAME) | ||
|  | DLLIB = $(TARGET).bundle | ||
|  | EXTSTATIC =  | ||
|  | STATIC_LIB =  | ||
|  | 
 | ||
|  | TIMESTAMP_DIR = . | ||
|  | BINDIR        = $(bindir) | ||
|  | RUBYCOMMONDIR = $(sitedir)$(target_prefix) | ||
|  | RUBYLIBDIR    = $(sitelibdir)$(target_prefix) | ||
|  | RUBYARCHDIR   = $(sitearchdir)$(target_prefix) | ||
|  | HDRDIR        = $(rubyhdrdir)/ruby$(target_prefix) | ||
|  | ARCHHDRDIR    = $(rubyhdrdir)/$(arch)/ruby$(target_prefix) | ||
|  | TARGET_SO_DIR = | ||
|  | TARGET_SO     = $(TARGET_SO_DIR)$(DLLIB) | ||
|  | CLEANLIBS     = $(TARGET_SO)  | ||
|  | CLEANOBJS     = *.o  *.bak | ||
|  | 
 | ||
|  | all:    $(DLLIB) | ||
|  | static: $(STATIC_LIB) | ||
|  | .PHONY: all install static install-so install-rb | ||
|  | .PHONY: clean clean-so clean-static clean-rb | ||
|  | 
 | ||
|  | clean-static:: | ||
|  | clean-rb-default:: | ||
|  | clean-rb:: | ||
|  | clean-so:: | ||
|  | clean: clean-so clean-static clean-rb-default clean-rb | ||
|  | 		-$(Q)$(RM) $(CLEANLIBS) $(CLEANOBJS) $(CLEANFILES) .*.time | ||
|  | 
 | ||
|  | distclean-rb-default:: | ||
|  | distclean-rb:: | ||
|  | distclean-so:: | ||
|  | distclean-static:: | ||
|  | distclean: clean distclean-so distclean-static distclean-rb-default distclean-rb | ||
|  | 		-$(Q)$(RM) Makefile $(RUBY_EXTCONF_H) conftest.* mkmf.log | ||
|  | 		-$(Q)$(RM) core ruby$(EXEEXT) *~ $(DISTCLEANFILES) | ||
|  | 		-$(Q)$(RMDIRS) $(DISTCLEANDIRS) 2> /dev/null || true | ||
|  | 
 | ||
|  | realclean: distclean | ||
|  | install: install-so install-rb | ||
|  | 
 | ||
|  | install-so: $(DLLIB) $(TIMESTAMP_DIR)/.sitearchdir.time | ||
|  | 	$(INSTALL_PROG) $(DLLIB) $(RUBYARCHDIR) | ||
|  | clean-static:: | ||
|  | 	-$(Q)$(RM) $(STATIC_LIB) | ||
|  | install-rb: pre-install-rb do-install-rb install-rb-default | ||
|  | install-rb-default: pre-install-rb-default do-install-rb-default | ||
|  | pre-install-rb: Makefile | ||
|  | pre-install-rb-default: Makefile | ||
|  | do-install-rb: | ||
|  | do-install-rb-default: | ||
|  | pre-install-rb-default: | ||
|  | 	@$(NULLCMD) | ||
|  | $(TIMESTAMP_DIR)/.sitearchdir.time: | ||
|  | 	$(Q) $(MAKEDIRS) $(@D) $(RUBYARCHDIR) | ||
|  | 	$(Q) $(TOUCH) $@ | ||
|  | 
 | ||
|  | site-install: site-install-so site-install-rb | ||
|  | site-install-so: install-so | ||
|  | site-install-rb: install-rb | ||
|  | 
 | ||
|  | .SUFFIXES: .c .m .cc .mm .cxx .cpp .o .S | ||
|  | 
 | ||
|  | .cc.o: | ||
|  | 	$(ECHO) compiling $(<) | ||
|  | 	$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$< | ||
|  | 
 | ||
|  | .cc.S: | ||
|  | 	$(ECHO) translating $(<) | ||
|  | 	$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$< | ||
|  | 
 | ||
|  | .mm.o: | ||
|  | 	$(ECHO) compiling $(<) | ||
|  | 	$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$< | ||
|  | 
 | ||
|  | .mm.S: | ||
|  | 	$(ECHO) translating $(<) | ||
|  | 	$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$< | ||
|  | 
 | ||
|  | .cxx.o: | ||
|  | 	$(ECHO) compiling $(<) | ||
|  | 	$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$< | ||
|  | 
 | ||
|  | .cxx.S: | ||
|  | 	$(ECHO) translating $(<) | ||
|  | 	$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$< | ||
|  | 
 | ||
|  | .cpp.o: | ||
|  | 	$(ECHO) compiling $(<) | ||
|  | 	$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$< | ||
|  | 
 | ||
|  | .cpp.S: | ||
|  | 	$(ECHO) translating $(<) | ||
|  | 	$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$< | ||
|  | 
 | ||
|  | .c.o: | ||
|  | 	$(ECHO) compiling $(<) | ||
|  | 	$(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$< | ||
|  | 
 | ||
|  | .c.S: | ||
|  | 	$(ECHO) translating $(<) | ||
|  | 	$(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$< | ||
|  | 
 | ||
|  | .m.o: | ||
|  | 	$(ECHO) compiling $(<) | ||
|  | 	$(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$< | ||
|  | 
 | ||
|  | .m.S: | ||
|  | 	$(ECHO) translating $(<) | ||
|  | 	$(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$< | ||
|  | 
 | ||
|  | $(TARGET_SO): $(OBJS) Makefile | ||
|  | 	$(ECHO) linking shared-object $(DLLIB) | ||
|  | 	-$(Q)$(RM) $(@) | ||
|  | 	$(Q) $(LDSHARED) -o $@ $(OBJS) $(LIBPATH) $(DLDFLAGS) $(LOCAL_LIBS) $(LIBS) | ||
|  | 	$(Q) $(POSTLINK) | ||
|  | 
 | ||
|  | 
 | ||
|  | 
 | ||
|  | $(OBJS): $(HDRS) $(ruby_headers) | ||
|  | LIBFFI_HOST=--host= | ||
|  | include ${srcdir}/libffi.darwin.mk |