add crude Makefile (someone please help!)
make SkFloatBits.cpp compile w/o floats
git-svn-id: http://skia.googlecode.com/svn/trunk@69 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..a30cfdc
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,47 @@
+
+CC = gcc
+C_INCLUDES := -Iinclude/core -Iinclude/effects -Iinclude/images -Iinclude/utils
+CFLAGS = -O2
+DEFINES = -DSK_BUILD_FOR_UNIX
+HIDE = @
+
+#DEFINES += -DSK_RELEASE
+DEFINES += -DSK_DEBUG -DSK_SUPPORT_UNITTEST
+#DEFINES += -DSK_SCALAR_IS_FIXED
+
+# start with the core (required)
+include src/core/core_files.mk
+SRC_LIST := $(addprefix src/core/, $(SOURCE))
+
+# we usually need ports
+include src/ports/ports_files.mk
+SRC_LIST += $(addprefix src/ports/, $(SOURCE))
+
+# do we want effects?
+include src/effects/effects_files.mk
+SRC_LIST += $(addprefix src/effects/, $(SOURCE))
+
+out/%.o : %.cpp
+ @mkdir -p $(dir $@)
+ $(HIDE)$(CC) $(C_INCLUDES) $(CFLAGS) $(DEFINES) -c $< -o $@
+ @echo "compiling $@"
+
+# now build out objects
+OBJ_LIST := $(SRC_LIST:.cpp=.o)
+OBJ_LIST := $(addprefix out/, $(OBJ_LIST))
+
+out/libskia.a: Makefile $(OBJ_LIST)
+ $(HIDE)$(AR) ru $@ $(OBJ_LIST)
+ $(HIDE)ranlib $@
+
+BENCH_SRCS := RectBench.cpp SkBenchmark.cpp main.cpp
+BENCH_SRCS := $(addprefix bench/, $(BENCH_SRCS))
+BENCH_OBJS := $(BENCH_SRCS:.cpp=.o)
+BENCH_OBJS := $(addprefix out/, $(BENCH_OBJS))
+
+bench: $(BENCH_OBJS) out/libskia.a
+ g++ $(BENCH_OBJS) out/libskia.a -o out/bench/bench
+
+clean:
+ $(HIDE)rm -rf out
+
diff --git a/bench/main.cpp b/bench/main.cpp
index 34a2b88..1b914ce 100644
--- a/bench/main.cpp
+++ b/bench/main.cpp
@@ -81,8 +81,10 @@
SkCanvas canvas(bm);
canvas.drawColor(SK_ColorWHITE);
+ printf("running bench %s\n", bench->getName());
bench->draw(&canvas);
-
+
+#if 0
SkString str;
make_filename(bench->getName(), &str);
str.prepend(outDir);
@@ -90,6 +92,7 @@
::remove(str.c_str());
SkImageEncoder::EncodeFile(str.c_str(), bm, SkImageEncoder::kPNG_Type,
100);
+#endif
}
return 0;
diff --git a/src/core/SkFloatBits.cpp b/src/core/SkFloatBits.cpp
index 1f15df2..1f675ff 100644
--- a/src/core/SkFloatBits.cpp
+++ b/src/core/SkFloatBits.cpp
@@ -145,6 +145,8 @@
}
}
+#ifdef SK_CAN_USE_FLOAT
+
float SkFloatBits_intToFloatNative(int x);
float SkFloatBits_intToFloatNative(int x) {
return x;
@@ -203,3 +205,4 @@
return data.fFloat;
}
+#endif
diff --git a/src/core/core_files.mk b/src/core/core_files.mk
new file mode 100644
index 0000000..93a68ae
--- /dev/null
+++ b/src/core/core_files.mk
@@ -0,0 +1,84 @@
+SOURCE := \
+ Sk64.cpp \
+ SkAlphaRuns.cpp \
+ SkBitmap.cpp \
+ SkBitmapProcShader.cpp \
+ SkBitmapProcState.cpp \
+ SkBitmapProcState_matrixProcs.cpp \
+ SkBitmapSampler.cpp \
+ SkBitmap_scroll.cpp \
+ SkBlitRow_D16.cpp \
+ SkBlitRow_D4444.cpp \
+ SkBlitter.cpp \
+ SkBlitter_4444.cpp \
+ SkBlitter_A1.cpp \
+ SkBlitter_A8.cpp \
+ SkBlitter_ARGB32.cpp \
+ SkBlitter_RGB16.cpp \
+ SkBlitter_Sprite.cpp \
+ SkBuffer.cpp \
+ SkCanvas.cpp \
+ SkChunkAlloc.cpp \
+ SkColor.cpp \
+ SkColorFilter.cpp \
+ SkColorTable.cpp \
+ SkComposeShader.cpp \
+ SkCordic.cpp \
+ SkDebug.cpp \
+ SkDebug_stdio.cpp \
+ SkDeque.cpp \
+ SkDevice.cpp \
+ SkDither.cpp \
+ SkDraw.cpp \
+ SkEdge.cpp \
+ SkFilterProc.cpp \
+ SkFlattenable.cpp \
+ SkFloat.cpp \
+ SkFloatBits.cpp \
+ SkGeometry.cpp \
+ SkGlobals.cpp \
+ SkGlyphCache.cpp \
+ SkGraphics.cpp \
+ SkMMapStream.cpp \
+ SkMask.cpp \
+ SkMaskFilter.cpp \
+ SkMath.cpp \
+ SkMatrix.cpp \
+ SkMemory_stdlib.cpp \
+ SkPackBits.cpp \
+ SkPaint.cpp \
+ SkPath.cpp \
+ SkPathEffect.cpp \
+ SkPathHeap.cpp \
+ SkPathMeasure.cpp \
+ SkPicture.cpp \
+ SkPictureFlat.cpp \
+ SkPicturePlayback.cpp \
+ SkPictureRecord.cpp \
+ SkPixelRef.cpp \
+ SkPoint.cpp \
+ SkPtrRecorder.cpp \
+ SkRasterizer.cpp \
+ SkRect.cpp \
+ SkRefCnt.cpp \
+ SkRegion.cpp \
+ SkRegion_path.cpp \
+ SkScalerContext.cpp \
+ SkScan.cpp \
+ SkScan_AntiPath.cpp \
+ SkScan_Antihair.cpp \
+ SkScan_Hairline.cpp \
+ SkScan_Path.cpp \
+ SkShader.cpp \
+ SkSpriteBlitter_ARGB32.cpp \
+ SkSpriteBlitter_RGB16.cpp \
+ SkStream.cpp \
+ SkString.cpp \
+ SkStroke.cpp \
+ SkStrokerPriv.cpp \
+ SkTSearch.cpp \
+ SkTypeface.cpp \
+ SkUnPreMultiply.cpp \
+ SkUtils.cpp \
+ SkWriter32.cpp \
+ SkXfermode.cpp
diff --git a/src/effects/effects_files.mk b/src/effects/effects_files.mk
new file mode 100644
index 0000000..5cee705
--- /dev/null
+++ b/src/effects/effects_files.mk
@@ -0,0 +1,21 @@
+SOURCE := \
+ Sk1DPathEffect.cpp \
+ Sk2DPathEffect.cpp \
+ SkTransparentShader.cpp \
+ SkAvoidXfermode.cpp \
+ SkBlurDrawLooper.cpp \
+ SkBlurMask.cpp \
+ SkBlurMaskFilter.cpp \
+ SkColorFilters.cpp \
+ SkColorMatrixFilter.cpp \
+ SkCornerPathEffect.cpp \
+ SkDashPathEffect.cpp \
+ SkDiscretePathEffect.cpp \
+ SkEmbossMask.cpp \
+ SkEmbossMaskFilter.cpp \
+ SkGradientShader.cpp \
+ SkKernel33MaskFilter.cpp \
+ SkLayerDrawLooper.cpp \
+ SkLayerRasterizer.cpp \
+ SkPaintFlagsDrawFilter.cpp \
+ SkPixelXorXfermode.cpp
diff --git a/src/ports/ports_files.mk b/src/ports/ports_files.mk
new file mode 100644
index 0000000..07dacfa
--- /dev/null
+++ b/src/ports/ports_files.mk
@@ -0,0 +1,6 @@
+SOURCE := \
+ SkFontHost_none.cpp \
+ SkGlobals_global.cpp \
+ SkOSFile_stdio.cpp \
+ SkThread_pthread.cpp \
+ SkTime_Unix.cpp