Updated build system for Mac OS X

This commit is contained in:
kintel 2007-10-28 18:47:28 +00:00
parent 8863c003e4
commit c9679e65c9
11 changed files with 138 additions and 232 deletions

View File

@ -1,36 +1,25 @@
## Makefile for 3d-viewer.a ( wxMAC - mac os X)
CC = gcc
# Compiler flags.
CPPFLAGS = -Wall -O2 -DPCBNEW -I../pcbnew -I ../include -I../common\
`wx-config --cxxflags`
CPPFLAGS += -arch i386 -arch ppc
## Makefile for 3d-viewer.a
include ../libs.macosx
TARGET = 3d-viewer
TARGET = 3d-viewer.a
FINAL = 1
all: $(TARGET).a
all: $(TARGET)
include makefile.include
CPPFLAGS += -DPCBNEW -I../pcbnew
EDACPPFLAGS = $(CPPFLAGS)
$(TARGET).a: $(OBJECTS3D) makefile.gtk makefile.include
$(TARGET): $(OBJECTS3D) makefile.macosx makefile.include
rm -f $@
ar -rv $@ $(OBJECTS3D)
ranlib $@
clean:
rm -f *.o
rm -f *.exe
rm -f *.res
rm -f *.map
rm -f $(TARGET).a
rm -f *.o; rm -f *~
rm -f $(TARGET)

36
Info.plist.in Normal file
View File

@ -0,0 +1,36 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd">
<plist version="0.9">
<dict>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleIdentifier</key>
<string>org.kicad-eda.EXECUTABLE</string>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleExecutable</key>
<string>EXECUTABLE</string>
<key>CFBundleIconFile</key>
<string>EXECUTABLE.icns</string>
<key>CFBundleName</key>
<string>EXECUTABLE</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>0.1</string>
<key>CFBundleShortVersionString</key>
<string>0.1</string>
<key>CFBundleGetInfoString</key>
<string>EXECUTABLE version 0.1</string>
<key>CFBundleLongVersionString</key>
<string>0.1</string>
<key>NSHumanReadableCopyright</key>
<string>Copyleft 2007</string>
<key>LSRequiresCarbon</key>
<true/>
<key>CSResourcesFileMapped</key>
<true/>
</dict>
</plist>

View File

@ -1,27 +1,21 @@
## Makefile for common.a
CC = gcc
# Compiler flags.
CPPFLAGS = -Wall -O2 -I./ -I../include `wx-config --cxxflags`
CPPFLAGS += -arch i386 -arch ppc
include ../libs.macosx
EDACPPFLAGS = $(CPPFLAGS)
TARGET = pcbnew
all: common.a
all: $(TARGET)
include makefile.include
CPPFLAGS += $(EXTRACPPFLAGS)
EDACPPFLAGS = $(CPPFLAGS)
common.a: $(OBJECTS) makefile.macosx makefile.include
$(TARGET): $(OBJECTS) makefile.macosx makefile.include
rm -f $@
ar -rv $@ $(OBJECTS)
ranlib $@
clean:
rm -f *.o; rm -f *~; rm core; rm *.bak; rm *.obj
rm -f common.a
rm -f *.o; rm -f *~
rm -f $(TARGET)

View File

