Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Loading…

New Formula: pev v0.50 #13263

Closed
wants to merge 1 commit into from

3 participants

@farproc

pev is a toolkit designed for PE analysis and has no dependencies.

@adamv
Owner

The makefiles / configure script hard-code the choice of "gcc" on OS X.

@adamv
Owner

The libraries are installed using unix-style sonames instead of dylib.

@farproc

How's that look? Sorry for the issues...must try harder ;)

@farproc

ping?

@farproc

is there anything else I can do?

@adamv
Owner

Please squash to a single commit for review, thanks.

@farproc farproc New Formula: pev v0.50
pev is a toolkit designed for PE analysis and has no dependencies.
2b8cfaf
@farproc

fixed tab width - sorry about that

@adamv
Owner

@Sharpie @mistydemeo @jacknagel can someone review this one?

@mistydemeo
Owner

Is there any chance of getting Mac support in the configure script and makefile upstream?

@adamv
Owner

There was an upstream commit: merces/pev@eaaaec6

@adamv adamv referenced this pull request in merces/pev
Closed

Tag 0.6 or 0.5.1 #27

@adamv
Owner

Can someone update this pull request to 0.6? It was just tagged upstream.

@adamv
Owner

Will accept an updated pull request for 0.6.0, now that upstream has it tagged.

@adamv adamv closed this
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Commits on Sep 4, 2012
  1. @farproc

    New Formula: pev v0.50

    farproc authored
    pev is a toolkit designed for PE analysis and has no dependencies.
This page is out of date. Refresh to see the latest.
Showing with 36 additions and 0 deletions.
  1. +36 −0 Library/Formula/pev.rb
View
36 Library/Formula/pev.rb
@@ -0,0 +1,36 @@
+require 'formula'
+
+class Pev < Formula
+ homepage 'http://pev.sourceforge.net/'
+ url 'https://github.com/merces/pev/tarball/v0.50'
+ sha1 '03ca75ac004946b463a37837870e43809113bf8a'
+
+ def install
+ # Fix:
+ # hardcoded gcc
+ # build dylibs instead
+ # don't put symlinks in ./lib/
+ inreplace 'configure' do |f|
+ f.gsub! "new_cc=\'gcc\'", "new_cc='#{ENV.cc}'"
+ f.gsub! "replace \"s/^CC=.*/CC=$new_cc/\" \"$makef_libpe\"", "replace \"s!^CC=.*!CC=$new_cc!\" \"$makef_libpe\""
+ f.gsub! "replace \"s/^CC=.*/CC=$new_cc/\" \"$makef_pev\"", "replace \"s!^CC=.*!CC=$new_cc!\" \"$makef_pev\""
+ f.gsub! "new_libpe='-shared -Wl,-install_name,$(LIBNAME).so.1 -o $(LIBNAME).so $(LIBNAME).o'", "new_libpe='-dynamiclib -Wl,-install_name,$(LIBNAME).dylib -o $(LIBNAME).dylib $(LIBNAME).o'"
+ end
+
+ inreplace 'lib/libpe/Makefile' do |f|
+ f.gsub! "$(LN) $(DEST)/$(LIBNAME).so.$(VERSION) $(DEST)/$(LIBNAME).so.1", "# no more symlink"
+ f.gsub! "$(LN) $(DEST)/$(LIBNAME).so.$(VERSION) $(DEST)/$(LIBNAME).so", "# no more symlink"
+ f.gsub! "$(INSTALL) $(LIBNAME).so $(DEST)/$(LIBNAME).so.$(VERSION)", "$(INSTALL) $(LIBNAME).so $(DEST)/$(LIBNAME).so"
+ f.gsub! "$(LIBNAME).so","$(LIBNAME).dylib"
+ f.gsub! "$(RM) $(LIBNAME).*o*", "$(RM) $(LIBNAME).*o* $(LIBNAME).dylib"
+ end
+
+ system "./configure", "--prefix=#{prefix}"
+ system "make"
+ system "make install"
+ end
+
+ def test
+ system "#{bin}/pescan -v"
+ end
+end
Something went wrong with that request. Please try again.