~statik/ubuntu/maverick/erlang/erlang-merge-testing

« back to all changes in this revision

Viewing changes to system/doc/efficiency_guide/all.erl

  • Committer: Elliot Murphy
  • Date: 2010-06-08 03:55:44 UTC
  • mfrom: (3.5.6 squeeze)
  • Revision ID: elliot@elliotmurphy.com-20100608035544-dd8zh2swk7jr5rz2
* Merge with Debian unstable; remaining Ubuntu changes:
  - Drop libwxgtk2.8-dev build dependency. Wx isn't in main, and not
    supposed to. (LP #438365)
  - Drop erlang-wx binary.
  - Drop erlang-wx dependency from -megaco, -common-test, and -reltool, they
    do not really need wx. Also drop it from -debugger; the GUI needs wx,
    but it apparently has CLI bits as well, and is also needed by -megaco,
    so let's keep the package for now.
* Added missing symlinks to /usr/include for a few new header files.
* Fixed generation of ${erlang-base:Depends} and ${erlang-x11:Depends}
  substitution variables.
* Added a fix for a re:compile/2 crash on a long regular expression.
* Changed urgency to medium as the change fixes a security bug.
* Manpages in section 1 are needed even if only arch-dependent packages are
  built. So, re-enabled them.
* Fixed HiPE architecture recognition for powerpc Debian architecture.
* Moved xsltproc and fop to build-depends-indep and do not build
  documentation if only architecture-specific packages are built.
* Refreshed all patches.
* Made Emacs look in man5 and man7 for Erlang manpages and added code
  skeleton files to erlang-mode package.
* New upstream release.
* Moved manpages from incorrect sections 4 and 6 to correct 5 and 7
  (closes: #498492).
* Made manpages regexp in Emacs mode match only 3erl pages in section 3.
* Removed docb_gen script which is no longer needed to build manpages.
* Added erlang-doc package which contains documentation in HTML and PDF
  formats. This package replaces erlang-doc-html package and it's easier
  to synchronize it with the main Erlang packages as it's built from
  a single source package (closes: #558451).
* Removed RPATH from ssl and crypto application binaries as required by
  Debian policy.
* Added libwxgtk2.4-dev and libwxgtk2.6-dev to build conflicts.
* Added a few dpendencies for erlang-dialyzer, erlang-et, erlang-observer
  and erlang-examples packages which now call functions from more modules
  than in 1:13.b.3.
* Added a workaround which disables vfork() for hppa architecture
  (closes: #562218).
* Strictened check for JDK 1.5 adding a call to String(int[], int, int)
  because GCJ 4.4 doesn't implement it and OpenJDK isn't available for all
  architectures.
* Fixed erlang-manpages package section.
* Made erlang-depends add only substvars which are requested in
  debian/control file. This minimizes number of warnings from dh_gencontrol.
  Also, improved descriptions of the functions in erlang-depends escript.
* Added erlang-erl-docgen package to erlang-nox dependencies.
* Made dummy packages erlang-nox and erlang-x11 architecture all.
* Cleaned up working with custom substitution variables in debian/rules.
* Reorganized debian/rules to ensure that manpages arent built twice, and
  aren't built at all if only architecture-dependent packages are requested.
* Fixed project links in README.Debian.
* Added a new package erlang-jinterface which provides tools for
  communication of Java programs with Erlang processes. This adds build
  depandency on default-jdk and as a result enables Java module for IDL
  compiler.
* Bumped standards version to 3.8.4.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
%% ``The contents of this file are subject to the Erlang Public License,
 
2
%% Version 1.1, (the "License"); you may not use this file except in
 
3
%% compliance with the License. You should have received a copy of the
 
4
%% Erlang Public License along with this software. If not, it can be
 
5
%% retrieved via the world wide web at http://www.erlang.org/.
 
6
%% 
 
7
%% Software distributed under the License is distributed on an "AS IS"
 
8
%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
 
9
%% the License for the specific language governing rights and limitations
 
10
%% under the License.
 
11
%% 
 
12
%% The Initial Developer of the Original Code is Ericsson Utvecklings AB.
 
13
%% Portions created by Ericsson are Copyright 1999, Ericsson Utvecklings
 
14
%% AB. All Rights Reserved.''
 
15
%% 
 
16
%%     $Id$
 
17
%%
 
18
-module(all).
 
19
 
 
20
%% User interface
 
21
-export([run/0]).
 
22
 
 
23
%% Interna constants
 
24
-define(NORMAL, 0).
 
25
 
 
26
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
27
%%%     Interface 
 
28
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
29
 
 
30
%%---------------------------------------------------------------------------
 
31
%% run() -> _
 
32
%%      
 
33
%% Runs all benchmark modules in the current directory on all erlang
 
34
%% installations specified by releases/0
 
35
%%---------------------------------------------------------------------------
 
36
run() ->
 
37
    %% Delete previous intermediate test result files.
 
38
    lists:foreach(fun(F) -> file:delete(F) end, filelib:wildcard("*.bmres")),
 
39
    lists:foreach(fun run/1, releases()).
 
40
 
 
41
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
42
%%%     Internal functions
 
43
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
44
 
 
45
%%---------------------------------------------------------------------------
 
46
%% run(Release) -> _
 
47
%%      Release = string() - Erlang release     
 
48
%% Help functions to run/0
 
49
%%---------------------------------------------------------------------------
 
50
run(Release) -> 
 
51
    command(Release ++ " -noshell -compile bench -s erlang halt"),
 
52
    command(Release ++ " -noshell -s bench run -s erlang halt").
 
53
%%---------------------------------------------------------------------------
 
54
%% command(Command) -> _
 
55
%%      Command = string() - is the name and arguments of the external 
 
56
%%                           program which will be run
 
57
%%---------------------------------------------------------------------------
 
58
command(Command) ->
 
59
    io:format("~s\n", [Command]),  % Progress info to user
 
60
    Port = open_port({spawn,Command}, [exit_status, in]), 
 
61
    print_output(Port).
 
62
%%---------------------------------------------------------------------------
 
63
%% print_output(Port) -> _
 
64
%%      Port = port()   
 
65
%% Print data from the port i.e. output from external program,
 
66
%% on standard out.
 
67
%%---------------------------------------------------------------------------
 
68
print_output(Port) ->
 
69
    receive
 
70
        {Port, {data,Bytes}} ->
 
71
            io:put_chars(Bytes),
 
72
            print_output(Port);
 
73
        {Port, {exit_status, ?NORMAL}} ->
 
74
            ok
 
75
    end.
 
76
%%---------------------------------------------------------------------------
 
77
%% run() -> Releases
 
78
%%      Releases = [Release |_]
 
79
%%      Release = string() - Erlang release  
 
80
%% Defines which erlang releases to run on
 
81
%%  --- Change this function to reflect your own erlang installations ---
 
82
%%---------------------------------------------------------------------------
 
83
releases() ->
 
84
    ["/usr/local/otp/releases/otp_beam_sunos5_r7b01_patched/bin/erl",
 
85
     "/usr/local/otp/releases/otp_beam_sunos5_r8b_patched/bin/erl"].
 
86
 
 
87
 
 
88
 
 
89
 
 
90
 
 
91
 
 
92
 
 
93
 
 
94
 
 
95
 
 
96
 
 
97
 
 
98
 
 
99
 
 
100
 
 
101
 
 
102
 
 
103
 
 
104
 
 
105
 
 
106