@ -1,59 +1,39 @@
# File: makefile
# Compiler flags.
CC = gcc
LD = g++
FINAL = 1
# Compiler flags.
CPPFLAGS = -Wall -O2 `wx-config --cxxflags`
LDFLAGS =
EDACPPFLAGS = $(CPPFLAGS)
## Makefile for kicad
include ../libs.macosx
TARGET = cvpcb
all: $(TARGET) $(TARGET).app
all: $(TARGET).app
include makefile.include
CPPFLAGS += $(EXTRACPPFLAGS)
CPPFLAGS += -arch i386 -arch ppc
EDACPPFLAGS = $(CPPFLAGS)
$(TARGET): $(OBJECTS) $(TARGET).r makefile.macosx makefile.include $(EXTRALIBS) ../libs.macosx $(LIBVIEWER3D)
$(LD) $(OBJECTS) $(LDFLAGS) $(LIBVIEWER3D) $(LIBS3D) -o $(TARGET)
$(RESCOMP) -o $(TARGET) Carbon.r $(TARGET).r
$(SETFILE) -a C $(TARGET)
$(TARGET).app: $(OBJS)
rm -Rf $(TARGET).app
$(TARGET).app: $(TARGET)
rm -rf $(TARGET).app
mkdir -p $(TARGET).app
mkdir -p $(TARGET).app/Contents
mkdir -p $(TARGET).app/Contents/MacOS
mkdir -p $(TARGET).app/Contents/Frameworks
mkdir -p $(TARGET).app/Contents/Resources
sed -e "s/IDENTIFIER/`echo . | sed -e s,\.\./,,g | sed -e s,/,.,g`/" -e "s/EXECUTABLE/$(TARGET)/" \
-e "s/VERSION/$(MKMK_WX_VERSION)/" $(HOME)/wxMac-$(MKMK_WX_VERSION)/src/mac/carbon/wxmac.icns \
>$(TARGET).app/Contents/Resources/wxmac.icns
sed -e "s/IDENTIFIER/`echo . | sed -e s,\.\./,,g | sed -e s,/,.,g`/" -e "s/EXECUTABLE/$(TARGET)/"\
-e "s/VERSION/$(MKMK_WX_VERSION)/" $(HOME)/wxMac-$(MKMK_WX_VERSION)/src/mac/carbon/Info.plist.in \
cp $(TARGET).icns $(TARGET).app/Contents/Resources/$(TARGET).icns
sed -e "s/EXECUTABLE/$(TARGET)/" ../Info.plist.in \
>$(TARGET).app/Contents/Info.plist
echo -n "APPL????" >$(TARGET).app/Contents/PkgInfo
ln -f $(TARGET) $(TARGET).app/Contents/MacOS/$(TARGET)
cp $(TARGET) $(TARGET).app/Contents/MacOS/$(TARGET)
install:
cp -f $(TARGET) $(KICAD_BIN)
install: $(TARGET).app
cp -Rf $(TARGET).app $(KICAD_BIN)
clean:
rm *.o
rm $(TARGET)
rm -f *.o; rm -f *~
rm -rf $(TARGET).app
rm -f $(TARGET)

View File

@ -1,26 +1,14 @@
## Makefile for eeschema
CC = gcc
LD = g++
FINAL = 1
LDFLAGS =
include ../libs.macosx
TARGET = eeschema
CPPFLAGS = -Wall -O2 `wx-config --cxxflags`
all: $(TARGET) $(TARGET).app netlist_form_pads-pcb
all: $(TARGET).app netlist_form_pads-pcb
include makefile.include
CPPFLAGS += $(EXTRACPPFLAGS)
CPPFLAGS += -arch i386 -arch ppc
EDACPPFLAGS = $(CPPFLAGS)
$(TARGET): $(OBJECTS) $(TARGET).r makefile.macosx makefile.include $(EXTRALIBS) ../libs.macosx
@ -29,39 +17,29 @@ $(TARGET): $(OBJECTS) $(TARGET).r makefile.macosx makefile.include $(EXTRALIBS)
$(SETFILE) -a C $(TARGET)
$(TARGET).app: $(OBJS)
rm -Rf $(TARGET).app
$(TARGET).app: $(TARGET)
rm -rf $(TARGET).app
mkdir -p $(TARGET).app
mkdir -p $(TARGET).app/Contents
mkdir -p $(TARGET).app/Contents/MacOS
mkdir -p $(TARGET).app/Contents/Frameworks
mkdir -p $(TARGET).app/Contents/Resources
sed -e "s/IDENTIFIER/`echo . | sed -e s,\.\./,,g | sed -e s,/,.,g`/" -e "s/EXECUTABLE/$(TARGET)/" \
-e "s/VERSION/$(MKMK_WX_VERSION)/" $(HOME)/wxMac-$(MKMK_WX_VERSION)/src/mac/carbon/wxmac.icns \
>$(TARGET).app/Contents/Resources/wxmac.icns
sed -e "s/IDENTIFIER/`echo . | sed -e s,\.\./,,g | sed -e s,/,.,g`/" -e "s/EXECUTABLE/$(TARGET)/"\
-e "s/VERSION/$(MKMK_WX_VERSION)/" $(HOME)/wxMac-$(MKMK_WX_VERSION)/src/mac/carbon/Info.plist.in \
cp $(TARGET).icns $(TARGET).app/Contents/Resources/$(TARGET).icns
sed -e "s/EXECUTABLE/$(TARGET)/" ../Info.plist.in \
>$(TARGET).app/Contents/Info.plist
echo -n "APPL????" >$(TARGET).app/Contents/PkgInfo
ln -f $(TARGET) $(TARGET).app/Contents/MacOS/$(TARGET)
cp $(TARGET) $(TARGET).app/Contents/MacOS/$(TARGET)
netlist_form_pads-pcb: plugins/netlist_form_pads-pcb.cpp
g++ $(CXXFLAGS) -Wall plugins/netlist_form_pads-pcb.cpp -o netlist_form_pads-pcb
g++ -D__UNIX__ $(CXXFLAGS) -Wall plugins/netlist_form_pads-pcb.cpp -o netlist_form_pads-pcb
install: $(TARGET)
cp $(TARGET) $(KICAD_BIN)
cp netlist_form_pads-pcb $(KICAD_BIN)
install: $(TARGET).app
cp -Rf $(TARGET).app $(KICAD_BIN)
cp -f netlist_form_pads-pcb $(KICAD_BIN)
clean:
rm -f *.o; rm -f *~; rm core; rm *.bak
rm -f *.o; rm -f *~
rm -rf $(TARGET).app
rm -f $(TARGET)
rm -f netlist_form_pads-pcb

