<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -10,44 +10,36 @@ end
 
 task :compile =&gt; &quot;objc:compile&quot;
 
-fmdb_dir = File.dirname(__FILE__) + &quot;/fmdb&quot;
+fmdb_dir  = File.dirname(__FILE__) + &quot;/fmdb&quot;
+src_files = FileList['fmdb/FM*.m', 'Classes/*.m']
 
-# compile fmdb/*.m files into build/*.o files
-FileList['fmdb/FM*.m'].each do |fmdb_file|
+src_files.each do |file|
   FileUtils.mkdir_p &quot;build&quot;
-  base = fmdb_file.gsub(/\.m$/,'')
+  base = file.gsub(/\.m$/,'')
   dot_o = &quot;build/#{File.basename base}.o&quot;
   file dot_o =&gt; [&quot;#{base}.m&quot;, &quot;#{base}.h&quot;] do
-    sh &quot;gcc -c #{base}.m -o #{dot_o}&quot;
+    sh &quot;gcc -c #{base}.m -o #{dot_o} -I#{fmdb_dir} -IClasses&quot;
   end
 end
 
-fmdb_o_files = FileList['fmdb/FM*.m'].map { |fmdb_file| File.join(&quot;build&quot;, File.basename(fmdb_file).gsub(/m$/,'o')) }
+dot_o_files = src_files.map { |file| &quot;build/&quot; + File.basename(file).gsub(/\.m$/,'') + &quot;.o&quot; }
 
 namespace :objc do
-  # look for Classes/*.m files containing a line &quot;void Init_ClassName&quot;
-  # These are the primary classes for bundles; make a bundle for each
-  model_file_paths = `find Classes/*.m  -exec grep -l &quot;^void Init_&quot; {} \\;`.split(&quot;\n&quot;)
-  model_file_paths.each do |path|
-    path =~ /Classes\/(.*)\.m/
-    model_name = $1
-
-    task :compile =&gt; &quot;build/bundles/#{model_name}.bundle&quot; do
-      if Dir.glob(&quot;**/#{model_name}.bundle&quot;).length == 0
-        STDERR.puts &quot;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&quot;
-        STDERR.puts &quot;Bundle actually failed to build.&quot;
-        STDERR.puts &quot;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&quot;
-        exit(1)
-      end
-    end
-
-    file &quot;build/bundles/#{model_name}.bundle&quot; =&gt; fmdb_o_files + [&quot;Classes/#{model_name}.m&quot;, &quot;Classes/#{model_name}.h&quot;] do |t|
-      FileUtils.mkdir_p &quot;build/bundles&quot;
-      FileUtils.rm Dir[&quot;build/bundles/#{model_name}.bundle&quot;]
-      fmdb_files = FileList['build/FM*.o'].join(&quot; &quot;)
-      sh &quot;gcc -o build/bundles/#{model_name}.bundle #{fmdb_files} -bundle -framework Foundation -lsqlite3 -I#{fmdb_dir} Classes/#{model_name}.m&quot;
+  bundle_name = 'FmdbMigrationManager'
+
+  task :compile =&gt; &quot;build/bundles/#{bundle_name}.bundle&quot; do
+    if Dir.glob(&quot;**/#{bundle_name}.bundle&quot;).length == 0
+      STDERR.puts &quot;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&quot;
+      STDERR.puts &quot;Bundle actually failed to build.&quot;
+      STDERR.puts &quot;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&quot;
+      exit(1)
     end
   end
 
+  file &quot;build/bundles/#{bundle_name}.bundle&quot; =&gt; dot_o_files do |t|
+    FileUtils.mkdir_p &quot;build/bundles&quot;
+    FileUtils.rm Dir[&quot;build/bundles/#{bundle_name}.bundle&quot;]
+    sh &quot;gcc -o build/bundles/#{bundle_name}.bundle #{dot_o_files.join(&quot; &quot;)} -bundle -framework Foundation -lsqlite3 -I#{fmdb_dir} -IClasses&quot;
+  end
 end
 </diff>
      <filename>Rakefile</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>c30c9b029b85c4c528a1072d297174ccb7216714</id>
    </parent>
  </parents>
  <author>
    <name>Dr Nic Williams</name>
    <email>drnicwilliams@gmail.com</email>
  </author>
  <url>http://github.com/mocra/fmdb-migration-manager/commit/e463bb5b1c7e1e1b20138721023ca03c14f45bad</url>
  <id>e463bb5b1c7e1e1b20138721023ca03c14f45bad</id>
  <committed-date>2008-09-06T06:22:58-07:00</committed-date>
  <authored-date>2008-09-06T06:22:58-07:00</authored-date>
  <message>refactored build to support any number of Classes/*.m into single bundle; rather than multiple bundles</message>
  <tree>e53233daccb0b1f71c75d868b613f989c72f070b</tree>
  <committer>
    <name>Dr Nic Williams</name>
    <email>drnicwilliams@gmail.com</email>
  </committer>
</commit>
