Jump to content

VinceD

Members
  • Posts

    2
  • Joined

  • Last visited

Posts posted by VinceD

  1. Just realized you can't open patch @DereKC. Slight changes made to Makefile.osx

    # -*- Makefile -*-
    # Mac OSX makefile for FreeImage
    
    # This file can be generated by ./gensrclist.sh
    include Makefile.srcs
    
    # Find SDK path via xcode-select, backwards compatible with Xcode vers < 4.5
    MACOSX_SYSROOT = $(shell xcrun --show-sdk-path)
    # Specify deployement target here
    MACOSX_DEPLOYMENT_TARGET = 10.11
    
    # General configuration variables:
    CC_I386 = $(shell xcrun -find clang)
    CC_X86_64 = $(shell xcrun -find clang)
    CPP_I386 = $(shell xcrun -find clang++)
    CPP_X86_64 = $(shell xcrun -find clang++)
    MACOSX_DEPLOY = -mmacosx-version-min=$(MACOSX_DEPLOYMENT_TARGET)
    COMPILERFLAGS = -Os -fexceptions -fvisibility=hidden -DNO_LCMS -D__ANSI__ -DDISABLE_PERF_MEASUREMENT -DPNG_ARM_NEON_OPT=0
    COMPILERFLAGS_I386 = -arch i386
    COMPILERFLAGS_X86_64 = -arch x86_64 -arch arm64
    COMPILERPPFLAGS = -Wno-ctor-dtor-privacy -D__ANSI__ -std=c++11 -stdlib=libc++ -Wc++11-narrowing
    INCLUDE +=
    INCLUDE_I386 = -isysroot $(MACOSX_SYSROOT)
    INCLUDE_X86_64 = -isysroot $(MACOSX_SYSROOT)
    CFLAGS_I386 = $(COMPILERFLAGS) $(COMPILERFLAGS_I386) $(INCLUDE) $(INCLUDE_I386) $(MACOSX_DEPLOY)
    CFLAGS_X86_64 = $(COMPILERFLAGS) $(COMPILERFLAGS_X86_64) $(INCLUDE) $(INCLUDE_X86_64) $(MACOSX_DEPLOY)
    CPPFLAGS_I386 = $(COMPILERPPFLAGS) $(CFLAGS_I386)
    CPPFLAGS_X86_64 = $(COMPILERPPFLAGS) $(CFLAGS_X86_64)
    LIBRARIES_I386 = $(MACOSX_DEPLOY) -Wl,-syslibroot $(MACOSX_SYSROOT)
    LIBRARIES_X86_64 = $(MACOSX_DEPLOY) -Wl,-syslibroot $(MACOSX_SYSROOT)
    LIBTOOL = libtool
    LIPO = lipo
    
    TARGET = freeimage
    STATICLIB = lib$(TARGET).a
    SHAREDLIB = lib$(TARGET).$(VER_MAJOR).$(VER_MINOR).dylib
    VERLIBNAME = lib$(TARGET).$(VER_MAJOR).dylib
    LIBNAME = lib$(TARGET).dylib
    HEADER = Source/FreeImage.h
    
    .SUFFIXES: .o-i386 .o-x86_64
    MODULES_I386 = $(SRCS:.c=.o-i386)
    MODULES_X86_64 = $(SRCS:.c=.o-x86_64)
    MODULES_I386 := $(MODULES_I386:.cpp=.o-i386)
    MODULES_X86_64 := $(MODULES_X86_64:.cpp=.o-x86_64)
    
    DESTDIR ?= /usr/local
    INSTALLDIR ?= $(DESTDIR)/lib
    INCDIR ?= $(DESTDIR)/include
    
    default: all
    
    all: dist
    
    # ONLY STATIC AND DYNAMIC 64 BIT // START ---
    
    dist: FreeImage
    	cp *.a Dist
    	cp *.dylib Dist
    	cp Source/FreeImage.h Dist
    
    $(STATICLIB): $(STATICLIB)-x86_64
    	cp -p $(STATICLIB)-x86_64 $(STATICLIB)
    
    # --- END
    
    # STATIC AND DYNAMIC 32 and 64 BIT // START ---
    
    #dist: FreeImage
    #	cp *.a Dist
    #	cp *.dylib Dist
    #	cp Source/FreeImage.h Dist
    
    FreeImage: $(STATICLIB) $(SHAREDLIB)
    
    #$(STATICLIB): $(STATICLIB)-i386 $(STATICLIB)-x86_64
    #	$(LIPO) -create $(STATICLIB)-i386 $(STATICLIB)-x86_64 -output $(STATICLIB)
    
    # --- END
    
    $(STATICLIB)-i386: $(MODULES_I386)
    	$(LIBTOOL) -arch_only i386 -o $@ $(MODULES_I386)
    
    $(STATICLIB)-x86_64: $(MODULES_X86_64)
    	$(LIBTOOL) -o $@ $(MODULES_X86_64)
    
    $(SHAREDLIB): $(SHAREDLIB)-x86_64
    	$(LIPO) -create $(SHAREDLIB)-x86_64 -output $(SHAREDLIB)
    
    $(SHAREDLIB)-i386: $(MODULES_I386)
    	$(CPP_I386) -arch i386 -dynamiclib $(LIBRARIES_I386) -o $@ $(MODULES_I386)
    
    $(SHAREDLIB)-x86_64: $(MODULES_X86_64)
    	$(CPP_X86_64) -dynamiclib $(LIBRARIES_X86_64) -o $@ $(MODULES_X86_64)
    
    .c.o-i386:
    	$(CC_I386) $(CFLAGS_I386) -c $< -o $@
    
    .c.o-x86_64:
    	$(CC_X86_64) $(CFLAGS_X86_64) -c $< -o $@
    
    .cpp.o-i386:
    	$(CPP_I386) $(CPPFLAGS_I386) -c $< -o $@
    
    .cpp.o-x86_64:
    	$(CPP_X86_64) $(CPPFLAGS_X86_64) -c $< -o $@
    
    install:
    	install -d -m 755 -o $(USER) -g staff $(INCDIR) $(INSTALLDIR)
    	install -m 644 -o $(USER) -g staff $(HEADER) $(INCDIR)
    	install -m 644 -o $(USER) -g staff $(SHAREDLIB) $(STATICLIB) $(INSTALLDIR)
    	ranlib -sf $(INSTALLDIR)/$(STATICLIB)
    	ln -sf $(SHAREDLIB) $(INSTALLDIR)/$(VERLIBNAME)
    	ln -sf $(SHAREDLIB) $(INSTALLDIR)/$(LIBNAME)
    
    clean:
    	rm -f core Dist/*.* u2dtmp* $(MODULES_I386) $(MODULES_X86_64) $(STATICLIB) $(STATICLIB)-i386 $(SHAREDLIB) $(SHAREDLIB)-i386 $(SHAREDLIB)-x86_64

     

×
×
  • Create New...