View File

@ -1,21 +0,0 @@
# File: makefile for eeschema, mingw
#used only to define (KICAD_BIN) :
include ../../libs.macosx
all: netlist_form_pads-pcb
netlist_form_pads-pcb: netlist_form_pads-pcb.cpp
g++ -D__UNIX__ -Wall netlist_form_pads-pcb.cpp -o netlist_form_pads-pcb
install:
cp -v all $(KICAD_BIN)/plugins/
clean :
rm -f *.o
rm -f *.rsc
rm -f *.res
rm -f *.exe
rm -f *.bak

View File

@ -1,59 +1,38 @@
## Makefile for GERBVIEW et wxGTK
CC = gcc
LD = g++
## Makefile for gerbview
# Compiler flags.
CPPFLAGS = -Wall -O2 `wx-config --cxxflags`
LDFLAGS =
EXTRALIBS = ../common/common.a
include ../libs.macosx
TARGET = gerbview
all: $(TARGET) $(TARGET).app
all: $(TARGET).app
include makefile.include
CPPFLAGS += $(EXTRACPPFLAGS)
CPPFLAGS += -arch i386 -arch ppc
EDACPPFLAGS = $(CPPFLAGS)
$(TARGET): $(OBJECTS) $(TARGET).r makefile.macosx makefile.include $(EXTRALIBS) ../libs.macosx
$(LD) $(LDFLAGS) $(OBJECTS) $(LIBS) -o $(TARGET)
$(LD) $(OBJECTS) $(LDFLAGS) $(LIBS) -o $(TARGET)
$(RESCOMP) -o $(TARGET) Carbon.r $(TARGET).r
$(SETFILE) -a C $(TARGET)
$(TARGET).app: $(OBJS)
rm -Rf $(TARGET).app
$(TARGET).app: $(TARGET)
rm -rf $(TARGET).app
mkdir -p $(TARGET).app
mkdir -p $(TARGET).app/Contents
mkdir -p $(TARGET).app/Contents/MacOS
mkdir -p $(TARGET).app/Contents/Frameworks
mkdir -p $(TARGET).app/Contents/Resources
sed -e "s/IDENTIFIER/`echo . | sed -e s,\.\./,,g | sed -e s,/,.,g`/" -e "s/EXECUTABLE/$(TARGET)/" \
-e "s/VERSION/$(MKMK_WX_VERSION)/" $(HOME)/wxMac-$(MKMK_WX_VERSION)/src/mac/carbon/wxmac.icns \
>$(TARGET).app/Contents/Resources/wxmac.icns
sed -e "s/IDENTIFIER/`echo . | sed -e s,\.\./,,g | sed -e s,/,.,g`/" -e "s/EXECUTABLE/$(TARGET)/"\
-e "s/VERSION/$(MKMK_WX_VERSION)/" $(HOME)/wxMac-$(MKMK_WX_VERSION)/src/mac/carbon/Info.plist.in \
cp $(TARGET).icns $(TARGET).app/Contents/Resources/$(TARGET).icns
sed -e "s/EXECUTABLE/$(TARGET)/" ../Info.plist.in \
>$(TARGET).app/Contents/Info.plist
echo -n "APPL????" >$(TARGET).app/Contents/PkgInfo
ln -f $(TARGET) $(TARGET).app/Contents/MacOS/$(TARGET)
install:
cp $(TARGET) $(KICAD_BIN)
cp $(TARGET) $(TARGET).app/Contents/MacOS/$(TARGET)
install: $(TARGET).app
cp -Rf $(TARGET).app $(KICAD_BIN)
clean:
rm -f *.o
rm -f *.exe
rm -f *.res
rm -f *.map
rm -f *.o; rm -f *~
rm -rf $(TARGET).app
rm -f $(TARGET)

View File

@ -1,64 +1,39 @@
# File: makefile for kicad, wxGTK
# Compiler flags.
CC = gcc
LD = g++
FINAL = 1
# Compiler flags.
CPPFLAGS = -Wall -O2 `wx-config --cxxflags`
CPPFLAGS += -arch i386 -arch ppc
LDFLAGS =
## Makefile for kicad
include ../libs.macosx
TARGET = kicad
all: $(TARGET) $(TARGET).app
all: $(TARGET).app
include makefile.include
CPPFLAGS += $(EXTRACPPFLAGS)
EDACPPFLAGS = $(CPPFLAGS)
$(TARGET): $(OBJECTS) $(TARGET).r makefile.macosx $(EXTRALIBS) ../libs.macosx
$(LD) $(OBJECTS) $(LDFLAGS) $(LIBS) -o $(TARGET)
$(TARGET): $(OBJECTS) $(TARGET).r makefile.macosx makefile.include $(EXTRALIBS) ../libs.macosx
$(LD) $(OBJECTS) $(LDFLAGS) $(LIBS) -o $(TARGET)
$(RESCOMP) -o $(TARGET) Carbon.r $(TARGET).r
$(SETFILE) -a C $(TARGET)
$(TARGET).app: $(OBJS)
rm -Rf $(TARGET).app
$(TARGET).app: $(TARGET)
rm -rf $(TARGET).app
mkdir -p $(TARGET).app
mkdir -p $(TARGET).app/Contents
mkdir -p $(TARGET).app/Contents/MacOS
mkdir -p $(TARGET).app/Contents/Frameworks
mkdir -p $(TARGET).app/Contents/Resources
sed -e "s/IDENTIFIER/`echo . | sed -e s,\.\./,,g | sed -e s,/,.,g`/" -e "s/EXECUTABLE/$(TARGET)/" \
-e "s/VERSION/$(MKMK_WX_VERSION)/" $(HOME)/wxMac-$(MKMK_WX_VERSION)/src/mac/carbon/wxmac.icns \
>$(TARGET).app/Contents/Resources/wxmac.icns
sed -e "s/IDENTIFIER/`echo . | sed -e s,\.\./,,g | sed -e s,/,.,g`/" -e "s/EXECUTABLE/$(TARGET)/"\
-e "s/VERSION/$(MKMK_WX_VERSION)/" $(HOME)/wxMac-$(MKMK_WX_VERSION)/src/mac/carbon/Info.plist.in \
cp $(TARGET).icns $(TARGET).app/Contents/Resources/$(TARGET).icns
sed -e "s/EXECUTABLE/$(TARGET)/" ../Info.plist.in \
>$(TARGET).app/Contents/Info.plist
echo -n "APPL????" >$(TARGET).app/Contents/PkgInfo
ln -f $(TARGET) $(TARGET).app/Contents/MacOS/$(TARGET)
cp $(TARGET) $(TARGET).app/Contents/MacOS/$(TARGET)
install:$(TARGET)
cp -f $(TARGET) $(KICAD_BIN)
install: $(TARGET).app
cp -Rf $(TARGET).app $(KICAD_BIN)
clean:
rm -f *.o;
rm -f *~;
rm -f core;
rm -f *.bak
rm -f *.o; rm -f *~
rm -rf $(TARGET).app
rm -f $(TARGET)

View File

@ -1,28 +1,41 @@
#Configuration for build kicad
KICAD_BIN = /usr/local/kicad/macosx
KICAD_BIN = $(HOME)/install/kicad/macosx
RESCOMP = /Developer/Tools/Rez -d __DARWIN__ -t APPL -d __WXMAC__ -i .
SETFILE = /Developer/Tools/SetFile
MKMK_WX_VERSION=`wx-config --version`
CPPFLAGS = -D__UNIX__ -Wall -I../include `wx-config --cxxflags`
LDFLAGS =
CC = g++
LD = g++
SRCSUFF = .cpp
OBJSUFF = .o
FINAL = 1
# turn on/off debugging for all executables, only tested without KICAD_PYTHON
DEBUG = 1
ifeq ($(DEBUG), 1)
CPPFLAGS += -g
else
CPPFLAGS += -O2
endif
# turn on/off universal binaries
UNIVERSAL = 0
ifeq ($(UNIVERSAL), 1)
CPPFLAGS += -arch i386 -arch ppc
endif
# You must comment or uncomment this line to disable/enable python support
#KICAD_PYTHON = 1
ifdef KICAD_PYTHON
PYLIBS= -L/usr/lib
PYLIBS+= -L /usr/include/python
PYLIBS+= -lpython2.4
PYLIBS+= -lboost_python
EXTRACPPFLAGS+=-I /usr/include/python2.4 -DKICAD_PYTHON -fno-strict-aliasing -ggdb
EXTRACPPFLAGS+=-I /usr/include/python2.4 -DKICAD_PYTHON -fno-strict-aliasing
endif
LIBS = ../common/common.a `wx-config --libs` $(PYLIBS)
LIBS3D = ../common/common.a `wx-config --libs std,gl` $(PYLIBS)
LIBS3D = ../common/common.a `wx-config --libs std,gl` -framework OpenGL $(PYLIBS)

View File

@ -1,7 +1,7 @@
KICAD_SUBDIRS = common 3d-viewer eeschema eeschema/plugins pcbnew cvpcb kicad gerbview
KICAD_SUBDIRS_BIN = eeschema eeschema/plugins pcbnew cvpcb kicad gerbview
KICAD_SUBDIRS = common 3d-viewer eeschema pcbnew cvpcb kicad gerbview
KICAD_SUBDIRS_BIN = eeschema pcbnew cvpcb kicad gerbview
# How to invoke make:
MAKE = make -k -f makefile.macosx
MAKE = make -f makefile.macosx
MAKE_INSTALL = make -f makefile.macosx install
MAKE_CLEAN = make -f makefile.macosx clean

View File

@ -1,55 +1,38 @@
## Makefile for PCBNEW et wxGTK
CC = gcc
LD = g++
# Compiler flags.
CPPFLAGS = -Wall -O2 `wx-config --cxxflags`
LDFLAGS =
## Makefile for pcbnew
include ../libs.macosx
TARGET = pcbnew
all: $(TARGET) $(TARGET).app
all: $(TARGET).app
include makefile.include
CPPFLAGS += $(EXTRACPPFLAGS)
CPPFLAGS += -arch i386 -arch ppc
EDACPPFLAGS = $(CPPFLAGS)
$(TARGET): $(OBJECTS) $(TARGET).r makefile.macosx makefile.include $(LIBVIEWER3D) $(EXTRALIBS) ../libs.macosx
$(LD) $(LDFLAGS) $(OBJECTS) $(LIBVIEWER3D) $(LIBS3D) -o $(TARGET)
$(LD) $(LDFLAGS) $(OBJECTS) $(LIBVIEWER3D) $(LIBS3D) -o $(TARGET)
$(RESCOMP) -o $(TARGET) Carbon.r $(TARGET).r
$(SETFILE) -a C $(TARGET)
install: $(TARGET)
cp $(TARGET) $(KICAD_BIN)
$(TARGET).app: $(OBJS)
rm -Rf $(TARGET).app
$(TARGET).app: $(TARGET)
rm -rf $(TARGET).app
mkdir -p $(TARGET).app
mkdir -p $(TARGET).app/Contents
mkdir -p $(TARGET).app/Contents/MacOS
mkdir -p $(TARGET).app/Contents/Frameworks
mkdir -p $(TARGET).app/Contents/Resources
sed -e "s/IDENTIFIER/`echo . | sed -e s,\.\./,,g | sed -e s,/,.,g`/" -e "s/EXECUTABLE/$(TARGET)/" \
-e "s/VERSION/$(MKMK_WX_VERSION)/" $(HOME)/wxMac-$(MKMK_WX_VERSION)/src/mac/carbon/wxmac.icns \
>$(TARGET).app/Contents/Resources/wxmac.icns
sed -e "s/IDENTIFIER/`echo . | sed -e s,\.\./,,g | sed -e s,/,.,g`/" -e "s/EXECUTABLE/$(TARGET)/"\
-e "s/VERSION/$(MKMK_WX_VERSION)/" $(HOME)/wxMac-$(MKMK_WX_VERSION)/src/mac/carbon/Info.plist.in \
cp $(TARGET).icns $(TARGET).app/Contents/Resources/$(TARGET).icns
sed -e "s/EXECUTABLE/$(TARGET)/" ../Info.plist.in \
>$(TARGET).app/Contents/Info.plist
echo -n "APPL????" >$(TARGET).app/Contents/PkgInfo
ln -f $(TARGET) $(TARGET).app/Contents/MacOS/$(TARGET)
cp $(TARGET) $(TARGET).app/Contents/MacOS/$(TARGET)
install: $(TARGET).app
cp -Rf $(TARGET).app $(KICAD_BIN)
clean:
rm -f *.o
rm -f *.map
rm -f *.o; rm -f *~
rm -rf $(TARGET).app
rm -f $(TARGET)